From 527bc35bb246e0831644978f648e15a75db0be9c Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Thu, 2 Sep 2021 11:31:18 -0700 Subject: [PATCH] Release v1.40.36 (2021-09-02) (#4086) Release v1.40.36 (2021-09-02) === ### Service Client Updates * `service/accessanalyzer`: Updates service API and documentation * `service/acm-pca`: Updates service API and documentation * `service/ebs`: Updates service documentation * `service/elasticfilesystem`: Updates service API and documentation * Adds support for EFS Intelligent-Tiering, which uses EFS Lifecycle Management to monitor file access patterns and is designed to automatically transition files to and from your corresponding Infrequent Access (IA) storage classes. * `service/fsx`: Updates service API, documentation, and paginators * `service/lex-models`: Updates service API * `service/quicksight`: Updates service API and documentation * This release adds support for referencing parent datasets as sources in a child dataset. * `service/s3control`: Updates service API, documentation, and paginators * S3 Multi-Region Access Points provide a single global endpoint to access a data set that spans multiple S3 buckets in different AWS Regions. * `service/schemas`: Updates service API and documentation * `service/securityhub`: Updates service API, documentation, and paginators * `service/transfer`: Updates service API, documentation, and paginators * AWS Transfer Family introduces Managed Workflows for creating, executing, monitoring, and standardizing post file transfer processing --- CHANGELOG.md | 20 + aws/endpoints/defaults.go | 10 + aws/version.go | 2 +- .../apis/accessanalyzer/2019-11-01/api-2.json | 18 +- .../accessanalyzer/2019-11-01/docs-2.json | 98 +- models/apis/acm-pca/2017-08-22/api-2.json | 14 +- models/apis/acm-pca/2017-08-22/docs-2.json | 30 +- models/apis/ebs/2019-11-02/docs-2.json | 2 +- .../elasticfilesystem/2015-02-01/api-2.json | 12 +- .../elasticfilesystem/2015-02-01/docs-2.json | 86 +- models/apis/fsx/2018-03-01/api-2.json | 843 +- models/apis/fsx/2018-03-01/docs-2.json | 713 +- models/apis/fsx/2018-03-01/paginators-1.json | 15 + models/apis/lex-models/2017-04-19/api-2.json | 3 +- models/apis/quicksight/2018-04-01/api-2.json | 46 +- models/apis/quicksight/2018-04-01/docs-2.json | 654 +- models/apis/s3control/2018-08-20/api-2.json | 528 + models/apis/s3control/2018-08-20/docs-2.json | 377 +- .../s3control/2018-08-20/paginators-1.json | 5 + models/apis/schemas/2019-12-02/api-2.json | 27 + models/apis/schemas/2019-12-02/docs-2.json | 6 +- models/apis/securityhub/2018-10-26/api-2.json | 279 +- .../apis/securityhub/2018-10-26/docs-2.json | 331 +- .../securityhub/2018-10-26/paginators-1.json | 33 +- models/apis/transfer/2018-11-05/api-2.json | 603 +- models/apis/transfer/2018-11-05/docs-2.json | 499 +- .../transfer/2018-11-05/paginators-1.json | 10 + models/endpoints/endpoints.json | 10 + service/accessanalyzer/api.go | 205 +- service/accessanalyzer/doc.go | 23 +- service/acmpca/api.go | 146 +- service/acmpca/doc.go | 15 +- service/ebs/api.go | 2 +- service/efs/api.go | 298 +- service/efs/doc.go | 9 +- service/efs/errors.go | 24 +- service/fsx/api.go | 9475 ++++++++++++----- service/fsx/errors.go | 40 +- service/fsx/examples_test.go | 4 + service/fsx/fsxiface/interface.go | 45 + service/lexmodelbuildingservice/api.go | 4 + service/quicksight/api.go | 1321 ++- service/quicksight/errors.go | 8 +- service/s3control/api.go | 2859 ++++- service/s3control/s3controliface/interface.go | 35 + service/schemas/api.go | 50 + service/securityhub/api.go | 4545 +++++--- service/transfer/api.go | 3373 +++++- service/transfer/errors.go | 2 +- service/transfer/transferiface/interface.go | 34 + 50 files changed, 21628 insertions(+), 6163 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 30c1d394929..0ad4ae09189 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,23 @@ +Release v1.40.36 (2021-09-02) +=== + +### Service Client Updates +* `service/accessanalyzer`: Updates service API and documentation +* `service/acm-pca`: Updates service API and documentation +* `service/ebs`: Updates service documentation +* `service/elasticfilesystem`: Updates service API and documentation + * Adds support for EFS Intelligent-Tiering, which uses EFS Lifecycle Management to monitor file access patterns and is designed to automatically transition files to and from your corresponding Infrequent Access (IA) storage classes. +* `service/fsx`: Updates service API, documentation, and paginators +* `service/lex-models`: Updates service API +* `service/quicksight`: Updates service API and documentation + * This release adds support for referencing parent datasets as sources in a child dataset. +* `service/s3control`: Updates service API, documentation, and paginators + * S3 Multi-Region Access Points provide a single global endpoint to access a data set that spans multiple S3 buckets in different AWS Regions. +* `service/schemas`: Updates service API and documentation +* `service/securityhub`: Updates service API, documentation, and paginators +* `service/transfer`: Updates service API, documentation, and paginators + * AWS Transfer Family introduces Managed Workflows for creating, executing, monitoring, and standardizing post file transfer processing + Release v1.40.35 (2021-09-01) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index e9a1d6378e3..27762b927a8 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -355,11 +355,17 @@ var awsPartition = partition{ Endpoints: endpoints{ "ap-northeast-1": endpoint{}, + "ap-northeast-2": endpoint{}, + "ap-south-1": endpoint{}, "ap-southeast-1": endpoint{}, "ap-southeast-2": endpoint{}, + "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, "eu-north-1": endpoint{}, "eu-west-1": endpoint{}, + "eu-west-2": endpoint{}, + "eu-west-3": endpoint{}, + "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, "us-west-2": endpoint{}, @@ -1186,9 +1192,11 @@ var awsPartition = partition{ "cloud9": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, + "ap-northeast-3": endpoint{}, "ap-south-1": endpoint{}, "ap-southeast-1": endpoint{}, "ap-southeast-2": endpoint{}, @@ -5274,6 +5282,7 @@ var awsPartition = partition{ "polly": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -5815,6 +5824,7 @@ var awsPartition = partition{ "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, + "ap-northeast-3": endpoint{}, "ap-south-1": endpoint{}, "ap-southeast-1": endpoint{}, "ap-southeast-2": endpoint{}, diff --git a/aws/version.go b/aws/version.go index 5bd54b75faa..eb85d3dd2ef 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.40.35" +const SDKVersion = "1.40.36" diff --git a/models/apis/accessanalyzer/2019-11-01/api-2.json b/models/apis/accessanalyzer/2019-11-01/api-2.json index 0e9c19cbdac..07a31b53a7b 100644 --- a/models/apis/accessanalyzer/2019-11-01/api-2.json +++ b/models/apis/accessanalyzer/2019-11-01/api-2.json @@ -510,7 +510,7 @@ }, "AccessPointArn":{ "type":"string", - "pattern":"arn:[^:]*:s3:[^:]*:[^:]*:accesspoint/.*$" + "pattern":"arn:[^:]*:s3:[^:]*:[^:]*:accesspoint/.*" }, "AccessPointPolicy":{"type":"string"}, "AccessPreview":{ @@ -566,7 +566,7 @@ }, "AccessPreviewId":{ "type":"string", - "pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" + "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}" }, "AccessPreviewStatus":{ "type":"string", @@ -678,7 +678,7 @@ }, "AnalyzerArn":{ "type":"string", - "pattern":"^[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:analyzer/.{1,255}$" + "pattern":"[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:analyzer/.{1,255}" }, "AnalyzerStatus":{ "type":"string", @@ -770,7 +770,7 @@ }, "CloudTrailArn":{ "type":"string", - "pattern":"arn:[^:]*:cloudtrail:[^:]*:[^:]*:trail/.{1,576}$" + "pattern":"arn:[^:]*:cloudtrail:[^:]*:[^:]*:trail/.{1,576}" }, "CloudTrailDetails":{ "type":"structure", @@ -1655,7 +1655,7 @@ "type":"string", "max":255, "min":1, - "pattern":"^[A-Za-z][A-Za-z0-9_.-]*$" + "pattern":"[A-Za-z][A-Za-z0-9_.-]*" }, "NetworkOriginConfiguration":{ "type":"structure", @@ -1738,7 +1738,7 @@ }, "PrincipalArn":{ "type":"string", - "pattern":"arn:[^:]*:iam::[^:]*:(role|user)/.{1,576}$" + "pattern":"arn:[^:]*:iam::[^:]*:(role|user)/.{1,576}" }, "PrincipalMap":{ "type":"map", @@ -1760,7 +1760,7 @@ }, "ResourceArn":{ "type":"string", - "pattern":"arn:[^:]*:[^:]*:[^:]*:[^:]*:.*$" + "pattern":"arn:[^:]*:[^:]*:[^:]*:[^:]*:.*" }, "ResourceNotFoundException":{ "type":"structure", @@ -1795,7 +1795,7 @@ "RetiringPrincipal":{"type":"string"}, "RoleArn":{ "type":"string", - "pattern":"arn:[^:]*:iam::[^:]*:role/.{1,576}$" + "pattern":"arn:[^:]*:iam::[^:]*:role/.{1,576}" }, "S3AccessPointConfiguration":{ "type":"structure", @@ -2218,7 +2218,7 @@ }, "VpcId":{ "type":"string", - "pattern":"^vpc-([0-9a-f]){8}(([0-9a-f]){9})?$" + "pattern":"vpc-([0-9a-f]){8}(([0-9a-f]){9})?" } } } diff --git a/models/apis/accessanalyzer/2019-11-01/docs-2.json b/models/apis/accessanalyzer/2019-11-01/docs-2.json index 862fc2b5e01..5102b1c6225 100644 --- a/models/apis/accessanalyzer/2019-11-01/docs-2.json +++ b/models/apis/accessanalyzer/2019-11-01/docs-2.json @@ -1,18 +1,18 @@ { "version": "2.0", - "service": "
AWS IAM Access Analyzer helps identify potential resource-access risks by enabling you to identify any policies that grant access to an external principal. It does this by using logic-based reasoning to analyze resource-based policies in your AWS environment. An external principal can be another AWS account, a root user, an IAM user or role, a federated user, an AWS service, or an anonymous user. You can also use Access Analyzer to preview and validate public and cross-account access to your resources before deploying permissions changes. This guide describes the AWS IAM Access Analyzer operations that you can call programmatically. For general information about Access Analyzer, see AWS IAM Access Analyzer in the IAM User Guide.
To start using Access Analyzer, you first need to create an analyzer.
", + "service": "Identity and Access Management Access Analyzer helps identify potential resource-access risks by enabling you to identify any policies that grant access to an external principal. It does this by using logic-based reasoning to analyze resource-based policies in your Amazon Web Services environment. An external principal can be another Amazon Web Services account, a root user, an IAM user or role, a federated user, an Amazon Web Services service, or an anonymous user. You can also use IAM Access Analyzer to preview and validate public and cross-account access to your resources before deploying permissions changes. This guide describes the Identity and Access Management Access Analyzer operations that you can call programmatically. For general information about IAM Access Analyzer, see Identity and Access Management Access Analyzer in the IAM User Guide.
To start using IAM Access Analyzer, you first need to create an analyzer.
", "operations": { "ApplyArchiveRule": "Retroactively applies the archive rule to existing findings that meet the archive rule criteria.
", "CancelPolicyGeneration": "Cancels the requested policy generation.
", - "CreateAccessPreview": "Creates an access preview that allows you to preview Access Analyzer findings for your resource before deploying resource permissions.
", + "CreateAccessPreview": "Creates an access preview that allows you to preview IAM Access Analyzer findings for your resource before deploying resource permissions.
", "CreateAnalyzer": "Creates an analyzer for your account.
", - "CreateArchiveRule": "Creates an archive rule for the specified analyzer. Archive rules automatically archive new findings that meet the criteria you define when you create the rule.
To learn about filter keys that you can use to create an archive rule, see Access Analyzer filter keys in the IAM User Guide.
", - "DeleteAnalyzer": "Deletes the specified analyzer. When you delete an analyzer, Access Analyzer is disabled for the account or organization in the current or specific Region. All findings that were generated by the analyzer are deleted. You cannot undo this action.
", + "CreateArchiveRule": "Creates an archive rule for the specified analyzer. Archive rules automatically archive new findings that meet the criteria you define when you create the rule.
To learn about filter keys that you can use to create an archive rule, see IAM Access Analyzer filter keys in the IAM User Guide.
", + "DeleteAnalyzer": "Deletes the specified analyzer. When you delete an analyzer, IAM Access Analyzer is disabled for the account or organization in the current or specific Region. All findings that were generated by the analyzer are deleted. You cannot undo this action.
", "DeleteArchiveRule": "Deletes the specified archive rule.
", "GetAccessPreview": "Retrieves information about an access preview for the specified analyzer.
", "GetAnalyzedResource": "Retrieves information about a resource that was analyzed.
", "GetAnalyzer": "Retrieves information about the specified analyzer.
", - "GetArchiveRule": "Retrieves information about an archive rule.
To learn about filter keys that you can use to create an archive rule, see Access Analyzer filter keys in the IAM User Guide.
", + "GetArchiveRule": "Retrieves information about an archive rule.
To learn about filter keys that you can use to create an archive rule, see IAM Access Analyzer filter keys in the IAM User Guide.
", "GetFinding": "Retrieves information about the specified finding.
", "GetGeneratedPolicy": "Retrieves the policy that was generated using StartPolicyGeneration
.
Retrieves a list of access preview findings generated by the specified access preview.
", @@ -20,7 +20,7 @@ "ListAnalyzedResources": "Retrieves a list of resources of the specified type that have been analyzed by the specified analyzer..
", "ListAnalyzers": "Retrieves a list of analyzers.
", "ListArchiveRules": "Retrieves a list of archive rules created for the specified analyzer.
", - "ListFindings": "Retrieves a list of findings generated by the specified analyzer.
To learn about filter keys that you can use to retrieve a list of findings, see Access Analyzer filter keys in the IAM User Guide.
", + "ListFindings": "Retrieves a list of findings generated by the specified analyzer.
To learn about filter keys that you can use to retrieve a list of findings, see IAM Access Analyzer filter keys in the IAM User Guide.
", "ListPolicyGenerations": "Lists all of the policy generations requested in the last seven days.
", "ListTagsForResource": "Retrieves a list of tags applied to the specified resource.
", "StartPolicyGeneration": "Starts the policy generation request.
", @@ -46,7 +46,7 @@ "AccessPointPolicy": { "base": null, "refs": { - "S3AccessPointConfiguration$accessPointPolicy": "The access point policy.
" + "S3AccessPointConfiguration$accessPointPolicy": "The access point or multi-region access point policy.
" } }, "AccessPreview": { @@ -118,7 +118,7 @@ "AclCanonicalId": { "base": null, "refs": { - "AclGrantee$id": "The value specified is the canonical user ID of an AWS account.
" + "AclGrantee$id": "The value specified is the canonical user ID of an Amazon Web Services account.
" } }, "AclGrantee": { @@ -151,7 +151,7 @@ "AnalyzedResource": { "base": "Contains details about the analyzed resource.
", "refs": { - "GetAnalyzedResourceResponse$resource": "An AnalyzedResource
object that contains information that Access Analyzer found when it analyzed the resource.
An AnalyzedResource
object that contains information that IAM Access Analyzer found when it analyzed the resource.
The status of the analyzer. An Active
analyzer successfully monitors supported resources and generates new findings. The analyzer is Disabled
when a user action, such as removing trusted access for AWS IAM Access Analyzer from AWS Organizations, causes the analyzer to stop generating new findings. The status is Creating
when the analyzer creation is in progress and Failed
when the analyzer creation has failed.
The status of the analyzer. An Active
analyzer successfully monitors supported resources and generates new findings. The analyzer is Disabled
when a user action, such as removing trusted access for Identity and Access Management Access Analyzer from Organizations, causes the analyzer to stop generating new findings. The status is Creating
when the analyzer creation is in progress and Failed
when the analyzer creation has failed.
An \"exists\" operator to match for the filter used to create the rule.
", "Finding$isPublic": "Indicates whether the policy that generated the finding allows public access to the resource.
", "FindingSummary$isPublic": "Indicates whether the finding reports a resource that has a policy that allows public access.
", - "GeneratedPolicyProperties$isComplete": "This value is set to true
if the generated policy contains all possible actions for a service that Access Analyzer identified from the CloudTrail trail that you specified, and false
otherwise.
This value is set to true
if the generated policy contains all possible actions for a service that IAM Access Analyzer identified from the CloudTrail trail that you specified, and false
otherwise.
The level of detail that you want to generate. You can specify whether to generate policies with placeholders for resource ARNs for actions that support resource level granularity in policies.
For example, in the resource section of a policy, you can receive a placeholder such as \"Resource\":\"arn:aws:s3:::${BucketName}\"
instead of \"*\"
.
The level of detail that you want to generate. You can specify whether to generate service-level policies.
Access Analyzer uses iam:servicelastaccessed
to identify services that have been used recently to create this service-level template.
The level of detail that you want to generate. You can specify whether to generate service-level policies.
IAM Access Analyzer uses iam:servicelastaccessed
to identify services that have been used recently to create this service-level template.
Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket.
", "S3PublicAccessBlockConfiguration$restrictPublicBuckets": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket.
", - "Trail$allRegions": "Possible values are true
or false
. If set to true
, Access Analyzer retrieves CloudTrail data from all regions to analyze and generate a policy.
Possible values are true
or false
. If set to true
, Access Analyzer retrieves CloudTrail data from all regions to analyze and generate a policy.
Possible values are true
or false
. If set to true
, IAM Access Analyzer retrieves CloudTrail data from all regions to analyze and generate a policy.
Possible values are true
or false
. If set to true
, IAM Access Analyzer retrieves CloudTrail data from all regions to analyze and generate a policy.
Provides context on how the access preview finding compares to existing access identified in Access Analyzer.
New
- The finding is for newly-introduced access.
Unchanged
- The preview finding is an existing finding that would remain unchanged.
Changed
- The preview finding is an existing finding with a change in status.
For example, a Changed
finding with preview status Resolved
and existing status Active
indicates the existing Active
finding would become Resolved
as a result of the proposed permissions change.
Provides context on how the access preview finding compares to existing access identified in IAM Access Analyzer.
New
- The finding is for newly-introduced access.
Unchanged
- The preview finding is an existing finding that would remain unchanged.
Changed
- The preview finding is an existing finding with a change in status.
For example, a Changed
finding with preview status Resolved
and existing status Active
indicates the existing Active
finding would become Resolved
as a result of the proposed permissions change.
The existing ID of the finding in Access Analyzer, provided only for existing findings.
", + "AccessPreviewFinding$existingFindingId": "The existing ID of the finding in IAM Access Analyzer, provided only for existing findings.
", "Finding$id": "The ID of the finding.
", "FindingIdList$member": null, "FindingSummary$id": "The ID of the finding.
", @@ -575,9 +575,9 @@ } }, "InternetConfiguration": { - "base": "This configuration sets the Amazon S3 access point network origin to Internet
.
This configuration sets the network origin for the Amazon S3 access point or multi-region access point to Internet
.
The configuration for the Amazon S3 access point with an Internet
origin.
The configuration for the Amazon S3 access point or multi-region access point with an Internet
origin.
The AWS account under which the grant was issued. The account is used to propose KMS grants issued by accounts other than the owner of the key.
" + "KmsGrantConfiguration$issuingAccount": "The Amazon Web Services account under which the grant was issued. The account is used to propose KMS grants issued by accounts other than the owner of the key.
" } }, "JobDetails": { @@ -601,7 +601,7 @@ "JobError": { "base": "Contains the details about the policy generation error.
", "refs": { - "JobDetails$jobError": null + "JobDetails$jobError": "The job error for the policy generation request.
" } }, "JobErrorCode": { @@ -826,9 +826,9 @@ } }, "NetworkOriginConfiguration": { - "base": "The proposed InternetConfiguration
or VpcConfiguration
to apply to the Amazon S3 Access point. You can make the access point accessible from the internet, or you can specify that all requests made through that access point must originate from a specific virtual private cloud (VPC). You can specify only one type of network configuration. For more information, see Creating access points.
The proposed InternetConfiguration
or VpcConfiguration
to apply to the Amazon S3 access point. VpcConfiguration
does not apply to multi-region access points. You can make the access point accessible from the internet, or you can specify that all requests made through that access point must originate from a specific virtual private cloud (VPC). You can specify only one type of network configuration. For more information, see Creating access points.
The proposed Internet
and VpcConfiguration
to apply to this Amazon S3 access point. If the access preview is for a new resource and neither is specified, the access preview uses Internet
for the network origin. If the access preview is for an existing resource and neither is specified, the access preview uses the exiting network origin.
The proposed Internet
and VpcConfiguration
to apply to this Amazon S3 access point. VpcConfiguration
does not apply to multi-region access points. If the access preview is for a new resource and neither is specified, the access preview uses Internet
for the network origin. If the access preview is for an existing resource and neither is specified, the access preview uses the exiting network origin.
The type of policy to validate. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups. They also include service-control policies (SCPs) that are attached to an AWS organization, organizational unit (OU), or an account.
Resource policies grant permissions on AWS resources. Resource policies include trust policies for IAM roles and bucket policies for S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or S3 bucket policy.
" + "ValidatePolicyRequest$policyType": "The type of policy to validate. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups. They also include service-control policies (SCPs) that are attached to an Amazon Web Services organization, organizational unit (OU), or an account.
Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or Amazon S3 bucket policy.
" } }, "Position": { @@ -957,11 +957,11 @@ "RoleArn": { "base": null, "refs": { - "CloudTrailDetails$accessRole": "The ARN of the service role that Access Analyzer uses to access your CloudTrail trail and service last accessed information.
" + "CloudTrailDetails$accessRole": "The ARN of the service role that IAM Access Analyzer uses to access your CloudTrail trail and service last accessed information.
" } }, "S3AccessPointConfiguration": { - "base": "The configuration for an Amazon S3 access point for the bucket. You can propose up to 10 access points per bucket. If the proposed Amazon S3 access point configuration is for an existing bucket, the access preview uses the proposed access point configuration in place of the existing access points. To propose an access point without a policy, you can provide an empty string as the access point policy. For more information, see Creating access points. For more information about access point policy limits, see Access points restrictions and limitations.
", + "base": "The configuration for an Amazon S3 access point or multi-region access point for the bucket. You can propose up to 10 access points or multi-region access points per bucket. If the proposed Amazon S3 access point configuration is for an existing bucket, the access preview uses the proposed access point configuration in place of the existing access points. To propose an access point without a policy, you can provide an empty string as the access point policy. For more information, see Creating access points. For more information about access point policy limits, see Access points restrictions and limitations.
", "refs": { "S3AccessPointConfigurationsMap$value": null } @@ -969,7 +969,7 @@ "S3AccessPointConfigurationsMap": { "base": null, "refs": { - "S3BucketConfiguration$accessPoints": "The configuration of Amazon S3 access points for the bucket.
" + "S3BucketConfiguration$accessPoints": "The configuration of Amazon S3 access points or multi-region access points for the bucket. You can propose up to 10 new access points per bucket.
" } }, "S3BucketAclGrantConfiguration": { @@ -985,7 +985,7 @@ } }, "S3BucketConfiguration": { - "base": "Proposed access control configuration for an Amazon S3 bucket. You can propose a configuration for a new Amazon S3 bucket or an existing Amazon S3 bucket that you own by specifying the Amazon S3 bucket policy, bucket ACLs, bucket BPA settings, and Amazon S3 access points attached to the bucket. If the configuration is for an existing Amazon S3 bucket and you do not specify the Amazon S3 bucket policy, the access preview uses the existing policy attached to the bucket. If the access preview is for a new resource and you do not specify the Amazon S3 bucket policy, the access preview assumes a bucket without a policy. To propose deletion of an existing bucket policy, you can specify an empty string. For more information about bucket policy limits, see Bucket Policy Examples.
", + "base": "Proposed access control configuration for an Amazon S3 bucket. You can propose a configuration for a new Amazon S3 bucket or an existing Amazon S3 bucket that you own by specifying the Amazon S3 bucket policy, bucket ACLs, bucket BPA settings, Amazon S3 access points, and multi-region access points attached to the bucket. If the configuration is for an existing Amazon S3 bucket and you do not specify the Amazon S3 bucket policy, the access preview uses the existing policy attached to the bucket. If the access preview is for a new resource and you do not specify the Amazon S3 bucket policy, the access preview assumes a bucket without a policy. To propose deletion of an existing bucket policy, you can specify an empty string. For more information about bucket policy limits, see Bucket Policy Examples.
", "refs": { "Configuration$s3Bucket": "The access control configuration is for an Amazon S3 Bucket.
" } @@ -997,14 +997,14 @@ } }, "S3PublicAccessBlockConfiguration": { - "base": "The PublicAccessBlock
configuration to apply to this Amazon S3 bucket. If the proposed configuration is for an existing Amazon S3 bucket and the configuration is not specified, the access preview uses the existing setting. If the proposed configuration is for a new bucket and the configuration is not specified, the access preview uses false
. If the proposed configuration is for a new access point and the access point BPA configuration is not specified, the access preview uses true
. For more information, see PublicAccessBlockConfiguration.
The PublicAccessBlock
configuration to apply to this Amazon S3 bucket. If the proposed configuration is for an existing Amazon S3 bucket and the configuration is not specified, the access preview uses the existing setting. If the proposed configuration is for a new bucket and the configuration is not specified, the access preview uses false
. If the proposed configuration is for a new access point or multi-region access point and the access point BPA configuration is not specified, the access preview uses true
. For more information, see PublicAccessBlockConfiguration.
The proposed S3PublicAccessBlock
configuration to apply to this Amazon S3 Access Point.
The proposed S3PublicAccessBlock
configuration to apply to this Amazon S3 access point or multi-region access point.
The proposed block public access configuration for the Amazon S3 bucket.
" } }, "SecretsManagerSecretConfiguration": { - "base": "The configuration for a Secrets Manager secret. For more information, see CreateSecret.
You can propose a configuration for a new secret or an existing secret that you own by specifying the secret policy and optional KMS encryption key. If the configuration is for an existing secret and you do not specify the secret policy, the access preview uses the existing policy for the secret. If the access preview is for a new resource and you do not specify the policy, the access preview assumes a secret without a policy. To propose deletion of an existing policy, you can specify an empty string. If the proposed configuration is for a new secret and you do not specify the KMS key ID, the access preview uses the default CMK of the AWS account. If you specify an empty string for the KMS key ID, the access preview uses the default CMK of the AWS account. For more information about secret policy limits, see Quotas for AWS Secrets Manager..
", + "base": "The configuration for a Secrets Manager secret. For more information, see CreateSecret.
You can propose a configuration for a new secret or an existing secret that you own by specifying the secret policy and optional KMS encryption key. If the configuration is for an existing secret and you do not specify the secret policy, the access preview uses the existing policy for the secret. If the access preview is for a new resource and you do not specify the policy, the access preview assumes a secret without a policy. To propose deletion of an existing policy, you can specify an empty string. If the proposed configuration is for a new secret and you do not specify the KMS key ID, the access preview uses the default CMK of the Amazon Web Services account. If you specify an empty string for the KMS key ID, the access preview uses the default CMK of the Amazon Web Services account. For more information about secret policy limits, see Quotas for Secrets Manager..
", "refs": { "Configuration$secretsManagerSecret": "The access control configuration is for a Secrets Manager secret.
" } @@ -1012,7 +1012,7 @@ "SecretsManagerSecretKmsId": { "base": null, "refs": { - "SecretsManagerSecretConfiguration$kmsKeyId": "The proposed ARN, key ID, or alias of the AWS KMS customer master key (CMK).
" + "SecretsManagerSecretConfiguration$kmsKeyId": "The proposed ARN, key ID, or alias of the KMS customer master key (CMK).
" } }, "SecretsManagerSecretPolicy": { @@ -1045,15 +1045,15 @@ } }, "SqsQueueConfiguration": { - "base": "The proposed access control configuration for an SQS queue. You can propose a configuration for a new SQS queue or an existing SQS queue that you own by specifying the SQS policy. If the configuration is for an existing SQS queue and you do not specify the SQS policy, the access preview uses the existing SQS policy for the queue. If the access preview is for a new resource and you do not specify the policy, the access preview assumes an SQS queue without a policy. To propose deletion of an existing SQS queue policy, you can specify an empty string for the SQS policy. For more information about SQS policy limits, see Quotas related to policies.
", + "base": "The proposed access control configuration for an Amazon SQS queue. You can propose a configuration for a new Amazon SQS queue or an existing Amazon SQS queue that you own by specifying the Amazon SQS policy. If the configuration is for an existing Amazon SQS queue and you do not specify the Amazon SQS policy, the access preview uses the existing Amazon SQS policy for the queue. If the access preview is for a new resource and you do not specify the policy, the access preview assumes an Amazon SQS queue without a policy. To propose deletion of an existing Amazon SQS queue policy, you can specify an empty string for the Amazon SQS policy. For more information about Amazon SQS policy limits, see Quotas related to policies.
", "refs": { - "Configuration$sqsQueue": "The access control configuration is for an SQS queue.
" + "Configuration$sqsQueue": "The access control configuration is for an Amazon SQS queue.
" } }, "SqsQueuePolicy": { "base": null, "refs": { - "SqsQueueConfiguration$queuePolicy": "The proposed resource policy for the SQS queue.
" + "SqsQueueConfiguration$queuePolicy": "The proposed resource policy for the Amazon SQS queue.
" } }, "StartPolicyGenerationRequest": { @@ -1072,9 +1072,9 @@ } }, "StatusReason": { - "base": "Provides more details about the current status of the analyzer. For example, if the creation for the analyzer fails, a Failed
status is returned. For an analyzer with organization as the type, this failure can be due to an issue with creating the service-linked roles required in the member accounts of the AWS organization.
Provides more details about the current status of the analyzer. For example, if the creation for the analyzer fails, a Failed
status is returned. For an analyzer with organization as the type, this failure can be due to an issue with creating the service-linked roles required in the member accounts of the Amazon Web Services organization.
The statusReason
provides more details about the current status of the analyzer. For example, if the creation for the analyzer fails, a Failed
status is returned. For an analyzer with organization as the type, this failure can be due to an issue with creating the service-linked roles required in the member accounts of the AWS organization.
The statusReason
provides more details about the current status of the analyzer. For example, if the creation for the analyzer fails, a Failed
status is returned. For an analyzer with organization as the type, this failure can be due to an issue with creating the service-linked roles required in the member accounts of the Amazon Web Services organization.
An error.
", "AccessPreviewFinding$resource": "The resource that an external principal has access to. This is the resource associated with the access preview.
", - "AccessPreviewFinding$resourceOwnerAccount": "The AWS account ID that owns the resource. For most AWS resources, the owning account is the account in which the resource was created.
", + "AccessPreviewFinding$resourceOwnerAccount": "The Amazon Web Services account ID that owns the resource. For most Amazon Web Services resources, the owning account is the account in which the resource was created.
", "ActionList$member": null, "AnalyzedResource$error": "An error message.
", - "AnalyzedResource$resourceOwnerAccount": "The AWS account ID that owns the resource.
", - "AnalyzedResourceSummary$resourceOwnerAccount": "The AWS account ID that owns the resource.
", + "AnalyzedResource$resourceOwnerAccount": "The Amazon Web Services account ID that owns the resource.
", + "AnalyzedResourceSummary$resourceOwnerAccount": "The Amazon Web Services account ID that owns the resource.
", "AnalyzerSummary$lastResourceAnalyzed": "The resource that was most recently analyzed by the analyzer.
", "ApplyArchiveRuleRequest$clientToken": "A client token.
", "ConditionKeyMap$key": null, @@ -1103,11 +1103,11 @@ "FilterCriteriaMap$key": null, "Finding$error": "An error.
", "Finding$resource": "The resource that an external principal has access to.
", - "Finding$resourceOwnerAccount": "The AWS account ID that owns the resource.
", - "FindingSourceDetail$accessPointArn": "The ARN of the access point that generated the finding.
", + "Finding$resourceOwnerAccount": "The Amazon Web Services account ID that owns the resource.
", + "FindingSourceDetail$accessPointArn": "The ARN of the access point that generated the finding. The ARN format depends on whether the ARN represents an access point or a multi-region access point.
", "FindingSummary$error": "The error that resulted in an Error finding.
", "FindingSummary$resource": "The resource that the external principal has access to.
", - "FindingSummary$resourceOwnerAccount": "The AWS account ID that owns the resource.
", + "FindingSummary$resourceOwnerAccount": "The Amazon Web Services account ID that owns the resource.
", "GeneratedPolicy$policy": "The text to use as the content for the new policy. The policy is created using the CreatePolicy action.
", "InternalServerException$message": null, "JobError$message": "Specific information about the error. For example, which service quota was exceeded or which resource was not found.
", @@ -1125,7 +1125,7 @@ "ServiceQuotaExceededException$resourceType": "The resource type.
", "SharedViaList$member": null, "SortCriteria$attributeName": "The name of the attribute to sort on.
", - "StartPolicyGenerationRequest$clientToken": "A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully, the subsequent retries with the same client token return the result from the original successful request and they have no additional effect.
If you do not specify a client token, one is automatically generated by the AWS SDK.
", + "StartPolicyGenerationRequest$clientToken": "A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully, the subsequent retries with the same client token return the result from the original successful request and they have no additional effect.
If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.
", "TagKeys$member": null, "TagResourceRequest$resourceArn": "The ARN of the resource to add the tag to.
", "TagsMap$key": null, @@ -1190,10 +1190,10 @@ "AnalyzerSummary$lastResourceAnalyzedAt": "The time at which the most recently analyzed resource was analyzed.
", "ArchiveRuleSummary$createdAt": "The time at which the archive rule was created.
", "ArchiveRuleSummary$updatedAt": "The time at which the archive rule was last updated.
", - "CloudTrailDetails$endTime": "The end of the time range for which Access Analyzer reviews your CloudTrail events. Events with a timestamp after this time are not considered to generate a policy. If this is not included in the request, the default value is the current time.
", - "CloudTrailDetails$startTime": "The start of the time range for which Access Analyzer reviews your CloudTrail events. Events with a timestamp before this time are not considered to generate a policy.
", - "CloudTrailProperties$endTime": "The end of the time range for which Access Analyzer reviews your CloudTrail events. Events with a timestamp after this time are not considered to generate a policy. If this is not included in the request, the default value is the current time.
", - "CloudTrailProperties$startTime": "The start of the time range for which Access Analyzer reviews your CloudTrail events. Events with a timestamp before this time are not considered to generate a policy.
", + "CloudTrailDetails$endTime": "The end of the time range for which IAM Access Analyzer reviews your CloudTrail events. Events with a timestamp after this time are not considered to generate a policy. If this is not included in the request, the default value is the current time.
", + "CloudTrailDetails$startTime": "The start of the time range for which IAM Access Analyzer reviews your CloudTrail events. Events with a timestamp before this time are not considered to generate a policy.
", + "CloudTrailProperties$endTime": "The end of the time range for which IAM Access Analyzer reviews your CloudTrail events. Events with a timestamp after this time are not considered to generate a policy. If this is not included in the request, the default value is the current time.
", + "CloudTrailProperties$startTime": "The start of the time range for which IAM Access Analyzer reviews your CloudTrail events. Events with a timestamp before this time are not considered to generate a policy.
", "Finding$analyzedAt": "The time at which the resource was analyzed.
", "Finding$createdAt": "The time at which the finding was generated.
", "Finding$updatedAt": "The time at which the finding was updated.
", @@ -1288,7 +1288,7 @@ "ValidatePolicyFindingList": { "base": null, "refs": { - "ValidatePolicyResponse$findings": "The list of findings in a policy returned by Access Analyzer based on its suite of policy checks.
" + "ValidatePolicyResponse$findings": "The list of findings in a policy returned by IAM Access Analyzer based on its suite of policy checks.
" } }, "ValidatePolicyFindingType": { @@ -1339,7 +1339,7 @@ } }, "VpcConfiguration": { - "base": "The proposed virtual private cloud (VPC) configuration for the Amazon S3 access point. For more information, see VpcConfiguration.
", + "base": "The proposed virtual private cloud (VPC) configuration for the Amazon S3 access point. VPC configuration does not apply to multi-region access points. For more information, see VpcConfiguration.
", "refs": { "NetworkOriginConfiguration$vpcConfiguration": null } diff --git a/models/apis/acm-pca/2017-08-22/api-2.json b/models/apis/acm-pca/2017-08-22/api-2.json index cb7a05089de..2e2706cacb4 100644 --- a/models/apis/acm-pca/2017-08-22/api-2.json +++ b/models/apis/acm-pca/2017-08-22/api-2.json @@ -1073,6 +1073,17 @@ "max":500, "min":1 }, + "OcspConfiguration":{ + "type":"structure", + "required":["Enabled"], + "members":{ + "Enabled":{ + "shape":"Boolean", + "box":true + }, + "OcspCustomCname":{"shape":"String253"} + } + }, "OtherName":{ "type":"structure", "required":[ @@ -1214,7 +1225,8 @@ "RevocationConfiguration":{ "type":"structure", "members":{ - "CrlConfiguration":{"shape":"CrlConfiguration"} + "CrlConfiguration":{"shape":"CrlConfiguration"}, + "OcspConfiguration":{"shape":"OcspConfiguration"} } }, "RevocationReason":{ diff --git a/models/apis/acm-pca/2017-08-22/docs-2.json b/models/apis/acm-pca/2017-08-22/docs-2.json index b6257de367a..43ace8b4842 100644 --- a/models/apis/acm-pca/2017-08-22/docs-2.json +++ b/models/apis/acm-pca/2017-08-22/docs-2.json @@ -1,8 +1,8 @@ { "version": "2.0", - "service": "This is the ACM Private CA API Reference. It provides descriptions, syntax, and usage examples for each of the actions and data types involved in creating and managing private certificate authorities (CA) for your organization.
The documentation for each action shows the Query API request parameters and the XML response. Alternatively, you can use one of the AWS SDKs to access an API that's tailored to the programming language or platform that you're using. For more information, see AWS SDKs.
Each ACM Private CA API action has a quota that determines the number of times the action can be called per second. For more information, see API Rate Quotas in ACM Private CA in the ACM Private CA user guide.
This is the ACM Private CA API Reference. It provides descriptions, syntax, and usage examples for each of the actions and data types involved in creating and managing private certificate authorities (CA) for your organization.
The documentation for each action shows the Query API request parameters and the XML response. Alternatively, you can use one of the AWS SDKs to access an API that's tailored to the programming language or platform that you're using. For more information, see AWS SDKs.
Each ACM Private CA API operation has a quota that determines the number of times the operation can be called per second. ACM Private CA throttles API requests at different rates depending on the operation. Throttling means that ACM Private CA rejects an otherwise valid request because the request exceeds the operation's quota for the number of requests per second. When a request is throttled, ACM Private CA returns a ThrottlingException error. ACM Private CA does not guarantee a minimum request rate for APIs.
To see an up-to-date list of your ACM Private CA quotas, or to request a quota increase, log into your AWS account and visit the Service Quotas console.
", "operations": { - "CreateCertificateAuthority": "Creates a root or subordinate private certificate authority (CA). You must specify the CA configuration, the certificate revocation list (CRL) configuration, the CA type, and an optional idempotency token to avoid accidental creation of multiple CAs. The CA configuration specifies the name of the algorithm and key size to be used to create the CA private key, the type of signing algorithm that the CA uses, and X.500 subject information. The CRL configuration specifies the CRL expiration period in days (the validity period of the CRL), the Amazon S3 bucket that will contain the CRL, and a CNAME alias for the S3 bucket that is included in certificates issued by the CA. If successful, this action returns the Amazon Resource Name (ARN) of the CA.
ACM Private CA assets that are stored in Amazon S3 can be protected with encryption. For more information, see Encrypting Your CRLs.
Both PCA and the IAM principal must have permission to write to the S3 bucket that you specify. If the IAM principal making the call does not have permission to write to the bucket, then an exception is thrown. For more information, see Configure Access to ACM Private CA.
Creates a root or subordinate private certificate authority (CA). You must specify the CA configuration, an optional configuration for Online Certificate Status Protocol (OCSP) and/or a certificate revocation list (CRL), the CA type, and an optional idempotency token to avoid accidental creation of multiple CAs. The CA configuration specifies the name of the algorithm and key size to be used to create the CA private key, the type of signing algorithm that the CA uses, and X.500 subject information. The OCSP configuration can optionally specify a custom URL for the OCSP responder. The CRL configuration specifies the CRL expiration period in days (the validity period of the CRL), the Amazon S3 bucket that will contain the CRL, and a CNAME alias for the S3 bucket that is included in certificates issued by the CA. If successful, this action returns the Amazon Resource Name (ARN) of the CA.
ACM Private CA assets that are stored in Amazon S3 can be protected with encryption. For more information, see Encrypting Your CRLs.
Both PCA and the IAM principal must have permission to write to the S3 bucket that you specify. If the IAM principal making the call does not have permission to write to the bucket, then an exception is thrown. For more information, see Configure Access to ACM Private CA.
Creates an audit report that lists every time that your CA private key is used. The report is saved in the Amazon S3 bucket that you specify on input. The IssueCertificate and RevokeCertificate actions use the private key.
Both PCA and the IAM principal must have permission to write to the S3 bucket that you specify. If the IAM principal making the call does not have permission to write to the bucket, then an exception is thrown. For more information, see Configure Access to ACM Private CA.
ACM Private CA assets that are stored in Amazon S3 can be protected with encryption. For more information, see Encrypting Your Audit Reports.
", "CreatePermission": "Grants one or more permissions on a private CA to the AWS Certificate Manager (ACM) service principal (acm.amazonaws.com
). These permissions allow ACM to issue and renew ACM certificates that reside in the same AWS account as the CA.
You can list current permissions with the ListPermissions action and revoke them with the DeletePermission action.
About Permissions
If the private CA and the certificates it issues reside in the same account, you can use CreatePermission
to grant permissions for ACM to carry out automatic certificate renewals.
For automatic certificate renewal to succeed, the ACM service principal needs permissions to create, retrieve, and list certificates.
If the private CA and the ACM certificates reside in different accounts, then permissions cannot be used to enable automatic renewals. Instead, the ACM certificate owner must set up a resource-based policy to enable cross-account issuance and renewals. For more information, see Using a Resource Based Policy with ACM Private CA.
Deletes a private certificate authority (CA). You must provide the Amazon Resource Name (ARN) of the private CA that you want to delete. You can find the ARN by calling the ListCertificateAuthorities action.
Deleting a CA will invalidate other CAs and certificates below it in your CA hierarchy.
Before you can delete a CA that you have created and activated, you must disable it. To do this, call the UpdateCertificateAuthority action and set the CertificateAuthorityStatus parameter to DISABLED
.
Additionally, you can delete a CA if you are waiting for it to be created (that is, the status of the CA is CREATING
). You can also delete it if the CA has been created but you haven't yet imported the signed certificate into ACM Private CA (that is, the status of the CA is PENDING_CERTIFICATE
).
When you successfully call DeleteCertificateAuthority, the CA's status changes to DELETED
. However, the CA won't be permanently deleted until the restoration period has passed. By default, if you do not set the PermanentDeletionTimeInDays
parameter, the CA remains restorable for 30 days. You can set the parameter from 7 to 30 days. The DescribeCertificateAuthority action returns the time remaining in the restoration window of a private CA in the DELETED
state. To restore an eligible CA, call the RestoreCertificateAuthority action.
Key can be used to sign certificates.
", "KeyUsage$CRLSign": "Key can be used to sign CRLs.
", "KeyUsage$EncipherOnly": "Key can be used only to encipher data.
", - "KeyUsage$DecipherOnly": "Key can be used only to decipher data.
" + "KeyUsage$DecipherOnly": "Key can be used only to decipher data.
", + "OcspConfiguration$Enabled": "Flag enabling use of the Online Certificate Status Protocol (OCSP) for validating certificate revocation status.
" } }, "CertificateAuthorities": { @@ -276,9 +277,9 @@ } }, "CrlConfiguration": { - "base": "Contains configuration information for a certificate revocation list (CRL). Your private certificate authority (CA) creates base CRLs. Delta CRLs are not supported. You can enable CRLs for your new or an existing private CA by setting the Enabled parameter to true
. Your private CA writes CRLs to an S3 bucket that you specify in the S3BucketName parameter. You can hide the name of your bucket by specifying a value for the CustomCname parameter. Your private CA copies the CNAME or the S3 bucket name to the CRL Distribution Points extension of each certificate it issues. Your S3 bucket policy must give write permission to ACM Private CA.
ACM Private CA assets that are stored in Amazon S3 can be protected with encryption. For more information, see Encrypting Your CRLs.
Your private CA uses the value in the ExpirationInDays parameter to calculate the nextUpdate field in the CRL. The CRL is refreshed at 1/2 the age of next update or when a certificate is revoked. When a certificate is revoked, it is recorded in the next CRL that is generated and in the next audit report. Only time valid certificates are listed in the CRL. Expired certificates are not included.
CRLs contain the following fields:
Version: The current version number defined in RFC 5280 is V2. The integer value is 0x1.
Signature Algorithm: The name of the algorithm used to sign the CRL.
Issuer: The X.500 distinguished name of your private CA that issued the CRL.
Last Update: The issue date and time of this CRL.
Next Update: The day and time by which the next CRL will be issued.
Revoked Certificates: List of revoked certificates. Each list item contains the following information.
Serial Number: The serial number, in hexadecimal format, of the revoked certificate.
Revocation Date: Date and time the certificate was revoked.
CRL Entry Extensions: Optional extensions for the CRL entry.
X509v3 CRL Reason Code: Reason the certificate was revoked.
CRL Extensions: Optional extensions for the CRL.
X509v3 Authority Key Identifier: Identifies the public key associated with the private key used to sign the certificate.
X509v3 CRL Number:: Decimal sequence number for the CRL.
Signature Algorithm: Algorithm used by your private CA to sign the CRL.
Signature Value: Signature computed over the CRL.
Certificate revocation lists created by ACM Private CA are DER-encoded. You can use the following OpenSSL command to list a CRL.
openssl crl -inform DER -text -in crl_path -noout
Contains configuration information for a certificate revocation list (CRL). Your private certificate authority (CA) creates base CRLs. Delta CRLs are not supported. You can enable CRLs for your new or an existing private CA by setting the Enabled parameter to true
. Your private CA writes CRLs to an S3 bucket that you specify in the S3BucketName parameter. You can hide the name of your bucket by specifying a value for the CustomCname parameter. Your private CA copies the CNAME or the S3 bucket name to the CRL Distribution Points extension of each certificate it issues. Your S3 bucket policy must give write permission to ACM Private CA.
ACM Private CA assets that are stored in Amazon S3 can be protected with encryption. For more information, see Encrypting Your CRLs.
Your private CA uses the value in the ExpirationInDays parameter to calculate the nextUpdate field in the CRL. The CRL is refreshed at 1/2 the age of next update or when a certificate is revoked. When a certificate is revoked, it is recorded in the next CRL that is generated and in the next audit report. Only time valid certificates are listed in the CRL. Expired certificates are not included.
A CRL is typically updated approximately 30 minutes after a certificate is revoked. If for any reason a CRL update fails, ACM Private CA makes further attempts every 15 minutes.
CRLs contain the following fields:
Version: The current version number defined in RFC 5280 is V2. The integer value is 0x1.
Signature Algorithm: The name of the algorithm used to sign the CRL.
Issuer: The X.500 distinguished name of your private CA that issued the CRL.
Last Update: The issue date and time of this CRL.
Next Update: The day and time by which the next CRL will be issued.
Revoked Certificates: List of revoked certificates. Each list item contains the following information.
Serial Number: The serial number, in hexadecimal format, of the revoked certificate.
Revocation Date: Date and time the certificate was revoked.
CRL Entry Extensions: Optional extensions for the CRL entry.
X509v3 CRL Reason Code: Reason the certificate was revoked.
CRL Extensions: Optional extensions for the CRL.
X509v3 Authority Key Identifier: Identifies the public key associated with the private key used to sign the certificate.
X509v3 CRL Number:: Decimal sequence number for the CRL.
Signature Algorithm: Algorithm used by your private CA to sign the CRL.
Signature Value: Signature computed over the CRL.
Certificate revocation lists created by ACM Private CA are DER-encoded. You can use the following OpenSSL command to list a CRL.
openssl crl -inform DER -text -in crl_path -noout
For more information, see Planning a certificate revocation list (CRL) in the AWS Certificate Manager Private Certificate Authority (PCA) User Guide
", "refs": { - "RevocationConfiguration$CrlConfiguration": "Configuration of the certificate revocation list (CRL), if any, maintained by your private CA.
" + "RevocationConfiguration$CrlConfiguration": "Configuration of the certificate revocation list (CRL), if any, maintained by your private CA. A CRL is typically updated approximately 30 minutes after a certificate is revoked. If for any reason a CRL update fails, ACM Private CA makes further attempts every 15 minutes.
" } }, "CsrBlob": { @@ -585,6 +586,12 @@ "ListTagsResponse$NextToken": "When the list is truncated, this value is present and should be used for the NextToken parameter in a subsequent pagination request.
" } }, + "OcspConfiguration": { + "base": "Contains information to enable and configure Online Certificate Status Protocol (OCSP) for validating certificate revocation status.
When you revoke a certificate, OCSP responses may take up to 60 minutes to reflect the new status.
", + "refs": { + "RevocationConfiguration$OcspConfiguration": "Configuration of Online Certificate Status Protocol (OCSP) support, if any, maintained by your private CA. When you revoke a certificate, OCSP responses may take up to 60 minutes to reflect the new status.
" + } + }, "OtherName": { "base": "Defines a custom ASN.1 X.400 GeneralName
using an object identifier (OID) and value. The OID must satisfy the regular expression shown below. For more information, see NIST's definition of Object Identifier (OID).
Certificate revocation information used by the CreateCertificateAuthority and UpdateCertificateAuthority actions. Your private certificate authority (CA) can create and maintain a certificate revocation list (CRL). A CRL contains information about certificates revoked by your CA. For more information, see RevokeCertificate.
", + "base": "Certificate revocation information used by the CreateCertificateAuthority and UpdateCertificateAuthority actions. Your private certificate authority (CA) can configure Online Certificate Status Protocol (OCSP) support and/or maintain a certificate revocation list (CRL). OCSP returns validation information about certificates as requested by clients, and a CRL contains an updated list of certificates revoked by your CA. For more information, see RevokeCertificate and Setting up a certificate revocation method in the AWS Certificate Manager Private Certificate Authority (PCA) User Guide.
", "refs": { - "CertificateAuthority$RevocationConfiguration": "Information about the certificate revocation list (CRL) created and maintained by your private CA.
", - "CreateCertificateAuthorityRequest$RevocationConfiguration": "Contains a Boolean value that you can use to enable a certification revocation list (CRL) for the CA, the name of the S3 bucket to which ACM Private CA will write the CRL, and an optional CNAME alias that you can use to hide the name of your bucket in the CRL Distribution Points extension of your CA certificate. For more information, see the CrlConfiguration structure.
", - "UpdateCertificateAuthorityRequest$RevocationConfiguration": "Revocation information for your private CA.
" + "CertificateAuthority$RevocationConfiguration": "Information about the Online Certificate Status Protocol (OCSP) configuration or certificate revocation list (CRL) created and maintained by your private CA.
", + "CreateCertificateAuthorityRequest$RevocationConfiguration": "Contains information to enable Online Certificate Status Protocol (OCSP) support, to enable a certificate revocation list (CRL), to enable both, or to enable neither. The default is for both certificate validation mechanisms to be disabled. For more information, see the OcspConfiguration and CrlConfiguration types.
", + "UpdateCertificateAuthorityRequest$RevocationConfiguration": "Contains information to enable Online Certificate Status Protocol (OCSP) support, to enable a certificate revocation list (CRL), to enable both, or to enable neither. If this parameter is not supplied, existing capibilites remain unchanged. For more information, see the OcspConfiguration and CrlConfiguration types.
" } }, "RevocationReason": { @@ -785,7 +792,8 @@ "refs": { "CrlConfiguration$CustomCname": "Name inserted into the certificate CRL Distribution Points extension that enables the use of an alias for the CRL distribution point. Use this value if you don't want the name of your S3 bucket to be public.
", "GeneralName$DnsName": "Represents GeneralName
as a DNS name.
Represents GeneralName
as a URI.
Represents GeneralName
as a URI.
By default, ACM Private CA injects an AWS domain into certificates being validated by the Online Certificate Status Protocol (OCSP). A customer can alternatively use this object to define a CNAME specifying a customized OCSP domain.
Note: The value of the CNAME must not include a protocol prefix such as \"http://\" or \"https://\".
For more information, see Customizing Online Certificate Status Protocol (OCSP) in the AWS Certificate Manager Private Certificate Authority (PCA) User Guide.
" } }, "String256": { @@ -813,7 +821,7 @@ "String3To255": { "base": null, "refs": { - "CrlConfiguration$S3BucketName": "Name of the S3 bucket that contains the CRL. If you do not provide a value for the CustomCname argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You can change the name of your bucket by calling the UpdateCertificateAuthority action. You must specify a bucket policy that allows ACM Private CA to write the CRL to your bucket.
" + "CrlConfiguration$S3BucketName": "Name of the S3 bucket that contains the CRL. If you do not provide a value for the CustomCname argument, the name of your S3 bucket is placed into the CRL Distribution Points extension of the issued certificate. You can change the name of your bucket by calling the UpdateCertificateAuthority operation. You must specify a bucket policy that allows ACM Private CA to write the CRL to your bucket.
" } }, "String40": { diff --git a/models/apis/ebs/2019-11-02/docs-2.json b/models/apis/ebs/2019-11-02/docs-2.json index 2328af0a862..79f119518f3 100644 --- a/models/apis/ebs/2019-11-02/docs-2.json +++ b/models/apis/ebs/2019-11-02/docs-2.json @@ -368,7 +368,7 @@ "refs": { "ListChangedBlocksResponse$VolumeSize": "The size of the volume in GB.
", "ListSnapshotBlocksResponse$VolumeSize": "The size of the volume in GB.
", - "StartSnapshotRequest$VolumeSize": "The size of the volume, in GiB. The maximum size is 16384
GiB (16 TiB).
The size of the volume, in GiB. The maximum size is 65536
GiB (64 TiB).
The size of the volume, in GiB.
" } } diff --git a/models/apis/elasticfilesystem/2015-02-01/api-2.json b/models/apis/elasticfilesystem/2015-02-01/api-2.json index a5fd276c231..2e871685d70 100644 --- a/models/apis/elasticfilesystem/2015-02-01/api-2.json +++ b/models/apis/elasticfilesystem/2015-02-01/api-2.json @@ -1126,12 +1126,14 @@ }, "LifecyclePolicies":{ "type":"list", - "member":{"shape":"LifecyclePolicy"} + "member":{"shape":"LifecyclePolicy"}, + "max":2 }, "LifecyclePolicy":{ "type":"structure", "members":{ - "TransitionToIA":{"shape":"TransitionToIARules"} + "TransitionToIA":{"shape":"TransitionToIARules"}, + "TransitionToPrimaryStorageClass":{"shape":"TransitionToPrimaryStorageClassRules"} } }, "ListTagsForResourceRequest":{ @@ -1456,7 +1458,7 @@ "SecurityGroups":{ "type":"list", "member":{"shape":"SecurityGroup"}, - "max":5 + "max":100 }, "Status":{ "type":"string", @@ -1574,6 +1576,10 @@ "AFTER_90_DAYS" ] }, + "TransitionToPrimaryStorageClassRules":{ + "type":"string", + "enum":["AFTER_1_ACCESS"] + }, "Uid":{ "type":"long", "max":4294967295, diff --git a/models/apis/elasticfilesystem/2015-02-01/docs-2.json b/models/apis/elasticfilesystem/2015-02-01/docs-2.json index 56200fa8311..be905d96bd8 100644 --- a/models/apis/elasticfilesystem/2015-02-01/docs-2.json +++ b/models/apis/elasticfilesystem/2015-02-01/docs-2.json @@ -1,31 +1,31 @@ { "version": "2.0", - "service": "Amazon Elastic File System (Amazon EFS) provides simple, scalable file storage for use with Amazon EC2 instances in the AWS Cloud. With Amazon EFS, storage capacity is elastic, growing and shrinking automatically as you add and remove files, so your applications have the storage they need, when they need it. For more information, see the Amazon Elastic File System API Reference and the Amazon Elastic File System User Guide.
", + "service": "Amazon Elastic File System (Amazon EFS) provides simple, scalable file storage for use with Amazon EC2 instances in the Amazon Web Services Cloud. With Amazon EFS, storage capacity is elastic, growing and shrinking automatically as you add and remove files, so your applications have the storage they need, when they need it. For more information, see the Amazon Elastic File System API Reference and the Amazon Elastic File System User Guide.
", "operations": { "CreateAccessPoint": "Creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in its own directory and below. To learn more, see Mounting a file system using EFS access points.
This operation requires permissions for the elasticfilesystem:CreateAccessPoint
action.
Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's AWS account with the specified creation token, this operation does the following:
Creates a new, empty file system. The file system will have an Amazon EFS assigned ID, and an initial lifecycle state creating
.
Returns with the description of the created file system.
Otherwise, this operation returns a FileSystemAlreadyExists
error with the ID of the existing file system.
For basic use cases, you can use a randomly generated UUID for the creation token.
The idempotent operation allows you to retry a CreateFileSystem
call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists
error.
For more information, see Creating a file system in the Amazon EFS User Guide.
The CreateFileSystem
call returns while the file system's lifecycle state is still creating
. You can check the file system creation status by calling the DescribeFileSystems operation, which among other things returns the file system state.
This operation accepts an optional PerformanceMode
parameter that you choose for your file system. We recommend generalPurpose
performance mode for most file systems. File systems using the maxIO
performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. For more information, see Amazon EFS performance modes.
You can set the throughput mode for the file system using the ThroughputMode
parameter.
After the file system is fully created, Amazon EFS sets its lifecycle state to available
, at which point you can create one or more mount targets for the file system in your VPC. For more information, see CreateMountTarget. You mount your Amazon EFS file system on an EC2 instances in your VPC by using the mount target. For more information, see Amazon EFS: How it Works.
This operation requires permissions for the elasticfilesystem:CreateFileSystem
action.
Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's Amazon Web Services account with the specified creation token, this operation does the following:
Creates a new, empty file system. The file system will have an Amazon EFS assigned ID, and an initial lifecycle state creating
.
Returns with the description of the created file system.
Otherwise, this operation returns a FileSystemAlreadyExists
error with the ID of the existing file system.
For basic use cases, you can use a randomly generated UUID for the creation token.
The idempotent operation allows you to retry a CreateFileSystem
call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists
error.
For more information, see Creating a file system in the Amazon EFS User Guide.
The CreateFileSystem
call returns while the file system's lifecycle state is still creating
. You can check the file system creation status by calling the DescribeFileSystems operation, which among other things returns the file system state.
This operation accepts an optional PerformanceMode
parameter that you choose for your file system. We recommend generalPurpose
performance mode for most file systems. File systems using the maxIO
performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. For more information, see Amazon EFS performance modes.
You can set the throughput mode for the file system using the ThroughputMode
parameter.
After the file system is fully created, Amazon EFS sets its lifecycle state to available
, at which point you can create one or more mount targets for the file system in your VPC. For more information, see CreateMountTarget. You mount your Amazon EFS file system on an EC2 instances in your VPC by using the mount target. For more information, see Amazon EFS: How it Works.
This operation requires permissions for the elasticfilesystem:CreateFileSystem
action.
Creates a mount target for a file system. You can then mount the file system on EC2 instances by using the mount target.
You can create one mount target in each Availability Zone in your VPC. All EC2 instances in a VPC within a given Availability Zone share a single mount target for a given file system. If you have multiple subnets in an Availability Zone, you create a mount target in one of the subnets. EC2 instances do not need to be in the same subnet as the mount target in order to access their file system.
You can create only one mount target for an EFS file system using One Zone storage classes. You must create that mount target in the same Availability Zone in which the file system is located. Use the AvailabilityZoneName
and AvailabiltyZoneId
properties in the DescribeFileSystems response object to get this information. Use the subnetId
associated with the file system's Availability Zone when creating the mount target.
For more information, see Amazon EFS: How it Works.
To create a mount target for a file system, the file system's lifecycle state must be available
. For more information, see DescribeFileSystems.
In the request, provide the following:
The file system ID for which you are creating the mount target.
A subnet ID, which determines the following:
The VPC in which Amazon EFS creates the mount target
The Availability Zone in which Amazon EFS creates the mount target
The IP address range from which Amazon EFS selects the IP address of the mount target (if you don't specify an IP address in the request)
After creating the mount target, Amazon EFS returns a response that includes, a MountTargetId
and an IpAddress
. You use this IP address when mounting the file system in an EC2 instance. You can also use the mount target's DNS name when mounting the file system. The EC2 instance on which you mount the file system by using the mount target can resolve the mount target's DNS name to its IP address. For more information, see How it Works: Implementation Overview.
Note that you can create mount targets for a file system in only one VPC, and there can be only one mount target per Availability Zone. That is, if the file system already has one or more mount targets created for it, the subnet specified in the request to add another mount target must meet the following requirements:
Must belong to the same VPC as the subnets of the existing mount targets
Must not be in the same Availability Zone as any of the subnets of the existing mount targets
If the request satisfies the requirements, Amazon EFS does the following:
Creates a new mount target in the specified subnet.
Also creates a new network interface in the subnet as follows:
If the request provides an IpAddress
, Amazon EFS assigns that IP address to the network interface. Otherwise, Amazon EFS assigns a free address in the subnet (in the same way that the Amazon EC2 CreateNetworkInterface
call does when a request does not specify a primary private IP address).
If the request provides SecurityGroups
, this network interface is associated with those security groups. Otherwise, it belongs to the default security group for the subnet's VPC.
Assigns the description Mount target fsmt-id for file system fs-id
where fsmt-id
is the mount target ID, and fs-id
is the FileSystemId
.
Sets the requesterManaged
property of the network interface to true
, and the requesterId
value to EFS
.
Each Amazon EFS mount target has one corresponding requester-managed EC2 network interface. After the network interface is created, Amazon EFS sets the NetworkInterfaceId
field in the mount target's description to the network interface ID, and the IpAddress
field to its address. If network interface creation fails, the entire CreateMountTarget
operation fails.
The CreateMountTarget
call returns only after creating the network interface, but while the mount target state is still creating
, you can check the mount target creation status by calling the DescribeMountTargets operation, which among other things returns the mount target state.
We recommend that you create a mount target in each of the Availability Zones. There are cost considerations for using a file system in an Availability Zone through a mount target created in another Availability Zone. For more information, see Amazon EFS. In addition, by always using a mount target local to the instance's Availability Zone, you eliminate a partial failure scenario. If the Availability Zone in which your mount target is created goes down, then you can't access your file system through that mount target.
This operation requires permissions for the following action on the file system:
elasticfilesystem:CreateMountTarget
This operation also requires permissions for the following Amazon EC2 actions:
ec2:DescribeSubnets
ec2:DescribeNetworkInterfaces
ec2:CreateNetworkInterface
DEPRECATED - CreateTags is deprecated and not maintained. Please use the API action to create tags for EFS resources.
Creates or overwrites tags associated with a file system. Each tag is a key-value pair. If a tag key specified in the request already exists on the file system, this operation overwrites its value with the value provided in the request. If you add the Name
tag to your file system, Amazon EFS returns it in the response to the DescribeFileSystems operation.
This operation requires permission for the elasticfilesystem:CreateTags
action.
Deletes the specified access point. After deletion is complete, new clients can no longer connect to the access points. Clients connected to the access point at the time of deletion will continue to function until they terminate their connection.
This operation requires permissions for the elasticfilesystem:DeleteAccessPoint
action.
Deletes a file system, permanently severing access to its contents. Upon return, the file system no longer exists and you can't access any contents of the deleted file system.
You can't delete a file system that is in use. That is, if the file system has any mount targets, you must first delete them. For more information, see DescribeMountTargets and DeleteMountTarget.
The DeleteFileSystem
call returns while the file system state is still deleting
. You can check the file system deletion status by calling the DescribeFileSystems operation, which returns a list of file systems in your account. If you pass file system ID or creation token for the deleted file system, the DescribeFileSystems returns a 404 FileSystemNotFound
error.
This operation requires permissions for the elasticfilesystem:DeleteFileSystem
action.
Deletes the FileSystemPolicy
for the specified file system. The default FileSystemPolicy
goes into effect once the existing policy is deleted. For more information about the default file system policy, see Using Resource-based Policies with EFS.
This operation requires permissions for the elasticfilesystem:DeleteFileSystemPolicy
action.
Deletes the specified mount target.
This operation forcibly breaks any mounts of the file system by using the mount target that is being deleted, which might disrupt instances or applications using those mounts. To avoid applications getting cut off abruptly, you might consider unmounting any mounts of the mount target, if feasible. The operation also deletes the associated network interface. Uncommitted writes might be lost, but breaking a mount target using this operation does not corrupt the file system itself. The file system you created remains. You can mount an EC2 instance in your VPC by using another mount target.
This operation requires permissions for the following action on the file system:
elasticfilesystem:DeleteMountTarget
The DeleteMountTarget
call returns while the mount target state is still deleting
. You can check the mount target deletion by calling the DescribeMountTargets operation, which returns a list of mount target descriptions for the given file system.
The operation also requires permissions for the following Amazon EC2 action on the mount target's network interface:
ec2:DeleteNetworkInterface
DEPRECATED - DeleteTags is deprecated and not maintained. Please use the API action to remove tags from EFS resources.
Deletes the specified tags from a file system. If the DeleteTags
request includes a tag key that doesn't exist, Amazon EFS ignores it and doesn't cause an error. For more information about tags and related restrictions, see Tag Restrictions in the AWS Billing and Cost Management User Guide.
This operation requires permissions for the elasticfilesystem:DeleteTags
action.
DEPRECATED - DeleteTags is deprecated and not maintained. Please use the API action to remove tags from EFS resources.
Deletes the specified tags from a file system. If the DeleteTags
request includes a tag key that doesn't exist, Amazon EFS ignores it and doesn't cause an error. For more information about tags and related restrictions, see Tag restrictions in the Billing and Cost Management User Guide.
This operation requires permissions for the elasticfilesystem:DeleteTags
action.
Returns the description of a specific Amazon EFS access point if the AccessPointId
is provided. If you provide an EFS FileSystemId
, it returns descriptions of all access points for that file system. You can provide either an AccessPointId
or a FileSystemId
in the request, but not both.
This operation requires permissions for the elasticfilesystem:DescribeAccessPoints
action.
Returns the account preferences settings for the Amazon Web Services account associated with the user making the request, in the current Amazon Web Services Region. For more information, see Managing Amazon EFS resource IDs.
", "DescribeBackupPolicy": "Returns the backup policy for the specified EFS file system.
", "DescribeFileSystemPolicy": "Returns the FileSystemPolicy
for the specified EFS file system.
This operation requires permissions for the elasticfilesystem:DescribeFileSystemPolicy
action.
Returns the description of a specific Amazon EFS file system if either the file system CreationToken
or the FileSystemId
is provided. Otherwise, it returns descriptions of all file systems owned by the caller's AWS account in the AWS Region of the endpoint that you're calling.
When retrieving all file system descriptions, you can optionally specify the MaxItems
parameter to limit the number of descriptions in a response. Currently, this number is automatically set to 10. If more file system descriptions remain, Amazon EFS returns a NextMarker
, an opaque token, in the response. In this case, you should send a subsequent request with the Marker
request parameter set to the value of NextMarker
.
To retrieve a list of your file system descriptions, this operation is used in an iterative process, where DescribeFileSystems
is called first without the Marker
and then the operation continues to call it with the Marker
parameter set to the value of the NextMarker
from the previous response until the response has no NextMarker
.
The order of file systems returned in the response of one DescribeFileSystems
call and the order of file systems returned across the responses of a multi-call iteration is unspecified.
This operation requires permissions for the elasticfilesystem:DescribeFileSystems
action.
Returns the current LifecycleConfiguration
object for the specified Amazon EFS file system. EFS lifecycle management uses the LifecycleConfiguration
object to identify which files to move to the EFS Infrequent Access (IA) storage class. For a file system without a LifecycleConfiguration
object, the call returns an empty array in the response.
This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration
operation.
Returns the description of a specific Amazon EFS file system if either the file system CreationToken
or the FileSystemId
is provided. Otherwise, it returns descriptions of all file systems owned by the caller's Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.
When retrieving all file system descriptions, you can optionally specify the MaxItems
parameter to limit the number of descriptions in a response. Currently, this number is automatically set to 10. If more file system descriptions remain, Amazon EFS returns a NextMarker
, an opaque token, in the response. In this case, you should send a subsequent request with the Marker
request parameter set to the value of NextMarker
.
To retrieve a list of your file system descriptions, this operation is used in an iterative process, where DescribeFileSystems
is called first without the Marker
and then the operation continues to call it with the Marker
parameter set to the value of the NextMarker
from the previous response until the response has no NextMarker
.
The order of file systems returned in the response of one DescribeFileSystems
call and the order of file systems returned across the responses of a multi-call iteration is unspecified.
This operation requires permissions for the elasticfilesystem:DescribeFileSystems
action.
Returns the current LifecycleConfiguration
object for the specified Amazon EFS file system. EFS lifecycle management uses the LifecycleConfiguration
object to identify which files to move to the EFS Infrequent Access (IA) storage class. For a file system without a LifecycleConfiguration
object, the call returns an empty array in the response.
When EFS Intelligent Tiering is enabled, TransitionToPrimaryStorageClass
has a value of AFTER_1_ACCESS
.
This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration
operation.
Returns the security groups currently in effect for a mount target. This operation requires that the network interface of the mount target has been created and the lifecycle state of the mount target is not deleted
.
This operation requires permissions for the following actions:
elasticfilesystem:DescribeMountTargetSecurityGroups
action on the mount target's file system.
ec2:DescribeNetworkInterfaceAttribute
action on the mount target's network interface.
Returns the descriptions of all the current mount targets, or a specific mount target, for a file system. When requesting all of the current mount targets, the order of mount targets returned in the response is unspecified.
This operation requires permissions for the elasticfilesystem:DescribeMountTargets
action, on either the file system ID that you specify in FileSystemId
, or on the file system of the mount target that you specify in MountTargetId
.
DEPRECATED - The DeleteTags action is deprecated and not maintained. Please use the API action to remove tags from EFS resources.
Returns the tags associated with a file system. The order of tags returned in the response of one DescribeTags
call and the order of tags returned across the responses of a multiple-call iteration (when using pagination) is unspecified.
This operation requires permissions for the elasticfilesystem:DescribeTags
action.
Lists all tags for a top-level EFS resource. You must provide the ID of the resource that you want to retrieve the tags for.
This operation requires permissions for the elasticfilesystem:DescribeAccessPoints
action.
Modifies the set of security groups in effect for a mount target.
When you create a mount target, Amazon EFS also creates a new network interface. For more information, see CreateMountTarget. This operation replaces the security groups in effect for the network interface associated with a mount target, with the SecurityGroups
provided in the request. This operation requires that the network interface of the mount target has been created and the lifecycle state of the mount target is not deleted
.
The operation requires permissions for the following actions:
elasticfilesystem:ModifyMountTargetSecurityGroups
action on the mount target's file system.
ec2:ModifyNetworkInterfaceAttribute
action on the mount target's network interface.
Use this operation to set the account preference in the current Amazon Web Services Region to use either long 17 character (63 bit) or short 8 character (32 bit) IDs for new EFS file systems and mount targets created. All existing resource IDs are not affected by any changes you make. You can set the ID preference during the opt-in period as EFS transitions to long resource IDs. For more information, see Managing Amazon EFS resource IDs.
", "PutBackupPolicy": "Updates the file system's backup policy. Use this action to start or stop automatic backups of the file system.
", "PutFileSystemPolicy": "Applies an Amazon EFS FileSystemPolicy
to an Amazon EFS file system. A file system policy is an IAM resource-based policy and can contain multiple policy statements. A file system always has exactly one file system policy, which can be the default policy or an explicit policy set or updated using this API operation. EFS file system policies have a 20,000 character limit. When an explicit policy is set, it overrides the default policy. For more information about the default file system policy, see Default EFS File System Policy.
EFS file system policies have a 20,000 character limit.
This operation requires permissions for the elasticfilesystem:PutFileSystemPolicy
action.
Enables lifecycle management by creating a new LifecycleConfiguration
object. A LifecycleConfiguration
object defines when files in an Amazon EFS file system are automatically transitioned to the lower-cost EFS Infrequent Access (IA) storage class. A LifecycleConfiguration
applies to all files in a file system.
Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration
object already exists for the specified file system, a PutLifecycleConfiguration
call modifies the existing configuration. A PutLifecycleConfiguration
call with an empty LifecyclePolicies
array in the request body deletes any existing LifecycleConfiguration
and disables lifecycle management.
In the request, specify the following:
The ID for the file system for which you are enabling, disabling, or modifying lifecycle management.
A LifecyclePolicies
array of LifecyclePolicy
objects that define when files are moved to the IA storage class. The array can contain only one LifecyclePolicy
item.
This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration
operation.
To apply a LifecycleConfiguration
object to an encrypted file system, you need the same AWS Key Management Service (AWS KMS) permissions as when you created the encrypted file system.
Enables lifecycle management by creating a new LifecycleConfiguration
object. A LifecycleConfiguration
object defines when files in an Amazon EFS file system are automatically transitioned to the lower-cost EFS Infrequent Access (IA) storage class. To enable EFS Intelligent Tiering, set the value of TransitionToPrimaryStorageClass
to AFTER_1_ACCESS
. For more information, see EFS Lifecycle Management.
A LifecycleConfiguration
applies to all files in a file system.
Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration
object already exists for the specified file system, a PutLifecycleConfiguration
call modifies the existing configuration. A PutLifecycleConfiguration
call with an empty LifecyclePolicies
array in the request body deletes any existing LifecycleConfiguration
and disables lifecycle management.
In the request, specify the following:
The ID for the file system for which you are enabling, disabling, or modifying lifecycle management.
A LifecyclePolicies
array of LifecyclePolicy
objects that define when files are moved to the IA storage class. The array can contain only one LifecyclePolicy
item.
This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration
operation.
To apply a LifecycleConfiguration
object to an encrypted file system, you need the same Key Management Service permissions as when you created the encrypted file system.
Creates a tag for an EFS resource. You can create tags for EFS file systems and access points using this API operation.
This operation requires permissions for the elasticfilesystem:TagResource
action.
Removes tags from an EFS resource. You can remove tags from EFS file systems and access points using this API operation.
This operation requires permissions for the elasticfilesystem:UntagResource
action.
Updates the throughput mode or the amount of provisioned throughput of an existing file system.
" @@ -65,28 +65,28 @@ } }, "AccessPointLimitExceeded": { - "base": "Returned if the AWS account has already created the maximum number of access points allowed per file system.
", + "base": "Returned if the Amazon Web Services account has already created the maximum number of access points allowed per file system.
", "refs": { } }, "AccessPointNotFound": { - "base": "Returned if the specified AccessPointId
value doesn't exist in the requester's AWS account.
Returned if the specified AccessPointId
value doesn't exist in the requester's Amazon Web Services account.
The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes exist. For example, use1-az1
is an Availability Zone ID for the us-east-1 AWS Region, and it has the same location in every AWS account.
The unique and consistent identifier of the Availability Zone that the mount target resides in. For example, use1-az1
is an AZ ID for the us-east-1 Region and it has the same location in every AWS account.
The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes exist. For example, use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web Services Region, and it has the same location in every Amazon Web Services account.
The unique and consistent identifier of the Availability Zone that the mount target resides in. For example, use1-az1
is an AZ ID for the us-east-1 Region and it has the same location in every Amazon Web Services account.
Used to create a file system that uses One Zone storage classes. It specifies the AWS Availability Zone in which to create the file system. Use the format us-east-1a
to specify the Availability Zone. For more information about One Zone storage classes, see Using EFS storage classes in the Amazon EFS User Guide.
One Zone storage classes are not available in all Availability Zones in AWS Regions where Amazon EFS is available.
Describes the AWS Availability Zone in which the file system is located, and is valid only for file systems using One Zone storage classes. For more information, see Using EFS storage classes in the Amazon EFS User Guide.
", - "MountTargetDescription$AvailabilityZoneName": "The name of the Availability Zone in which the mount target is located. Availability Zones are independently mapped to names for each AWS account. For example, the Availability Zone us-east-1a
for your AWS account might not be the same location as us-east-1a
for another AWS account.
Used to create a file system that uses One Zone storage classes. It specifies the Amazon Web Services Availability Zone in which to create the file system. Use the format us-east-1a
to specify the Availability Zone. For more information about One Zone storage classes, see Using EFS storage classes in the Amazon EFS User Guide.
One Zone storage classes are not available in all Availability Zones in Amazon Web Services Regions where Amazon EFS is available.
Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for file systems using One Zone storage classes. For more information, see Using EFS storage classes in the Amazon EFS User Guide.
", + "MountTargetDescription$AvailabilityZoneName": "The name of the Availability Zone in which the mount target is located. Availability Zones are independently mapped to names for each Amazon Web Services account. For example, the Availability Zone us-east-1a
for your Amazon Web Services account might not be the same location as us-east-1a
for another Amazon Web Services account.
Identified the AWS account that owns the access point resource.
", - "FileSystemDescription$OwnerId": "The AWS account that created the file system. If the file system was created by an IAM user, the parent account to which the user belongs is the owner.
", - "MountTargetDescription$OwnerId": "AWS account ID that owns the resource.
" + "AccessPointDescription$OwnerId": "Identified the Amazon Web Services account that owns the access point resource.
", + "FileSystemDescription$OwnerId": "The Amazon Web Services account that created the file system. If the file system was created by an IAM user, the parent account to which the user belongs is the owner.
", + "MountTargetDescription$OwnerId": "Amazon Web Services account ID that owns the resource.
" } }, "Backup": { "base": null, "refs": { - "CreateFileSystemRequest$Backup": "Specifies whether automatic backups are enabled on the file system that you are creating. Set the value to true
to enable automatic backups. If you are creating a file system that uses One Zone storage classes, automatic backups are enabled by default. For more information, see Automatic backups in the Amazon EFS User Guide.
Default is false
. However, if you specify an AvailabilityZoneName
, the default is true
.
AWS Backup is not available in all AWS Regions where Amazon EFS is available.
Specifies whether automatic backups are enabled on the file system that you are creating. Set the value to true
to enable automatic backups. If you are creating a file system that uses One Zone storage classes, automatic backups are enabled by default. For more information, see Automatic backups in the Amazon EFS User Guide.
Default is false
. However, if you specify an AvailabilityZoneName
, the default is true
.
Backup is not available in all Amazon Web Services Regionswhere Amazon EFS is available.
A Boolean value that, if true, creates an encrypted file system. When creating an encrypted file system, you have the option of specifying CreateFileSystemRequest$KmsKeyId for an existing AWS Key Management Service (AWS KMS) customer master key (CMK). If you don't specify a CMK, then the default CMK for Amazon EFS, /aws/elasticfilesystem
, is used to protect the encrypted file system.
A Boolean value that, if true, creates an encrypted file system. When creating an encrypted file system, you have the option of specifying CreateFileSystemRequest$KmsKeyId for an existing Key Management Service (KMS customer master key (CMK). If you don't specify a CMK, then the default CMK for Amazon EFS, /aws/elasticfilesystem
, is used to protect the encrypted file system.
A Boolean value that, if true, indicates that the file system is encrypted.
" } }, @@ -406,12 +406,12 @@ } }, "FileSystemLimitExceeded": { - "base": "Returned if the AWS account has already created the maximum number of file systems allowed per account.
", + "base": "Returned if the Amazon Web Services account has already created the maximum number of file systems allowed per account.
", "refs": { } }, "FileSystemNotFound": { - "base": "Returned if the specified FileSystemId
value doesn't exist in the requester's AWS account.
Returned if the specified FileSystemId
value doesn't exist in the requester's Amazon Web Services account.
The ID of the AWS KMS CMK that you want to use to protect the encrypted file system. This parameter is only required if you want to use a non-default KMS key. If this parameter is not specified, the default CMK for Amazon EFS is used. This ID can be in one of the following formats:
Key ID - A unique identifier of the key, for example 1234abcd-12ab-34cd-56ef-1234567890ab
.
ARN - An Amazon Resource Name (ARN) for the key, for example arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
.
Key alias - A previously created display name for a key, for example alias/projectKey1
.
Key alias ARN - An ARN for a key alias, for example arn:aws:kms:us-west-2:444455556666:alias/projectKey1
.
If KmsKeyId
is specified, the CreateFileSystemRequest$Encrypted parameter must be set to true.
EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS keys with EFS file systems.
The ID of an AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the encrypted file system.
" + "CreateFileSystemRequest$KmsKeyId": "The ID of the KMS CMK that you want to use to protect the encrypted file system. This parameter is only required if you want to use a non-default KMS key. If this parameter is not specified, the default CMK for Amazon EFS is used. This ID can be in one of the following formats:
Key ID - A unique identifier of the key, for example 1234abcd-12ab-34cd-56ef-1234567890ab
.
ARN - An Amazon Resource Name (ARN) for the key, for example arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
.
Key alias - A previously created display name for a key, for example alias/projectKey1
.
Key alias ARN - An ARN for a key alias, for example arn:aws:kms:us-west-2:444455556666:alias/projectKey1
.
If KmsKeyId
is specified, the CreateFileSystemRequest$Encrypted parameter must be set to true.
EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS keys with EFS file systems.
The ID of an Key Management Service customer master key (CMK) that was used to protect the encrypted file system.
" } }, "LifeCycleState": { @@ -506,7 +506,7 @@ "LifecyclePolicies": { "base": null, "refs": { - "LifecycleConfigurationDescription$LifecyclePolicies": "An array of lifecycle management policies. Currently, EFS supports a maximum of one policy per file system.
", + "LifecycleConfigurationDescription$LifecyclePolicies": "An array of lifecycle management policies. EFS supports a maximum of one policy per file system.
", "PutLifecycleConfigurationRequest$LifecyclePolicies": "An array of LifecyclePolicy
objects that define the file system's LifecycleConfiguration
object. A LifecycleConfiguration
object tells lifecycle management when to transition files from the Standard storage class to the Infrequent Access storage class.
(Optional) When retrieving all access points for a file system, you can optionally specify the MaxItems
parameter to limit the number of objects returned in a response. The default value is 100.
(Optional) When retrieving account preferences, you can optionally specify the MaxItems
parameter to limit the number of objects returned in a response. The default value is 100.
(Optional) Specifies the maximum number of tag objects to return in the response. The default value is 100.
" } }, @@ -595,7 +595,7 @@ } }, "MountTargetNotFound": { - "base": "Returned if there is no mount target with the specified ID found in the caller's account.
", + "base": "Returned if there is no mount target with the specified ID found in the caller's Amazon Web Services account.
", "refs": { } }, @@ -612,7 +612,7 @@ } }, "NetworkInterfaceLimitExceeded": { - "base": "The calling account has reached the limit for elastic network interfaces for the specific AWS Region. The client should try to delete some elastic network interfaces or get the account limit raised. For more information, see Amazon VPC Limits in the Amazon VPC User Guide (see the Network interfaces per VPC entry in the table).
", + "base": "The calling account has reached the limit for elastic network interfaces for the specific Amazon Web Services Region. The client should try to delete some elastic network interfaces or get the account limit raised. For more information, see Amazon VPC Limits in the Amazon VPC User Guide (see the Network interfaces per VPC entry in the table).
", "refs": { } }, @@ -674,7 +674,7 @@ "ProvisionedThroughputInMibps": { "base": null, "refs": { - "CreateFileSystemRequest$ProvisionedThroughputInMibps": "The throughput, measured in MiB/s, that you want to provision for a file system that you're creating. Valid values are 1-1024. Required if ThroughputMode
is set to provisioned
. The upper limit for throughput is 1024 MiB/s. To increase this limit, contact AWS Support. For more information, see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.
The throughput, measured in MiB/s, that you want to provision for a file system that you're creating. Valid values are 1-1024. Required if ThroughputMode
is set to provisioned
. The upper limit for throughput is 1024 MiB/s. To increase this limit, contact Amazon Web Services Support. For more information, see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.
The amount of provisioned throughput, measured in MiB/s, for the file system. Valid for file systems using ThroughputMode
set to provisioned
.
(Optional) Sets the amount of provisioned throughput, in MiB/s, for the file system. Valid values are 1-1024. If you are changing the throughput mode to provisioned, you must also provide the amount of provisioned throughput. Required if ThroughputMode
is changed to provisioned
on update.
Describes the resource type and its ID preference for the user's Amazon Web Services account, in the current Amazon Web Services Region.
", "refs": { - "DescribeAccountPreferencesResponse$ResourceIdPreference": null, + "DescribeAccountPreferencesResponse$ResourceIdPreference": "Describes the resource ID preference setting for the Amazon Web Services account associated with the user making the request, in the current Amazon Web Services Region.
", "PutAccountPreferencesResponse$ResourceIdPreference": null } }, "ResourceIdType": { "base": "A preference indicating a choice to use 63bit/32bit IDs for all applicable resources.", "refs": { - "PutAccountPreferencesRequest$ResourceIdType": null, - "ResourceIdPreference$ResourceIdType": null + "PutAccountPreferencesRequest$ResourceIdType": "Specifies the EFS resource ID preference to set for the user's Amazon Web Services account, in the current Amazon Web Services Region, either LONG_ID
(17 characters), or SHORT_ID
(8 characters).
Identifies the EFS resource ID preference, either LONG_ID
(17 characters) or SHORT_ID
(8 characters).
Identifies the Amazon EFS resources to which the ID preference setting applies, FILE_SYSTEM
and MOUNT_TARGET
.
The tags associated with the access point, presented as an array of Tag objects.
", - "CreateAccessPointRequest$Tags": "Creates tags associated with the access point. Each tag is a key-value pair.
", - "CreateFileSystemRequest$Tags": "A value that specifies to create one or more tags associated with the file system. Each tag is a user-defined key-value pair. Name your file system on creation by including a \"Key\":\"Name\",\"Value\":\"{value}\"
key-value pair.
Creates tags associated with the access point. Each tag is a key-value pair, each key must be unique. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference Guide.
", + "CreateFileSystemRequest$Tags": "Use to create one or more tags associated with the file system. Each tag is a user-defined key-value pair. Name your file system on creation by including a \"Key\":\"Name\",\"Value\":\"{value}\"
key-value pair. Each key must be unique. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference Guide.
An array of Tag
objects to add. Each Tag
object is a key-value pair.
Returns tags associated with the file system as an array of Tag
objects.
The tags associated with the file system, presented as an array of Tag
objects.
NextToken
is present if the response is paginated. You can use NextMarker
in the subsequent request to fetch the next page of access point descriptions.
Present if there are more access points than returned in the response. You can use the NextMarker in the subsequent request to fetch the additional descriptions.
", - "DescribeAccountPreferencesRequest$NextToken": null, - "DescribeAccountPreferencesResponse$NextToken": null, + "DescribeAccountPreferencesRequest$NextToken": "(Optional) You can use NextToken
in a subsequent request to fetch the next page of Amazon Web Services account preferences if the response payload was paginated.
Present if there are more records than returned in the response. You can use the NextToken
in the subsequent request to fetch the additional descriptions.
(Optional) You can use NextToken
in a subsequent request to fetch the next page of access point descriptions if the response payload was paginated.
NextToken
is present if the response payload is paginated. You can use NextToken
in a subsequent request to fetch the next page of access point descriptions.
A value that describes the period of time that a file is not accessed, after which it transitions to the IA storage class. Metadata operations such as listing the contents of a directory don't count as file access events.
" + "LifecyclePolicy$TransitionToIA": "Describes the period of time that a file is not accessed, after which it transitions to the IA storage class. Metadata operations such as listing the contents of a directory don't count as file access events.
" + } + }, + "TransitionToPrimaryStorageClassRules": { + "base": null, + "refs": { + "LifecyclePolicy$TransitionToPrimaryStorageClass": "Describes the policy used to transition a file from infequent access storage to primary storage.
" } }, "Uid": { @@ -902,7 +908,7 @@ } }, "ValidationException": { - "base": "Returned if the AWS Backup service is not available in the Region in which the request was made.
", + "base": "Returned if the Backup service is not available in the Amazon Web Services Region in which the request was made.
", "refs": { } }, diff --git a/models/apis/fsx/2018-03-01/api-2.json b/models/apis/fsx/2018-03-01/api-2.json index 6d354ea415c..f8bae20e685 100644 --- a/models/apis/fsx/2018-03-01/api-2.json +++ b/models/apis/fsx/2018-03-01/api-2.json @@ -79,6 +79,7 @@ {"shape":"BadRequest"}, {"shape":"UnsupportedOperation"}, {"shape":"FileSystemNotFound"}, + {"shape":"VolumeNotFound"}, {"shape":"BackupInProgress"}, {"shape":"IncompatibleParameterError"}, {"shape":"ServiceLimitExceeded"}, @@ -146,6 +147,62 @@ {"shape":"MissingFileSystemConfiguration"} ] }, + "CreateStorageVirtualMachine":{ + "name":"CreateStorageVirtualMachine", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateStorageVirtualMachineRequest"}, + "output":{"shape":"CreateStorageVirtualMachineResponse"}, + "errors":[ + {"shape":"ActiveDirectoryError"}, + {"shape":"BadRequest"}, + {"shape":"FileSystemNotFound"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"ServiceLimitExceeded"}, + {"shape":"UnsupportedOperation"} + ] + }, + "CreateVolume":{ + "name":"CreateVolume", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateVolumeRequest"}, + "output":{"shape":"CreateVolumeResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"FileSystemNotFound"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"MissingVolumeConfiguration"}, + {"shape":"ServiceLimitExceeded"}, + {"shape":"StorageVirtualMachineNotFound"}, + {"shape":"UnsupportedOperation"} + ] + }, + "CreateVolumeFromBackup":{ + "name":"CreateVolumeFromBackup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateVolumeFromBackupRequest"}, + "output":{"shape":"CreateVolumeFromBackupResponse"}, + "errors":[ + {"shape":"BackupNotFound"}, + {"shape":"BadRequest"}, + {"shape":"FileSystemNotFound"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"MissingVolumeConfiguration"}, + {"shape":"ServiceLimitExceeded"}, + {"shape":"StorageVirtualMachineNotFound"} + ] + }, "DeleteBackup":{ "name":"DeleteBackup", "http":{ @@ -182,6 +239,36 @@ ], "idempotent":true }, + "DeleteStorageVirtualMachine":{ + "name":"DeleteStorageVirtualMachine", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteStorageVirtualMachineRequest"}, + "output":{"shape":"DeleteStorageVirtualMachineResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"StorageVirtualMachineNotFound"} + ] + }, + "DeleteVolume":{ + "name":"DeleteVolume", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteVolumeRequest"}, + "output":{"shape":"DeleteVolumeResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"VolumeNotFound"} + ] + }, "DescribeBackups":{ "name":"DescribeBackups", "http":{ @@ -193,6 +280,7 @@ "errors":[ {"shape":"BadRequest"}, {"shape":"FileSystemNotFound"}, + {"shape":"VolumeNotFound"}, {"shape":"BackupNotFound"}, {"shape":"InternalServerError"} ] @@ -240,6 +328,34 @@ {"shape":"InternalServerError"} ] }, + "DescribeStorageVirtualMachines":{ + "name":"DescribeStorageVirtualMachines", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeStorageVirtualMachinesRequest"}, + "output":{"shape":"DescribeStorageVirtualMachinesResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"InternalServerError"}, + {"shape":"StorageVirtualMachineNotFound"} + ] + }, + "DescribeVolumes":{ + "name":"DescribeVolumes", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeVolumesRequest"}, + "output":{"shape":"DescribeVolumesResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"InternalServerError"}, + {"shape":"VolumeNotFound"} + ] + }, "DisassociateFileSystemAliases":{ "name":"DisassociateFileSystemAliases", "http":{ @@ -321,6 +437,38 @@ {"shape":"MissingFileSystemConfiguration"}, {"shape":"ServiceLimitExceeded"} ] + }, + "UpdateStorageVirtualMachine":{ + "name":"UpdateStorageVirtualMachine", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateStorageVirtualMachineRequest"}, + "output":{"shape":"UpdateStorageVirtualMachineResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"StorageVirtualMachineNotFound"}, + {"shape":"UnsupportedOperation"} + ] + }, + "UpdateVolume":{ + "name":"UpdateVolume", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateVolumeRequest"}, + "output":{"shape":"UpdateVolumeResponse"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"IncompatibleParameterError"}, + {"shape":"InternalServerError"}, + {"shape":"MissingVolumeConfiguration"}, + {"shape":"VolumeNotFound"} + ] } }, "shapes":{ @@ -363,6 +511,13 @@ "min":1, "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,255}$" }, + "AdminPassword":{ + "type":"string", + "max":50, + "min":8, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{8,50}$", + "sensitive":true + }, "AdministrativeAction":{ "type":"structure", "members":{ @@ -371,7 +526,8 @@ "RequestTime":{"shape":"RequestTime"}, "Status":{"shape":"Status"}, "TargetFileSystemValues":{"shape":"FileSystem"}, - "FailureDetails":{"shape":"AdministrativeActionFailureDetails"} + "FailureDetails":{"shape":"AdministrativeActionFailureDetails"}, + "TargetVolumeValues":{"shape":"Volume"} } }, "AdministrativeActionFailureDetails":{ @@ -490,7 +646,9 @@ "DirectoryInformation":{"shape":"ActiveDirectoryBackupAttributes"}, "OwnerId":{"shape":"AWSAccountId"}, "SourceBackupId":{"shape":"BackupId"}, - "SourceBackupRegion":{"shape":"Region"} + "SourceBackupRegion":{"shape":"Region"}, + "ResourceType":{"shape":"ResourceType"}, + "Volume":{"shape":"Volume"} } }, "BackupBeingCopied":{ @@ -602,6 +760,11 @@ "Scope":{"shape":"ReportScope"} } }, + "CoolingPeriod":{ + "type":"integer", + "max":183, + "min":2 + }, "CopyBackupRequest":{ "type":"structure", "required":["SourceBackupId"], @@ -625,14 +788,14 @@ }, "CreateBackupRequest":{ "type":"structure", - "required":["FileSystemId"], "members":{ "FileSystemId":{"shape":"FileSystemId"}, "ClientRequestToken":{ "shape":"ClientRequestToken", "idempotencyToken":true }, - "Tags":{"shape":"Tags"} + "Tags":{"shape":"Tags"}, + "VolumeId":{"shape":"VolumeId"} } }, "CreateBackupResponse":{ @@ -710,6 +873,25 @@ "DataCompressionType":{"shape":"DataCompressionType"} } }, + "CreateFileSystemOntapConfiguration":{ + "type":"structure", + "required":[ + "DeploymentType", + "ThroughputCapacity" + ], + "members":{ + "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"}, + "DailyAutomaticBackupStartTime":{"shape":"DailyTime"}, + "DeploymentType":{"shape":"OntapDeploymentType"}, + "EndpointIpAddressRange":{"shape":"IpAddressRange"}, + "FsxAdminPassword":{"shape":"AdminPassword"}, + "DiskIopsConfiguration":{"shape":"DiskIopsConfiguration"}, + "PreferredSubnetId":{"shape":"SubnetId"}, + "RouteTableIds":{"shape":"RouteTableIds"}, + "ThroughputCapacity":{"shape":"MegabytesPerSecond"}, + "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"} + } + }, "CreateFileSystemRequest":{ "type":"structure", "required":[ @@ -730,7 +912,8 @@ "Tags":{"shape":"Tags"}, "KmsKeyId":{"shape":"KmsKeyId"}, "WindowsConfiguration":{"shape":"CreateFileSystemWindowsConfiguration"}, - "LustreConfiguration":{"shape":"CreateFileSystemLustreConfiguration"} + "LustreConfiguration":{"shape":"CreateFileSystemLustreConfiguration"}, + "OntapConfiguration":{"shape":"CreateFileSystemOntapConfiguration"} } }, "CreateFileSystemResponse":{ @@ -756,6 +939,102 @@ "AuditLogConfiguration":{"shape":"WindowsAuditLogCreateConfiguration"} } }, + "CreateOntapVolumeConfiguration":{ + "type":"structure", + "required":[ + "JunctionPath", + "SizeInMegabytes", + "StorageEfficiencyEnabled", + "StorageVirtualMachineId" + ], + "members":{ + "JunctionPath":{"shape":"JunctionPath"}, + "SecurityStyle":{"shape":"SecurityStyle"}, + "SizeInMegabytes":{"shape":"VolumeCapacity"}, + "StorageEfficiencyEnabled":{"shape":"Flag"}, + "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"}, + "TieringPolicy":{"shape":"TieringPolicy"} + } + }, + "CreateStorageVirtualMachineRequest":{ + "type":"structure", + "required":[ + "FileSystemId", + "Name" + ], + "members":{ + "ActiveDirectoryConfiguration":{"shape":"CreateSvmActiveDirectoryConfiguration"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "FileSystemId":{"shape":"FileSystemId"}, + "Name":{"shape":"StorageVirtualMachineName"}, + "SvmAdminPassword":{"shape":"AdminPassword"}, + "Tags":{"shape":"Tags"}, + "RootVolumeSecurityStyle":{"shape":"StorageVirtualMachineRootVolumeSecurityStyle"} + } + }, + "CreateStorageVirtualMachineResponse":{ + "type":"structure", + "members":{ + "StorageVirtualMachine":{"shape":"StorageVirtualMachine"} + } + }, + "CreateSvmActiveDirectoryConfiguration":{ + "type":"structure", + "required":["NetBiosName"], + "members":{ + "NetBiosName":{"shape":"NetBiosAlias"}, + "SelfManagedActiveDirectoryConfiguration":{"shape":"SelfManagedActiveDirectoryConfiguration"} + } + }, + "CreateVolumeFromBackupRequest":{ + "type":"structure", + "required":[ + "BackupId", + "Name" + ], + "members":{ + "BackupId":{"shape":"BackupId"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "Name":{"shape":"VolumeName"}, + "OntapConfiguration":{"shape":"CreateOntapVolumeConfiguration"}, + "Tags":{"shape":"Tags"} + } + }, + "CreateVolumeFromBackupResponse":{ + "type":"structure", + "members":{ + "Volume":{"shape":"Volume"} + } + }, + "CreateVolumeRequest":{ + "type":"structure", + "required":[ + "VolumeType", + "Name" + ], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "VolumeType":{"shape":"VolumeType"}, + "Name":{"shape":"VolumeName"}, + "OntapConfiguration":{"shape":"CreateOntapVolumeConfiguration"}, + "Tags":{"shape":"Tags"} + } + }, + "CreateVolumeResponse":{ + "type":"structure", + "members":{ + "Volume":{"shape":"Volume"} + } + }, "CreationTime":{"type":"timestamp"}, "DNSName":{ "type":"string", @@ -993,6 +1272,58 @@ "FinalBackupTags":{"shape":"Tags"} } }, + "DeleteStorageVirtualMachineRequest":{ + "type":"structure", + "required":["StorageVirtualMachineId"], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"} + } + }, + "DeleteStorageVirtualMachineResponse":{ + "type":"structure", + "members":{ + "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"}, + "Lifecycle":{"shape":"StorageVirtualMachineLifecycle"} + } + }, + "DeleteVolumeOntapConfiguration":{ + "type":"structure", + "members":{ + "SkipFinalBackup":{"shape":"Flag"}, + "FinalBackupTags":{"shape":"Tags"} + } + }, + "DeleteVolumeOntapResponse":{ + "type":"structure", + "members":{ + "FinalBackupId":{"shape":"BackupId"}, + "FinalBackupTags":{"shape":"Tags"} + } + }, + "DeleteVolumeRequest":{ + "type":"structure", + "required":["VolumeId"], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "VolumeId":{"shape":"VolumeId"}, + "OntapConfiguration":{"shape":"DeleteVolumeOntapConfiguration"} + } + }, + "DeleteVolumeResponse":{ + "type":"structure", + "members":{ + "VolumeId":{"shape":"VolumeId"}, + "Lifecycle":{"shape":"VolumeLifecycle"}, + "OntapResponse":{"shape":"DeleteVolumeOntapResponse"} + } + }, "DescribeBackupsRequest":{ "type":"structure", "members":{ @@ -1060,6 +1391,38 @@ "NextToken":{"shape":"NextToken"} } }, + "DescribeStorageVirtualMachinesRequest":{ + "type":"structure", + "members":{ + "StorageVirtualMachineIds":{"shape":"StorageVirtualMachineIds"}, + "Filters":{"shape":"StorageVirtualMachineFilters"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeStorageVirtualMachinesResponse":{ + "type":"structure", + "members":{ + "StorageVirtualMachines":{"shape":"StorageVirtualMachines"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeVolumesRequest":{ + "type":"structure", + "members":{ + "VolumeIds":{"shape":"VolumeIds"}, + "Filters":{"shape":"VolumeFilters"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeVolumesResponse":{ + "type":"structure", + "members":{ + "Volumes":{"shape":"Volumes"}, + "NextToken":{"shape":"NextToken"} + } + }, "DirectoryId":{ "type":"string", "max":12, @@ -1100,10 +1463,24 @@ "Aliases":{"shape":"Aliases"} } }, + "DiskIopsConfiguration":{ + "type":"structure", + "members":{ + "Mode":{"shape":"DiskIopsConfigurationMode"}, + "Iops":{"shape":"Iops"} + } + }, + "DiskIopsConfigurationMode":{ + "type":"string", + "enum":[ + "AUTOMATIC", + "USER_PROVISIONED" + ] + }, "DnsIps":{ "type":"list", "member":{"shape":"IpAddress"}, - "max":2, + "max":3, "min":1 }, "DriveCacheType":{ @@ -1140,7 +1517,8 @@ "Tags":{"shape":"Tags"}, "WindowsConfiguration":{"shape":"WindowsFileSystemConfiguration"}, "LustreConfiguration":{"shape":"LustreFileSystemConfiguration"}, - "AdministrativeActions":{"shape":"AdministrativeActions"} + "AdministrativeActions":{"shape":"AdministrativeActions"}, + "OntapConfiguration":{"shape":"OntapFileSystemConfiguration"} } }, "FileSystemAdministratorsGroupName":{ @@ -1149,6 +1527,20 @@ "min":1, "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,256}$" }, + "FileSystemEndpoint":{ + "type":"structure", + "members":{ + "DNSName":{"shape":"DNSName"}, + "IpAddresses":{"shape":"OntapEndpointIpAddresses"} + } + }, + "FileSystemEndpoints":{ + "type":"structure", + "members":{ + "Intercluster":{"shape":"FileSystemEndpoint"}, + "Management":{"shape":"FileSystemEndpoint"} + } + }, "FileSystemFailureDetails":{ "type":"structure", "members":{ @@ -1200,7 +1592,8 @@ "type":"string", "enum":[ "WINDOWS", - "LUSTRE" + "LUSTRE", + "ONTAP" ] }, "FileSystems":{ @@ -1220,7 +1613,8 @@ "enum":[ "file-system-id", "backup-type", - "file-system-type" + "file-system-type", + "volume-id" ] }, "FilterValue":{ @@ -1240,6 +1634,14 @@ "max":10 }, "Flag":{"type":"boolean"}, + "FlexCacheEndpointType":{ + "type":"string", + "enum":[ + "NONE", + "ORIGIN", + "CACHE" + ] + }, "GeneralARN":{ "type":"string", "max":1024, @@ -1296,7 +1698,8 @@ "members":{ "Message":{"shape":"ErrorMessage"}, "InvalidSubnetId":{"shape":"SubnetId"}, - "InvalidSecurityGroupId":{"shape":"SecurityGroupId"} + "InvalidSecurityGroupId":{"shape":"SecurityGroupId"}, + "InvalidRouteTableId":{"shape":"RouteTableId"} }, "exception":true }, @@ -1321,12 +1724,29 @@ }, "exception":true }, + "Iops":{ + "type":"long", + "max":80000, + "min":0 + }, "IpAddress":{ "type":"string", "max":15, "min":7, "pattern":"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" }, + "IpAddressRange":{ + "type":"string", + "max":17, + "min":9, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{9,17}$" + }, + "JunctionPath":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,255}$" + }, "KmsKeyId":{ "type":"string", "max":2048, @@ -1334,6 +1754,12 @@ "pattern":"^.{1,2048}$" }, "LastUpdatedTime":{"type":"timestamp"}, + "LifecycleTransitionReason":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + } + }, "ListTagsForResourceRequest":{ "type":"structure", "required":["ResourceARN"], @@ -1401,6 +1827,19 @@ }, "exception":true }, + "MissingVolumeConfiguration":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "NetBiosAlias":{ + "type":"string", + "max":15, + "min":1, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,255}$" + }, "NetworkInterfaceId":{ "type":"string", "max":21, @@ -1427,6 +1866,54 @@ }, "exception":true }, + "OntapDeploymentType":{ + "type":"string", + "enum":["MULTI_AZ_1"] + }, + "OntapEndpointIpAddresses":{ + "type":"list", + "member":{"shape":"IpAddress"}, + "max":2, + "min":1 + }, + "OntapFileSystemConfiguration":{ + "type":"structure", + "members":{ + "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"}, + "DailyAutomaticBackupStartTime":{"shape":"DailyTime"}, + "DeploymentType":{"shape":"OntapDeploymentType"}, + "EndpointIpAddressRange":{"shape":"IpAddressRange"}, + "Endpoints":{"shape":"FileSystemEndpoints"}, + "DiskIopsConfiguration":{"shape":"DiskIopsConfiguration"}, + "PreferredSubnetId":{"shape":"SubnetId"}, + "RouteTableIds":{"shape":"RouteTableIds"}, + "ThroughputCapacity":{"shape":"MegabytesPerSecond"}, + "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"} + } + }, + "OntapVolumeConfiguration":{ + "type":"structure", + "members":{ + "FlexCacheEndpointType":{"shape":"FlexCacheEndpointType"}, + "JunctionPath":{"shape":"JunctionPath"}, + "SecurityStyle":{"shape":"SecurityStyle"}, + "SizeInMegabytes":{"shape":"VolumeCapacity"}, + "StorageEfficiencyEnabled":{"shape":"Flag"}, + "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"}, + "StorageVirtualMachineRoot":{"shape":"Flag"}, + "TieringPolicy":{"shape":"TieringPolicy"}, + "UUID":{"shape":"UUID"}, + "OntapVolumeType":{"shape":"OntapVolumeType"} + } + }, + "OntapVolumeType":{ + "type":"string", + "enum":[ + "RW", + "DP", + "LS" + ] + }, "OrganizationalUnitDistinguishedName":{ "type":"string", "max":2000, @@ -1486,6 +1973,24 @@ }, "exception":true }, + "ResourceType":{ + "type":"string", + "enum":[ + "FILE_SYSTEM", + "VOLUME" + ] + }, + "RouteTableId":{ + "type":"string", + "max":21, + "min":12, + "pattern":"^(rtb-[0-9a-f]{8,})$" + }, + "RouteTableIds":{ + "type":"list", + "member":{"shape":"RouteTableId"}, + "max":50 + }, "SecurityGroupId":{ "type":"string", "max":20, @@ -1497,6 +2002,14 @@ "member":{"shape":"SecurityGroupId"}, "max":50 }, + "SecurityStyle":{ + "type":"string", + "enum":[ + "UNIX", + "NTFS", + "MIXED" + ] + }, "SelfManagedActiveDirectoryAttributes":{ "type":"structure", "members":{ @@ -1540,7 +2053,10 @@ "TOTAL_STORAGE", "TOTAL_USER_INITIATED_BACKUPS", "TOTAL_USER_TAGS", - "TOTAL_IN_PROGRESS_COPY_BACKUPS" + "TOTAL_IN_PROGRESS_COPY_BACKUPS", + "STORAGE_VIRTUAL_MACHINES_PER_FILE_SYSTEM", + "VOLUMES_PER_FILE_SYSTEM", + "TOTAL_SSD_IOPS" ] }, "ServiceLimitExceeded":{ @@ -1589,6 +2105,108 @@ "HDD" ] }, + "StorageVirtualMachine":{ + "type":"structure", + "members":{ + "ActiveDirectoryConfiguration":{"shape":"SvmActiveDirectoryConfiguration"}, + "CreationTime":{"shape":"CreationTime"}, + "Endpoints":{"shape":"SvmEndpoints"}, + "FileSystemId":{"shape":"FileSystemId"}, + "Lifecycle":{"shape":"StorageVirtualMachineLifecycle"}, + "Name":{"shape":"StorageVirtualMachineName"}, + "ResourceARN":{"shape":"ResourceARN"}, + "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"}, + "Subtype":{"shape":"StorageVirtualMachineSubtype"}, + "UUID":{"shape":"UUID"}, + "Tags":{"shape":"Tags"}, + "LifecycleTransitionReason":{"shape":"LifecycleTransitionReason"}, + "RootVolumeSecurityStyle":{"shape":"StorageVirtualMachineRootVolumeSecurityStyle"} + } + }, + "StorageVirtualMachineFilter":{ + "type":"structure", + "members":{ + "Name":{"shape":"StorageVirtualMachineFilterName"}, + "Values":{"shape":"StorageVirtualMachineFilterValues"} + } + }, + "StorageVirtualMachineFilterName":{ + "type":"string", + "enum":["file-system-id"] + }, + "StorageVirtualMachineFilterValue":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[0-9a-zA-Z\\*\\.\\\\/\\?\\-\\_]*$" + }, + "StorageVirtualMachineFilterValues":{ + "type":"list", + "member":{"shape":"StorageVirtualMachineFilterValue"}, + "max":20 + }, + "StorageVirtualMachineFilters":{ + "type":"list", + "member":{"shape":"StorageVirtualMachineFilter"}, + "max":1 + }, + "StorageVirtualMachineId":{ + "type":"string", + "max":21, + "min":21, + "pattern":"^(svm-[0-9a-f]{17,})$" + }, + "StorageVirtualMachineIds":{ + "type":"list", + "member":{"shape":"StorageVirtualMachineId"}, + "max":50 + }, + "StorageVirtualMachineLifecycle":{ + "type":"string", + "enum":[ + "CREATED", + "CREATING", + "DELETING", + "FAILED", + "MISCONFIGURED", + "PENDING" + ] + }, + "StorageVirtualMachineName":{ + "type":"string", + "max":47, + "min":1, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,47}$" + }, + "StorageVirtualMachineNotFound":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "StorageVirtualMachineRootVolumeSecurityStyle":{ + "type":"string", + "enum":[ + "UNIX", + "NTFS", + "MIXED" + ] + }, + "StorageVirtualMachineSubtype":{ + "type":"string", + "enum":[ + "DEFAULT", + "DP_DESTINATION", + "SYNC_DESTINATION", + "SYNC_SOURCE" + ] + }, + "StorageVirtualMachines":{ + "type":"list", + "member":{"shape":"StorageVirtualMachine"}, + "max":50 + }, "SubnetId":{ "type":"string", "max":24, @@ -1601,6 +2219,29 @@ "max":50 }, "SucceededCount":{"type":"long"}, + "SvmActiveDirectoryConfiguration":{ + "type":"structure", + "members":{ + "NetBiosName":{"shape":"NetBiosAlias"}, + "SelfManagedActiveDirectoryConfiguration":{"shape":"SelfManagedActiveDirectoryAttributes"} + } + }, + "SvmEndpoint":{ + "type":"structure", + "members":{ + "DNSName":{"shape":"DNSName"}, + "IpAddresses":{"shape":"OntapEndpointIpAddresses"} + } + }, + "SvmEndpoints":{ + "type":"structure", + "members":{ + "Iscsi":{"shape":"SvmEndpoint"}, + "Management":{"shape":"SvmEndpoint"}, + "Nfs":{"shape":"SvmEndpoint"}, + "Smb":{"shape":"SvmEndpoint"} + } + }, "Tag":{ "type":"structure", "required":[ @@ -1663,7 +2304,28 @@ "member":{"shape":"TaskId"}, "max":50 }, + "TieringPolicy":{ + "type":"structure", + "members":{ + "CoolingPeriod":{"shape":"CoolingPeriod"}, + "Name":{"shape":"TieringPolicyName"} + } + }, + "TieringPolicyName":{ + "type":"string", + "enum":[ + "SNAPSHOT_ONLY", + "AUTO", + "ALL", + "NONE" + ] + }, "TotalCount":{"type":"long"}, + "UUID":{ + "type":"string", + "max":36, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,36}$" + }, "UnsupportedOperation":{ "type":"structure", "members":{ @@ -1697,6 +2359,15 @@ "DataCompressionType":{"shape":"DataCompressionType"} } }, + "UpdateFileSystemOntapConfiguration":{ + "type":"structure", + "members":{ + "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"}, + "DailyAutomaticBackupStartTime":{"shape":"DailyTime"}, + "FsxAdminPassword":{"shape":"AdminPassword"}, + "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"} + } + }, "UpdateFileSystemRequest":{ "type":"structure", "required":["FileSystemId"], @@ -1708,7 +2379,8 @@ }, "StorageCapacity":{"shape":"StorageCapacity"}, "WindowsConfiguration":{"shape":"UpdateFileSystemWindowsConfiguration"}, - "LustreConfiguration":{"shape":"UpdateFileSystemLustreConfiguration"} + "LustreConfiguration":{"shape":"UpdateFileSystemLustreConfiguration"}, + "OntapConfiguration":{"shape":"UpdateFileSystemOntapConfiguration"} } }, "UpdateFileSystemResponse":{ @@ -1728,6 +2400,153 @@ "AuditLogConfiguration":{"shape":"WindowsAuditLogCreateConfiguration"} } }, + "UpdateOntapVolumeConfiguration":{ + "type":"structure", + "members":{ + "JunctionPath":{"shape":"JunctionPath"}, + "SecurityStyle":{"shape":"SecurityStyle"}, + "SizeInMegabytes":{"shape":"VolumeCapacity"}, + "StorageEfficiencyEnabled":{"shape":"Flag"}, + "TieringPolicy":{"shape":"TieringPolicy"} + } + }, + "UpdateStorageVirtualMachineRequest":{ + "type":"structure", + "required":["StorageVirtualMachineId"], + "members":{ + "ActiveDirectoryConfiguration":{"shape":"UpdateSvmActiveDirectoryConfiguration"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "StorageVirtualMachineId":{"shape":"StorageVirtualMachineId"}, + "SvmAdminPassword":{"shape":"AdminPassword"} + } + }, + "UpdateStorageVirtualMachineResponse":{ + "type":"structure", + "members":{ + "StorageVirtualMachine":{"shape":"StorageVirtualMachine"} + } + }, + "UpdateSvmActiveDirectoryConfiguration":{ + "type":"structure", + "members":{ + "SelfManagedActiveDirectoryConfiguration":{"shape":"SelfManagedActiveDirectoryConfigurationUpdates"} + } + }, + "UpdateVolumeRequest":{ + "type":"structure", + "required":["VolumeId"], + "members":{ + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "VolumeId":{"shape":"VolumeId"}, + "OntapConfiguration":{"shape":"UpdateOntapVolumeConfiguration"} + } + }, + "UpdateVolumeResponse":{ + "type":"structure", + "members":{ + "Volume":{"shape":"Volume"} + } + }, + "Volume":{ + "type":"structure", + "members":{ + "CreationTime":{"shape":"CreationTime"}, + "FileSystemId":{"shape":"FileSystemId"}, + "Lifecycle":{"shape":"VolumeLifecycle"}, + "Name":{"shape":"VolumeName"}, + "OntapConfiguration":{"shape":"OntapVolumeConfiguration"}, + "ResourceARN":{"shape":"ResourceARN"}, + "Tags":{"shape":"Tags"}, + "VolumeId":{"shape":"VolumeId"}, + "VolumeType":{"shape":"VolumeType"}, + "LifecycleTransitionReason":{"shape":"LifecycleTransitionReason"} + } + }, + "VolumeCapacity":{ + "type":"integer", + "max":2147483647, + "min":0 + }, + "VolumeFilter":{ + "type":"structure", + "members":{ + "Name":{"shape":"VolumeFilterName"}, + "Values":{"shape":"VolumeFilterValues"} + } + }, + "VolumeFilterName":{ + "type":"string", + "enum":[ + "file-system-id", + "storage-virtual-machine-id" + ] + }, + "VolumeFilterValue":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[0-9a-zA-Z\\*\\.\\\\/\\?\\-\\_]*$" + }, + "VolumeFilterValues":{ + "type":"list", + "member":{"shape":"VolumeFilterValue"}, + "max":20 + }, + "VolumeFilters":{ + "type":"list", + "member":{"shape":"VolumeFilter"}, + "max":2 + }, + "VolumeId":{ + "type":"string", + "max":23, + "min":23, + "pattern":"^(fsvol-[0-9a-f]{17,})$" + }, + "VolumeIds":{ + "type":"list", + "member":{"shape":"VolumeId"}, + "max":50 + }, + "VolumeLifecycle":{ + "type":"string", + "enum":[ + "CREATING", + "CREATED", + "DELETING", + "FAILED", + "MISCONFIGURED", + "PENDING" + ] + }, + "VolumeName":{ + "type":"string", + "max":203, + "min":1, + "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{1,203}$" + }, + "VolumeNotFound":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "VolumeType":{ + "type":"string", + "enum":["ONTAP"] + }, + "Volumes":{ + "type":"list", + "member":{"shape":"Volume"}, + "max":50 + }, "VpcId":{ "type":"string", "max":21, diff --git a/models/apis/fsx/2018-03-01/docs-2.json b/models/apis/fsx/2018-03-01/docs-2.json index a2b6d6675d2..5d59649afb8 100644 --- a/models/apis/fsx/2018-03-01/docs-2.json +++ b/models/apis/fsx/2018-03-01/docs-2.json @@ -2,31 +2,40 @@ "version": "2.0", "service": "Amazon FSx is a fully managed service that makes it easy for storage and application administrators to launch and use shared file storage.
", "operations": { - "AssociateFileSystemAliases": "Use this action to associate one or more Domain Name Server (DNS) aliases with an existing Amazon FSx for Windows File Server file system. A file systen can have a maximum of 50 DNS aliases associated with it at any one time. If you try to associate a DNS alias that is already associated with the file system, FSx takes no action on that alias in the request. For more information, see Working with DNS Aliases and Walkthrough 5: Using DNS aliases to access your file system, including additional steps you must take to be able to access your file system using a DNS alias.
The system response shows the DNS aliases that Amazon FSx is attempting to associate with the file system. Use the API operation to monitor the status of the aliases Amazon FSx is associating with the file system.
", + "AssociateFileSystemAliases": "Use this action to associate one or more Domain Name Server (DNS) aliases with an existing Amazon FSx for Windows File Server file system. A file system can have a maximum of 50 DNS aliases associated with it at any one time. If you try to associate a DNS alias that is already associated with the file system, FSx takes no action on that alias in the request. For more information, see Working with DNS Aliases and Walkthrough 5: Using DNS aliases to access your file system, including additional steps you must take to be able to access your file system using a DNS alias.
The system response shows the DNS aliases that Amazon FSx is attempting to associate with the file system. Use the API operation to monitor the status of the aliases Amazon FSx is associating with the file system.
", "CancelDataRepositoryTask": "Cancels an existing Amazon FSx for Lustre data repository task if that task is in either the PENDING
or EXECUTING
state. When you cancel a task, Amazon FSx does the following.
Any files that FSx has already exported are not reverted.
FSx continues to export any files that are \"in-flight\" when the cancel operation is received.
FSx does not export any files that have not yet been exported.
Copies an existing backup within the same AWS account to another Region (cross-Region copy) or within the same Region (in-Region copy). You can have up to five backup copy requests in progress to a single destination Region per account.
You can use cross-Region backup copies for cross-region disaster recovery. You periodically take backups and copy them to another Region so that in the event of a disaster in the primary Region, you can restore from backup and recover availability quickly in the other Region. You can make cross-Region copies only within your AWS partition.
You can also use backup copies to clone your file data set to another Region or within the same Region.
You can use the SourceRegion
parameter to specify the AWS Region from which the backup will be copied. For example, if you make the call from the us-west-1
Region and want to copy a backup from the us-east-2
Region, you specify us-east-2
in the SourceRegion
parameter to make a cross-Region copy. If you don't specify a Region, the backup copy is created in the same Region where the request is sent from (in-Region copy).
For more information on creating backup copies, see Copying backups in the Amazon FSx for Windows User Guide and Copying backups in the Amazon FSx for Lustre User Guide.
", - "CreateBackup": "Creates a backup of an existing Amazon FSx file system. Creating regular backups for your file system is a best practice, enabling you to restore a file system from a backup if an issue arises with the original file system.
For Amazon FSx for Lustre file systems, you can create a backup only for file systems with the following configuration:
a Persistent deployment type
is not linked to a data respository.
For more information about backing up Amazon FSx for Lustre file systems, see Working with FSx for Lustre backups.
For more information about backing up Amazon FSx for Windows file systems, see Working with FSx for Windows backups.
If a backup with the specified client request token exists, and the parameters match, this operation returns the description of the existing backup. If a backup specified client request token exists, and the parameters don't match, this operation returns IncompatibleParameterError
. If a backup with the specified client request token doesn't exist, CreateBackup
does the following:
Creates a new Amazon FSx backup with an assigned ID, and an initial lifecycle state of CREATING
.
Returns the description of the backup.
By using the idempotent operation, you can retry a CreateBackup
operation without the risk of creating an extra backup. This approach can be useful when an initial call fails in a way that makes it unclear whether a backup was created. If you use the same client request token and the initial call created a backup, the operation returns a successful result because all the parameters are the same.
The CreateBackup
operation returns while the backup's lifecycle state is still CREATING
. You can check the backup creation status by calling the DescribeBackups operation, which returns the backup state along with other information.
Copies an existing backup within the same Amazon Web Services account to another Amazon Web Services Region (cross-Region copy) or within the same Amazon Web Services Region (in-Region copy). You can have up to five backup copy requests in progress to a single destination Region per account.
You can use cross-Region backup copies for cross-region disaster recovery. You periodically take backups and copy them to another Region so that in the event of a disaster in the primary Region, you can restore from backup and recover availability quickly in the other Region. You can make cross-Region copies only within your Amazon Web Services partition.
You can also use backup copies to clone your file data set to another Region or within the same Region.
You can use the SourceRegion
parameter to specify the Amazon Web Services Region from which the backup will be copied. For example, if you make the call from the us-west-1
Region and want to copy a backup from the us-east-2
Region, you specify us-east-2
in the SourceRegion
parameter to make a cross-Region copy. If you don't specify a Region, the backup copy is created in the same Region where the request is sent from (in-Region copy).
For more information on creating backup copies, see Copying backups in the Amazon FSx for Windows User Guide and Copying backups in the Amazon FSx for Lustre User Guide.
", + "CreateBackup": "Creates a backup of an existing Amazon FSx for Windows File Server or Amazon FSx for Lustre file system, or of an Amazon FSx for NetApp ONTAP volume. Creating regular backups is a best practice, enabling you to restore a file system or volume from a backup if an issue arises with the original file system or volume.
For Amazon FSx for Lustre file systems, you can create a backup only for file systems with the following configuration:
a Persistent deployment type
is not linked to a data repository.
For more information about backups, see the following:
For Amazon FSx for Lustre, see Working with FSx for Lustre backups.
For Amazon FSx for Windows, see Working with FSx for Windows backups.
For Amazon FSx for NetApp ONTAP, see Working with FSx for NetApp ONTAP backups.
If a backup with the specified client request token exists, and the parameters match, this operation returns the description of the existing backup. If a backup specified client request token exists, and the parameters don't match, this operation returns IncompatibleParameterError
. If a backup with the specified client request token doesn't exist, CreateBackup
does the following:
Creates a new Amazon FSx backup with an assigned ID, and an initial lifecycle state of CREATING
.
Returns the description of the backup.
By using the idempotent operation, you can retry a CreateBackup
operation without the risk of creating an extra backup. This approach can be useful when an initial call fails in a way that makes it unclear whether a backup was created. If you use the same client request token and the initial call created a backup, the operation returns a successful result because all the parameters are the same.
The CreateBackup
operation returns while the backup's lifecycle state is still CREATING
. You can check the backup creation status by calling the DescribeBackups operation, which returns the backup state along with other information.
Creates an Amazon FSx for Lustre data repository task. You use data repository tasks to perform bulk operations between your Amazon FSx file system and its linked data repository. An example of a data repository task is exporting any data and metadata changes, including POSIX metadata, to files, directories, and symbolic links (symlinks) from your FSx file system to its linked data repository. A CreateDataRepositoryTask
operation will fail if a data repository is not linked to the FSx file system. To learn more about data repository tasks, see Data Repository Tasks. To learn more about linking a data repository to your file system, see Linking your file system to an S3 bucket.
Creates a new, empty Amazon FSx file system.
If a file system with the specified client request token exists and the parameters match, CreateFileSystem
returns the description of the existing file system. If a file system specified client request token exists and the parameters don't match, this call returns IncompatibleParameterError
. If a file system with the specified client request token doesn't exist, CreateFileSystem
does the following:
Creates a new, empty Amazon FSx file system with an assigned ID, and an initial lifecycle state of CREATING
.
Returns the description of the file system.
This operation requires a client request token in the request that Amazon FSx uses to ensure idempotent creation. This means that calling the operation multiple times with the same client request token has no effect. By using the idempotent operation, you can retry a CreateFileSystem
operation without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives success as long as the parameters are the same.
The CreateFileSystem
call returns while the file system's lifecycle state is still CREATING
. You can check the file-system creation status by calling the DescribeFileSystems operation, which returns the file system state along with other information.
Creates a new Amazon FSx file system from an existing Amazon FSx backup.
If a file system with the specified client request token exists and the parameters match, this operation returns the description of the file system. If a client request token specified by the file system exists and the parameters don't match, this call returns IncompatibleParameterError
. If a file system with the specified client request token doesn't exist, this operation does the following:
Creates a new Amazon FSx file system from backup with an assigned ID, and an initial lifecycle state of CREATING
.
Returns the description of the file system.
Parameters like Active Directory, default share name, automatic backup, and backup settings default to the parameters of the file system that was backed up, unless overridden. You can explicitly supply other settings.
By using the idempotent operation, you can retry a CreateFileSystemFromBackup
call without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives success as long as the parameters are the same.
The CreateFileSystemFromBackup
call returns while the file system's lifecycle state is still CREATING
. You can check the file-system creation status by calling the DescribeFileSystems operation, which returns the file system state along with other information.
Creates a new Amazon FSx for Lustre or Amazon FSx for Windows File Server file system from an existing Amazon FSx backup.
If a file system with the specified client request token exists and the parameters match, this operation returns the description of the file system. If a client request token specified by the file system exists and the parameters don't match, this call returns IncompatibleParameterError
. If a file system with the specified client request token doesn't exist, this operation does the following:
Creates a new Amazon FSx file system from backup with an assigned ID, and an initial lifecycle state of CREATING
.
Returns the description of the file system.
Parameters like Active Directory, default share name, automatic backup, and backup settings default to the parameters of the file system that was backed up, unless overridden. You can explicitly supply other settings.
By using the idempotent operation, you can retry a CreateFileSystemFromBackup
call without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives success as long as the parameters are the same.
The CreateFileSystemFromBackup
call returns while the file system's lifecycle state is still CREATING
. You can check the file-system creation status by calling the DescribeFileSystems operation, which returns the file system state along with other information.
Creates a storage virtual machine (SVM) for an Amazon FSx for ONTAP file system.
", + "CreateVolume": "Creates an Amazon FSx for NetApp ONTAP storage volume.
", + "CreateVolumeFromBackup": "Creates a new Amazon FSx for NetApp ONTAP volume from an existing Amazon FSx volume backup.
", "DeleteBackup": "Deletes an Amazon FSx backup, deleting its contents. After deletion, the backup no longer exists, and its data is gone.
The DeleteBackup
call returns instantly. The backup will not show up in later DescribeBackups
calls.
The data in a deleted backup is also deleted and can't be recovered by any means.
Deletes a file system, deleting its contents. After deletion, the file system no longer exists, and its data is gone. Any existing automatic backups will also be deleted.
By default, when you delete an Amazon FSx for Windows File Server file system, a final backup is created upon deletion. This final backup is not subject to the file system's retention policy, and must be manually deleted.
The DeleteFileSystem
action returns while the file system has the DELETING
status. You can check the file system deletion status by calling the DescribeFileSystems action, which returns a list of file systems in your account. If you pass the file system ID for a deleted file system, the DescribeFileSystems returns a FileSystemNotFound
error.
Deleting an Amazon FSx for Lustre file system will fail with a 400 BadRequest if a data repository task is in a PENDING
or EXECUTING
state.
The data in a deleted file system is also deleted and can't be recovered by any means.
Returns the description of specific Amazon FSx backups, if a BackupIds
value is provided for that backup. Otherwise, it returns all backups owned by your AWS account in the AWS Region of the endpoint that you're calling.
When retrieving all backups, you can optionally specify the MaxResults
parameter to limit the number of backups in a response. If more backups remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
This action is used in an iterative process to retrieve a list of your backups. DescribeBackups
is called first without a NextToken
value. Then the action continues to be called with the NextToken
parameter set to the value of the last NextToken
value until a response has no NextToken
.
When using this action, keep the following in mind:
The implementation might return fewer than MaxResults
file system descriptions while still including a NextToken
value.
The order of backups returned in the response of one DescribeBackups
call and the order of backups returned across the responses of a multi-call iteration is unspecified.
Returns the description of specific Amazon FSx for Lustre data repository tasks, if one or more TaskIds
values are provided in the request, or if filters are used in the request. You can use filters to narrow the response to include just tasks for specific file systems, or tasks in a specific lifecycle state. Otherwise, it returns all data repository tasks owned by your AWS account in the AWS Region of the endpoint that you're calling.
When retrieving all tasks, you can paginate the response by using the optional MaxResults
parameter to limit the number of tasks returned in a response. If more tasks remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
Deletes a file system, deleting its contents. After deletion, the file system no longer exists, and its data is gone. Any existing automatic backups will also be deleted.
To delete an Amazon FSx for NetApp ONTAP file system, first delete all the volumes and SVMs on the file system. Then provide a FileSystemId
value to the DeleFileSystem
operation.
By default, when you delete an Amazon FSx for Windows File Server file system, a final backup is created upon deletion. This final backup is not subject to the file system's retention policy, and must be manually deleted.
The DeleteFileSystem
action returns while the file system has the DELETING
status. You can check the file system deletion status by calling the DescribeFileSystems action, which returns a list of file systems in your account. If you pass the file system ID for a deleted file system, the DescribeFileSystems returns a FileSystemNotFound
error.
Deleting an Amazon FSx for Lustre file system will fail with a 400 BadRequest if a data repository task is in a PENDING
or EXECUTING
state.
The data in a deleted file system is also deleted and can't be recovered by any means.
Deletes an existing Amazon FSx for ONTAP storage virtual machine (SVM). Prior to deleting an SVM, you must delete all non-root volumes in the SVM, otherwise the operation will fail.
", + "DeleteVolume": "Deletes an Amazon FSx for NetApp ONTAP volume. When deleting a volume, you have the option of creating a final backup. If you create a final backup, you have the option to apply Tags to the backup. You need to have fsx:TagResource
permission in order to apply tags to the backup.
Returns the description of specific Amazon FSx backups, if a BackupIds
value is provided for that backup. Otherwise, it returns all backups owned by your Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.
When retrieving all backups, you can optionally specify the MaxResults
parameter to limit the number of backups in a response. If more backups remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
This action is used in an iterative process to retrieve a list of your backups. DescribeBackups
is called first without a NextToken
value. Then the action continues to be called with the NextToken
parameter set to the value of the last NextToken
value until a response has no NextToken
.
When using this action, keep the following in mind:
The implementation might return fewer than MaxResults
backup descriptions while still including a NextToken
value.
The order of backups returned in the response of one DescribeBackups
call and the order of backups returned across the responses of a multi-call iteration is unspecified.
Returns the description of specific Amazon FSx for Lustre data repository tasks, if one or more TaskIds
values are provided in the request, or if filters are used in the request. You can use filters to narrow the response to include just tasks for specific file systems, or tasks in a specific lifecycle state. Otherwise, it returns all data repository tasks owned by your Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.
When retrieving all tasks, you can paginate the response by using the optional MaxResults
parameter to limit the number of tasks returned in a response. If more tasks remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
Returns the DNS aliases that are associated with the specified Amazon FSx for Windows File Server file system. A history of all DNS aliases that have been associated with and disassociated from the file system is available in the list of AdministrativeAction provided in the DescribeFileSystems operation response.
", - "DescribeFileSystems": "Returns the description of specific Amazon FSx file systems, if a FileSystemIds
value is provided for that file system. Otherwise, it returns descriptions of all file systems owned by your AWS account in the AWS Region of the endpoint that you're calling.
When retrieving all file system descriptions, you can optionally specify the MaxResults
parameter to limit the number of descriptions in a response. If more file system descriptions remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
This action is used in an iterative process to retrieve a list of your file system descriptions. DescribeFileSystems
is called first without a NextToken
value. Then the action continues to be called with the NextToken
parameter set to the value of the last NextToken
value until a response has no NextToken
.
When using this action, keep the following in mind:
The implementation might return fewer than MaxResults
file system descriptions while still including a NextToken
value.
The order of file systems returned in the response of one DescribeFileSystems
call and the order of file systems returned across the responses of a multicall iteration is unspecified.
Returns the description of specific Amazon FSx file systems, if a FileSystemIds
value is provided for that file system. Otherwise, it returns descriptions of all file systems owned by your Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.
When retrieving all file system descriptions, you can optionally specify the MaxResults
parameter to limit the number of descriptions in a response. If more file system descriptions remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
This action is used in an iterative process to retrieve a list of your file system descriptions. DescribeFileSystems
is called first without a NextToken
value. Then the action continues to be called with the NextToken
parameter set to the value of the last NextToken
value until a response has no NextToken
.
When using this action, keep the following in mind:
The implementation might return fewer than MaxResults
file system descriptions while still including a NextToken
value.
The order of file systems returned in the response of one DescribeFileSystems
call and the order of file systems returned across the responses of a multicall iteration is unspecified.
Describes one or more Amazon FSx for NetApp ONTAP storage virtual machines (SVMs).
", + "DescribeVolumes": "Describes one or more Amazon FSx for NetApp ONTAP volumes.
", "DisassociateFileSystemAliases": "Use this action to disassociate, or remove, one or more Domain Name Service (DNS) aliases from an Amazon FSx for Windows File Server file system. If you attempt to disassociate a DNS alias that is not associated with the file system, Amazon FSx responds with a 400 Bad Request. For more information, see Working with DNS Aliases.
The system generated response showing the DNS aliases that Amazon FSx is attempting to disassociate from the file system. Use the API operation to monitor the status of the aliases Amazon FSx is disassociating with the file system.
", "ListTagsForResource": "Lists tags for an Amazon FSx file systems and backups in the case of Amazon FSx for Windows File Server.
When retrieving all tags, you can optionally specify the MaxResults
parameter to limit the number of tags in a response. If more tags remain, Amazon FSx returns a NextToken
value in the response. In this case, send a later request with the NextToken
request parameter set to the value of NextToken
from the last response.
This action is used in an iterative process to retrieve a list of your tags. ListTagsForResource
is called first without a NextToken
value. Then the action continues to be called with the NextToken
parameter set to the value of the last NextToken
value until a response has no NextToken
.
When using this action, keep the following in mind:
The implementation might return fewer than MaxResults
file system descriptions while still including a NextToken
value.
The order of tags returned in the response of one ListTagsForResource
call and the order of tags returned across the responses of a multi-call iteration is unspecified.
Tags an Amazon FSx resource.
", "UntagResource": "This action removes a tag from an Amazon FSx resource.
", - "UpdateFileSystem": "Use this operation to update the configuration of an existing Amazon FSx file system. You can update multiple properties in a single request.
For Amazon FSx for Windows File Server file systems, you can update the following properties:
AuditLogConfiguration
AutomaticBackupRetentionDays
DailyAutomaticBackupStartTime
SelfManagedActiveDirectoryConfiguration
StorageCapacity
ThroughputCapacity
WeeklyMaintenanceStartTime
For Amazon FSx for Lustre file systems, you can update the following properties:
AutoImportPolicy
AutomaticBackupRetentionDays
DailyAutomaticBackupStartTime
DataCompressionType
StorageCapacity
WeeklyMaintenanceStartTime
Use this operation to update the configuration of an existing Amazon FSx file system. You can update multiple properties in a single request.
For Amazon FSx for Windows File Server file systems, you can update the following properties:
AuditLogConfiguration
AutomaticBackupRetentionDays
DailyAutomaticBackupStartTime
SelfManagedActiveDirectoryConfiguration
StorageCapacity
ThroughputCapacity
WeeklyMaintenanceStartTime
For Amazon FSx for Lustre file systems, you can update the following properties:
AutoImportPolicy
AutomaticBackupRetentionDays
DailyAutomaticBackupStartTime
DataCompressionType
StorageCapacity
WeeklyMaintenanceStartTime
For Amazon FSx for NetApp ONTAP file systems, you can update the following properties:
AutomaticBackupRetentionDays
DailyAutomaticBackupStartTime
FsxAdminPassword
WeeklyMaintenanceStartTime
Updates an Amazon FSx for ONTAP storage virtual machine (SVM).
", + "UpdateVolume": "Updates an Amazon FSx for NetApp ONTAP volume's configuration.
" }, "shapes": { "AWSAccountId": { - "base": "An AWS account ID. This ID is a 12-digit number that you use to construct Amazon Resource Names (ARNs) for resources.
", + "base": "An Amazon Web Services account ID. This ID is a 12-digit number that you use to construct Amazon Resource Names (ARNs) for resources.
", "refs": { "Backup$OwnerId": null, - "FileSystem$OwnerId": "The AWS account that created the file system. If the file system was created by an AWS Identity and Access Management (IAM) user, the AWS account to which the IAM user belongs is the owner.
" + "FileSystem$OwnerId": "The Amazon Web Services account that created the file system. If the file system was created by an Identity and Access Management (IAM) user, the Amazon Web Services account to which the IAM user belongs is the owner.
" } }, "ActiveDirectoryBackupAttributes": { @@ -54,6 +63,15 @@ "SelfManagedActiveDirectoryConfiguration$DomainName": "The fully qualified domain name of the self-managed AD directory, such as corp.example.com
.
The ONTAP administrative password for the fsxadmin
user that you can use to administer your file system using the ONTAP CLI and REST API.
The password to use when managing the SVM using the NetApp ONTAP CLI or REST API. If you do not specify a password, you can still use the file system's fsxadmin
user to manage the SVM.
The ONTAP administrative password for the fsxadmin
user.
Enter a new SvmAdminPassword if you are updating it.
" + } + }, "AdministrativeAction": { "base": "Describes a specific Amazon FSx administrative action for the current Windows or Lustre file system.
", "refs": { @@ -75,7 +93,7 @@ "AdministrativeActions": { "base": null, "refs": { - "FileSystem$AdministrativeActions": "A list of administrative actions for the file system that are in process or waiting to be processed. Administrative actions describe changes to the Windows file system that you have initiated using the UpdateFileSystem
action.
A list of administrative actions for the file system that are in process or waiting to be processed. Administrative actions describe changes to the Amazon FSx file system that you have initiated using the UpdateFileSystem
action.
Describes the state of the DNS alias.
AVAILABLE - The DNS alias is associated with an Amazon FSx file system.
CREATING - Amazon FSx is creating the DNS alias and associating it with the file system.
CREATE_FAILED - Amazon FSx was unable to associate the DNS alias with the file system.
DELETING - Amazon FSx is disassociating the DNS alias from the file system and deleting it.
DELETE_FAILED - Amazon FSx was unable to disassocate the DNS alias from the file system.
Describes the state of the DNS alias.
AVAILABLE - The DNS alias is associated with an Amazon FSx file system.
CREATING - Amazon FSx is creating the DNS alias and associating it with the file system.
CREATE_FAILED - Amazon FSx was unable to associate the DNS alias with the file system.
DELETING - Amazon FSx is disassociating the DNS alias from the file system and deleting it.
DELETE_FAILED - Amazon FSx was unable to disassociate the DNS alias from the file system.
The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. The default is 0.
", "refs": { "CreateFileSystemLustreConfiguration$AutomaticBackupRetentionDays": null, + "CreateFileSystemOntapConfiguration$AutomaticBackupRetentionDays": null, "CreateFileSystemWindowsConfiguration$AutomaticBackupRetentionDays": "The number of days to retain automatic backups. The default is to retain backups for 7 days. Setting this value to 0 disables the creation of automatic backups. The maximum retention period for backups is 90 days.
", "LustreFileSystemConfiguration$AutomaticBackupRetentionDays": null, + "OntapFileSystemConfiguration$AutomaticBackupRetentionDays": null, "UpdateFileSystemLustreConfiguration$AutomaticBackupRetentionDays": null, + "UpdateFileSystemOntapConfiguration$AutomaticBackupRetentionDays": null, "UpdateFileSystemWindowsConfiguration$AutomaticBackupRetentionDays": "The number of days to retain automatic daily backups. Setting this to zero (0) disables automatic daily backups. You can retain automatic daily backups for a maximum of 90 days. For more information, see Working with Automatic Daily Backups.
", "WindowsFileSystemConfiguration$AutomaticBackupRetentionDays": "The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.
" } }, "Backup": { - "base": "A backup of an Amazon FSx file system.
", + "base": "A backup of an Amazon FSx for Windows File Server or Amazon FSx for Lustre file system, or of an Amazon FSx for NetApp ONTAP volume.
", "refs": { "Backups$member": null, "CopyBackupResponse$Backup": null, @@ -180,10 +201,12 @@ "BackupBeingCopied$BackupId": null, "BackupIds$member": null, "CreateFileSystemFromBackupRequest$BackupId": null, + "CreateVolumeFromBackupRequest$BackupId": null, "DeleteBackupRequest$BackupId": "The ID of the backup you want to delete.
", "DeleteBackupResponse$BackupId": "The ID of the backup deleted.
", "DeleteFileSystemLustreResponse$FinalBackupId": "The ID of the final backup for this file system.
", "DeleteFileSystemWindowsResponse$FinalBackupId": "The ID of the final backup for this file system.
", + "DeleteVolumeOntapResponse$FinalBackupId": null, "SourceBackupUnavailable$BackupId": null } }, @@ -243,19 +266,26 @@ } }, "ClientRequestToken": { - "base": "(Optional) An idempotency token for resource creation, in a string of up to 64 ASCII characters. This token is automatically filled on your behalf when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
", + "base": "(Optional) An idempotency token for resource creation, in a string of up to 64 ASCII characters. This token is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.
", "refs": { "AssociateFileSystemAliasesRequest$ClientRequestToken": null, "CopyBackupRequest$ClientRequestToken": null, - "CreateBackupRequest$ClientRequestToken": "(Optional) A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
", + "CreateBackupRequest$ClientRequestToken": "(Optional) A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.
", "CreateDataRepositoryTaskRequest$ClientRequestToken": null, - "CreateFileSystemFromBackupRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
", - "CreateFileSystemRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
", - "DeleteBackupRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent deletion. This is automatically filled on your behalf when using the AWS CLI or SDK.
", - "DeleteFileSystemRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent deletion. This is automatically filled on your behalf when using the AWS CLI or SDK.
", + "CreateFileSystemFromBackupRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.
", + "CreateFileSystemRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.
", + "CreateStorageVirtualMachineRequest$ClientRequestToken": null, + "CreateVolumeFromBackupRequest$ClientRequestToken": null, + "CreateVolumeRequest$ClientRequestToken": null, + "DeleteBackupRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent deletion. This is automatically filled on your behalf when using the CLI or SDK.
", + "DeleteFileSystemRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent deletion. This is automatically filled on your behalf when using the Command Line Interface (CLI) or an Amazon Web Services SDK.
", + "DeleteStorageVirtualMachineRequest$ClientRequestToken": null, + "DeleteVolumeRequest$ClientRequestToken": null, "DescribeFileSystemAliasesRequest$ClientRequestToken": null, "DisassociateFileSystemAliasesRequest$ClientRequestToken": null, - "UpdateFileSystemRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent updates. This string is automatically filled on your behalf when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK.
" + "UpdateFileSystemRequest$ClientRequestToken": "A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent updates. This string is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.
", + "UpdateStorageVirtualMachineRequest$ClientRequestToken": null, + "UpdateVolumeRequest$ClientRequestToken": null } }, "CompletionReport": { @@ -265,6 +295,12 @@ "DataRepositoryTask$Report": null } }, + "CoolingPeriod": { + "base": null, + "refs": { + "TieringPolicy$CoolingPeriod": "Specifies the number of days that user data in a volume must remain inactive before it is considered \"cold\" and moved to the capacity pool. Used with the AUTO
and SNAPSHOT_ONLY
tiering policies. Enter a whole number between 2 and 183. Default values are 31 days for AUTO
and 2 days for SNAPSHOT_ONLY
.
The ONTAP configuration properties of the FSx for NetApp ONTAP file system that you are creating.
", + "refs": { + "CreateFileSystemRequest$OntapConfiguration": null + } + }, "CreateFileSystemRequest": { "base": "The request object used to create a new Amazon FSx file system.
", "refs": { @@ -329,18 +371,65 @@ "CreateFileSystemRequest$WindowsConfiguration": "The Microsoft Windows configuration for the file system being created.
" } }, + "CreateOntapVolumeConfiguration": { + "base": "Specifies the configuration of the ONTAP volume that you are creating.
", + "refs": { + "CreateVolumeFromBackupRequest$OntapConfiguration": "Specifies the configuration of the ONTAP volume that you are creating.
", + "CreateVolumeRequest$OntapConfiguration": "Specifies the ONTAP
configuration to use in creating the volume.
The configuration that Amazon FSx uses to join the ONTAP storage virtual machine (SVM) to your self-managed (including on-premises) Microsoft Active Directory (AD) directory.
", + "refs": { + "CreateStorageVirtualMachineRequest$ActiveDirectoryConfiguration": "Describes the self-managed Microsoft Active Directory to which you want to join the SVM. Joining an Active Directory provides user authentication and access control for SMB clients, including Microsoft Windows and macOS client accessing the file system.
" + } + }, + "CreateVolumeFromBackupRequest": { + "base": null, + "refs": { + } + }, + "CreateVolumeFromBackupResponse": { + "base": null, + "refs": { + } + }, + "CreateVolumeRequest": { + "base": null, + "refs": { + } + }, + "CreateVolumeResponse": { + "base": null, + "refs": { + } + }, "CreationTime": { "base": "The time that the resource was created, in seconds (since 1970-01-01T00:00:00Z), also known as Unix time.
", "refs": { "Backup$CreationTime": "The time when a particular backup was created.
", "DataRepositoryTask$CreationTime": null, - "FileSystem$CreationTime": "The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z), also known as Unix time.
" + "FileSystem$CreationTime": "The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z), also known as Unix time.
", + "StorageVirtualMachine$CreationTime": null, + "Volume$CreationTime": null } }, "DNSName": { "base": "The Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name.
", "refs": { "FileSystem$DNSName": "The DNS name for the file system.
", + "FileSystemEndpoint$DNSName": null, + "SvmEndpoint$DNSName": null, "WindowsFileSystemConfiguration$RemoteAdministrationEndpoint": "For MULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on the file system using Amazon FSx Remote PowerShell.
For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the file system.
This endpoint is temporarily unavailable when the file system is undergoing maintenance.
" } }, @@ -348,9 +437,12 @@ "base": "A recurring daily time, in the format HH:MM
. HH
is the zero-padded hour of the day (0-23), and MM
is the zero-padded minute of the hour. For example, 05:00
specifies 5 AM daily.
The preferred time to take daily automatic backups, formatted HH:MM in the UTC time zone.
", "LustreFileSystemConfiguration$DailyAutomaticBackupStartTime": null, + "OntapFileSystemConfiguration$DailyAutomaticBackupStartTime": null, "UpdateFileSystemLustreConfiguration$DailyAutomaticBackupStartTime": null, + "UpdateFileSystemOntapConfiguration$DailyAutomaticBackupStartTime": null, "UpdateFileSystemWindowsConfiguration$DailyAutomaticBackupStartTime": "The preferred time to start the daily automatic backup, in the UTC time zone, for example, 02:00
The preferred time to take daily automatic backups, in the UTC time zone.
" } @@ -522,6 +614,38 @@ "DeleteFileSystemResponse$WindowsResponse": null } }, + "DeleteStorageVirtualMachineRequest": { + "base": null, + "refs": { + } + }, + "DeleteStorageVirtualMachineResponse": { + "base": null, + "refs": { + } + }, + "DeleteVolumeOntapConfiguration": { + "base": "Use to specify skipping a final backup, or to add tags to a final backup.
", + "refs": { + "DeleteVolumeRequest$OntapConfiguration": "For Amazon FSx for ONTAP volumes, specify whether to take a final backup of the volume, and apply tags to the backup.
" + } + }, + "DeleteVolumeOntapResponse": { + "base": "The response object for the Amazon FSx for NetApp ONTAP volume being deleted in the DeleteVolume
operation.
Returned after a DeleteVolume request, showing the status of the delete request.
The request object for DescribeBackups
operation.
The ID of the AWS Managed Microsoft Active Directory instance to which the file system is joined.
", + "ActiveDirectoryBackupAttributes$ActiveDirectoryId": "The ID of the Amazon Web Services Managed Microsoft Active Directory instance to which the file system is joined.
", "ActiveDirectoryError$ActiveDirectoryId": "The directory ID of the directory that an error pertains to.
", - "CreateFileSystemWindowsConfiguration$ActiveDirectoryId": "The ID for an existing AWS Managed Microsoft Active Directory (AD) instance that the file system should join when it's created.
", - "WindowsFileSystemConfiguration$ActiveDirectoryId": "The ID for an existing AWS Managed Microsoft Active Directory instance that the file system is joined to.
" + "CreateFileSystemWindowsConfiguration$ActiveDirectoryId": "The ID for an existing Amazon Web Services Managed Microsoft Active Directory (AD) instance that the file system should join when it's created.
", + "WindowsFileSystemConfiguration$ActiveDirectoryId": "The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file system is joined to.
" } }, "DirectoryPassword": { @@ -596,6 +740,19 @@ "refs": { } }, + "DiskIopsConfiguration": { + "base": "The SSD IOPS (input/output operations per second) configuration for an Amazon FSx for NetApp ONTAP file system. The default is 3 IOPS per GB of storage capacity, but you can provision additional IOPS per GB of storage. The configuration consists of the total number of provisioned SSD IOPS and how the amount was provisioned (by the customer or by the system).
", + "refs": { + "CreateFileSystemOntapConfiguration$DiskIopsConfiguration": "The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system.
", + "OntapFileSystemConfiguration$DiskIopsConfiguration": "The SSD IOPS configuration for the ONTAP file system, specifying the number of provisioned IOPS and the provision mode.
" + } + }, + "DiskIopsConfigurationMode": { + "base": null, + "refs": { + "DiskIopsConfiguration$Mode": "Specifies whether the number of IOPS for the file system is using the system default (AUTOMATIC
) or was provisioned by the customer (USER_PROVISIONED
).
Error message explaining what's wrong with network settings.
", "InvalidPerUnitStorageThroughput$Message": null, "InvalidRegion$Message": null, "InvalidSourceKmsKey$Message": null, + "LifecycleTransitionReason$Message": null, "MissingFileSystemConfiguration$Message": null, + "MissingVolumeConfiguration$Message": null, "NotServiceResourceError$Message": null, "ResourceDoesNotSupportTagging$Message": null, "ResourceNotFound$Message": null, "ServiceLimitExceeded$Message": null, "SourceBackupUnavailable$Message": null, - "UnsupportedOperation$Message": null + "StorageVirtualMachineNotFound$Message": null, + "UnsupportedOperation$Message": null, + "VolumeNotFound$Message": null } }, "FailedCount": { @@ -678,6 +839,19 @@ "SelfManagedActiveDirectoryConfiguration$FileSystemAdministratorsGroup": "(Optional) The name of the domain group whose members are granted administrative privileges for the file system. Administrative privileges include taking ownership of files and folders, setting audit controls (audit ACLs) on files and folders, and administering the file system remotely by using the FSx Remote PowerShell. The group that you specify must already exist in your domain. If you don't provide one, your AD domain's Domain Admins group is used.
" } }, + "FileSystemEndpoint": { + "base": "An Amazon FSx for NetApp ONTAP file system has two endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. They are the Management
and Intercluster
endpoints.
An endpoint for managing your file system by setting up NetApp SnapMirror with other ONTAP systems.
", + "FileSystemEndpoints$Management": "An endpoint for managing your file system using the NetApp ONTAP CLI and NetApp ONTAP API.
" + } + }, + "FileSystemEndpoints": { + "base": "An Amazon FSx for NetApp ONTAP file system has the following endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror.
", + "refs": { + "OntapFileSystemConfiguration$Endpoints": "The Management
and Intercluster
endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror.
A structure providing details of any failures that occur when creating the file system has failed.
", "refs": { @@ -691,6 +865,7 @@ "BackupRestoring$FileSystemId": "The ID of a file system being restored from the backup.
", "CreateBackupRequest$FileSystemId": "The ID of the file system to back up.
", "CreateDataRepositoryTaskRequest$FileSystemId": null, + "CreateStorageVirtualMachineRequest$FileSystemId": null, "DataRepositoryTask$FileSystemId": null, "DeleteFileSystemRequest$FileSystemId": "The ID of the file system you want to delete.
", "DeleteFileSystemResponse$FileSystemId": "The ID of the file system being deleted.
", @@ -698,7 +873,9 @@ "DisassociateFileSystemAliasesRequest$FileSystemId": "Specifies the file system from which to disassociate the DNS aliases.
", "FileSystem$FileSystemId": "The system-generated, unique 17-digit ID of the file system.
", "FileSystemIds$member": null, - "UpdateFileSystemRequest$FileSystemId": "Identifies the file system that you are updating.
" + "StorageVirtualMachine$FileSystemId": null, + "UpdateFileSystemRequest$FileSystemId": "Identifies the file system that you are updating.
", + "Volume$FileSystemId": null } }, "FileSystemIds": { @@ -734,8 +911,8 @@ "FileSystemType": { "base": "The type of file system.
", "refs": { - "CreateFileSystemRequest$FileSystemType": "The type of Amazon FSx file system to create, either WINDOWS
or LUSTRE
.
The type of Amazon FSx file system, either LUSTRE
or WINDOWS
.
The type of Amazon FSx file system to create. Valid values are WINDOWS
, LUSTRE
, and ONTAP
.
The type of Amazon FSx file system, which can be LUSTRE
, WINDOWS
, or ONTAP
.
A list of Filter
elements.
Filters structure. Supported names are file-system-id and backup-type.
" + "DescribeBackupsRequest$Filters": "Filters structure. Supported names are file-system-id
, backup-type
, file-system-type
, and volume-id
.
A boolean flag indicating whether tags from the source backup should be copied to the backup copy. This value defaults to false.
If you set CopyTags
to true and the source backup has existing tags, you can use the Tags
parameter to create new tags, provided that the sum of the source backup tags and the new tags doesn't exceed 50. Both sets of tags are merged. If there are tag conflicts (for example, two tags with the same key but different values), the tags created with the Tags
parameter take precedence.
(Optional) Not available to use with file systems that are linked to a data repository. A boolean flag indicating whether tags for the file system should be copied to backups. The default value is false. If it's set to true, all file system tags are copied to all automatic and user-initiated backups when the user doesn't specify any backup-specific tags. If this value is true, and you specify one or more backup tags, only the specified tags are copied to backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, regardless of this value.
For more information, see Working with backups.
", "CreateFileSystemWindowsConfiguration$CopyTagsToBackups": "A boolean flag indicating whether tags for the file system should be copied to backups. This value defaults to false. If it's set to true, all tags for the file system are copied to all automatic and user-initiated backups where the user doesn't specify tags. If this value is true, and you specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, regardless of this value.
", + "CreateOntapVolumeConfiguration$StorageEfficiencyEnabled": "Set to true to enable deduplication, compression, and compaction storage efficiency features on the volume.
", "DeleteFileSystemLustreConfiguration$SkipFinalBackup": "Set SkipFinalBackup
to false if you want to take a final backup of the file system you are deleting. By default, Amazon FSx will not take a final backup on your behalf when the DeleteFileSystem
operation is invoked. (Default = true)
By default, Amazon FSx for Windows takes a final backup on your behalf when the DeleteFileSystem
operation is invoked. Doing this helps protect you from data loss, and we highly recommend taking the final backup. If you want to skip this backup, use this flag to do so.
Set to true if you want to skip taking a final backup of the volume you are deleting.
", "LustreFileSystemConfiguration$CopyTagsToBackups": "A boolean flag indicating whether tags on the file system should be copied to backups. If it's set to true, all tags on the file system are copied to all automatic backups and any user-initiated backups where the user doesn't specify any tags. If this value is true, and you specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, regardless of this value. (Default = false)
", + "OntapVolumeConfiguration$StorageEfficiencyEnabled": "The volume's storage efficiency setting.
", + "OntapVolumeConfiguration$StorageVirtualMachineRoot": "A boolean flag indicating whether this volume is the root volume for its storage virtual machine (SVM). Only one volume on an SVM can be the root volume. This value defaults to false. If this value is true, then this is the SVM root volume.
This flag is useful when you're deleting an SVM, because you must first delete all non-root volumes. This flag, when set to false, helps you identify which volumes to delete before you can delete the SVM.
", + "UpdateOntapVolumeConfiguration$StorageEfficiencyEnabled": "Default is false
. Set to true to enable the deduplication, compression, and compaction storage efficiency features on the volume.
A boolean flag indicating whether tags on the file system should be copied to backups. This value defaults to false. If it's set to true, all tags on the file system are copied to all automatic backups and any user-initiated backups where the user doesn't specify any tags. If this value is true, and you specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, regardless of this value.
" } }, + "FlexCacheEndpointType": { + "base": null, + "refs": { + "OntapVolumeConfiguration$FlexCacheEndpointType": "Specifies the FlexCache endpoint type of the volume. Valid values are the following:
NONE
specifies that the volume doesn't have a FlexCache configuration. NONE
is the default.
ORIGIN
specifies that the volume is the origin volume for a FlexCache volume.
CACHE
specifies that the volume is a FlexCache volume.
The Amazon Resource Name (ARN) for the destination of the audit logs. The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN.
The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx
prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx
prefix.
The destination ARN (either CloudWatch Logs log group or Kinesis Data Firehose delivery stream) must be in the same AWS partition, AWS region, and AWS account as your Amazon FSx file system.
", - "WindowsAuditLogCreateConfiguration$AuditLogDestination": "The Amazon Resource Name (ARN) that specifies the destination of the audit logs.
The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN, with the following requirements:
The destination ARN that you provide (either CloudWatch Logs log group or Kinesis Data Firehose delivery stream) must be in the same AWS partition, AWS region, and AWS account as your Amazon FSx file system.
The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx
prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx
prefix.
If you do not provide a destination in AuditLogDestination
, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/windows
log group.
If AuditLogDestination
is provided and the resource does not exist, the request will fail with a BadRequest
error.
If FileAccessAuditLogLevel
and FileShareAccessAuditLogLevel
are both set to DISABLED
, you cannot specify a destination in AuditLogDestination
.
The Amazon Resource Name (ARN) for the destination of the audit logs. The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN.
The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx
prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx
prefix.
The destination ARN (either CloudWatch Logs log group or Kinesis Data Firehose delivery stream) must be in the same Amazon Web Services partition, Amazon Web Services Region, and Amazon Web Services account as your Amazon FSx file system.
", + "WindowsAuditLogCreateConfiguration$AuditLogDestination": "The Amazon Resource Name (ARN) that specifies the destination of the audit logs.
The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN, with the following requirements:
The destination ARN that you provide (either CloudWatch Logs log group or Kinesis Data Firehose delivery stream) must be in the same Amazon Web Services partition, Amazon Web Services Region, and Amazon Web Services account as your Amazon FSx file system.
The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx
prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx
prefix.
If you do not provide a destination in AuditLogDestination
, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/windows
log group.
If AuditLogDestination
is provided and the resource does not exist, the request will fail with a BadRequest
error.
If FileAccessAuditLogLevel
and FileShareAccessAuditLogLevel
are both set to DISABLED
, you cannot specify a destination in AuditLogDestination
.
The AWS Key Management Service (AWS KMS) key of the destination backup is invalid.
", + "base": "The Key Management Service (KMS) key of the destination backup is invalid.
", "refs": { } }, @@ -825,7 +1013,7 @@ } }, "InvalidNetworkSettings": { - "base": "One or more network settings specified in the request are invalid. InvalidVpcId
means that the ID passed for the virtual private cloud (VPC) is invalid. InvalidSubnetIds
returns the list of IDs for subnets that are either invalid or not part of the VPC specified. InvalidSecurityGroupIds
returns the list of IDs for security groups that are either invalid or not part of the VPC specified.
One or more network settings specified in the request are invalid.
", "refs": { } }, @@ -835,30 +1023,52 @@ } }, "InvalidRegion": { - "base": "The Region provided for Source Region
is invalid or is in a different AWS partition.
The Region provided for Source Region
is invalid or is in a different Amazon Web Services partition.
The AWS Key Management Service (AWS KMS) key of the source backup is invalid.
", + "base": "The Key Management Service (KMS) key of the source backup is invalid.
", + "refs": { + } + }, + "Iops": { + "base": null, "refs": { + "DiskIopsConfiguration$Iops": "The total number of SSD IOPS provisioned for the file system.
" } }, "IpAddress": { "base": null, "refs": { "DnsIps$member": null, + "OntapEndpointIpAddresses$member": null, "WindowsFileSystemConfiguration$PreferredFileServerIp": "For MULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file server.
Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not joined to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP address is temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows SMB clients that are joined to an Active Directory, use the file system's DNSName instead. For more information on mapping and mounting file shares, see Accessing File Shares.
" } }, + "IpAddressRange": { + "base": null, + "refs": { + "CreateFileSystemOntapConfiguration$EndpointIpAddressRange": "Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range.
", + "OntapFileSystemConfiguration$EndpointIpAddressRange": "The IP address range in which the endpoints to access your file system are created.
" + } + }, + "JunctionPath": { + "base": null, + "refs": { + "CreateOntapVolumeConfiguration$JunctionPath": "Specifies the location in the SVM's namespace where the volume is mounted. The JunctionPath
must have a leading forward slash, such as /vol3
.
Specifies the directory that NAS clients use to mount the volume, along with the SVM DNS name or IP address. You can create a JunctionPath
directly below a parent volume junction or on a directory within a volume. A JunctionPath
for a volume named vol3 might be /vol1/vol2/vol3, or /vol1/dir2/vol3, or even /dir1/dir2/vol3..
Specifies the location in the SVM's namespace where the volume is mounted. The JunctionPath
must have a leading forward slash, such as /vol3
.
The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the file system's data for Amazon FSx for Windows File Server file systems and Amazon FSx for Lustre PERSISTENT_1
file systems at rest. In either case, if not specified, the Amazon FSx managed key is used. The Amazon FSx for Lustre SCRATCH_1
and SCRATCH_2
file systems are always encrypted at rest using Amazon FSx managed keys. For more information, see Encrypt in the AWS Key Management Service API Reference.
The ID of the Key Management Service (KMS) key used to encrypt the file system's data for Amazon FSx for Windows File Server file systems, Amazon FSx for NetApp ONTAP file systems, and Amazon FSx for Lustre PERSISTENT_1
file systems at rest. If not specified, the Amazon FSx managed key is used. The Amazon FSx for Lustre SCRATCH_1
and SCRATCH_2
file systems are always encrypted at rest using Amazon FSx managed keys. For more information, see Encrypt in the Key Management Service API Reference.
The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the backup of the Amazon FSx file system's data at rest.
", + "Backup$KmsKeyId": "The ID of the Key Management Service (KMS) key used to encrypt the backup of the Amazon FSx file system's data at rest.
", "CopyBackupRequest$KmsKeyId": null, "CreateFileSystemFromBackupRequest$KmsKeyId": null, "CreateFileSystemRequest$KmsKeyId": null, - "FileSystem$KmsKeyId": "The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the file system's data for Amazon FSx for Windows File Server file systems and persistent Amazon FSx for Lustre file systems at rest. In either case, if not specified, the Amazon FSx managed key is used. The scratch Amazon FSx for Lustre file systems are always encrypted at rest using Amazon FSx managed keys. For more information, see Encrypt in the AWS Key Management Service API Reference.
" + "FileSystem$KmsKeyId": "The ID of the Key Management Service (KMS) key used to encrypt the file system's data for Amazon FSx for Windows File Server file systems, Amazon FSx for NetApp ONTAP file systems, and persistent Amazon FSx for Lustre file systems at rest. If not specified, the Amazon FSx managed key is used. The scratch Amazon FSx for Lustre file systems are always encrypted at rest using Amazon FSx managed keys. For more information, see Encrypt in the Key Management Service API Reference.
" } }, "LastUpdatedTime": { @@ -867,6 +1077,13 @@ "DataRepositoryTaskStatus$LastUpdatedTime": "The time at which the task status was last updated.
" } }, + "LifecycleTransitionReason": { + "base": "Describes why a resource lifecycle state changed.
", + "refs": { + "StorageVirtualMachine$LifecycleTransitionReason": "Describes why the SVM lifecycle state changed.
", + "Volume$LifecycleTransitionReason": "Describes why the volume lifecycle state changed.
" + } + }, "ListTagsForResourceRequest": { "base": "The request object for ListTagsForResource
operation.
Choose SCRATCH_1
and SCRATCH_2
deployment types when you need temporary storage and shorter-term processing of data. The SCRATCH_2
deployment type provides in-transit encryption of data and higher burst throughput capacity than SCRATCH_1
.
Choose PERSISTENT_1
deployment type for longer-term storage and workloads and encryption of data in transit. To learn more about deployment types, see FSx for Lustre Deployment Options.
Encryption of data in-transit is automatically enabled when you access a SCRATCH_2
or PERSISTENT_1
file system from Amazon EC2 instances that support this feature. (Default = SCRATCH_1
)
Encryption of data in-transit for SCRATCH_2
and PERSISTENT_1
deployment types is supported when accessed from supported instance types in supported AWS Regions. To learn more, Encrypting Data in Transit.
Choose SCRATCH_1
and SCRATCH_2
deployment types when you need temporary storage and shorter-term processing of data. The SCRATCH_2
deployment type provides in-transit encryption of data and higher burst throughput capacity than SCRATCH_1
.
Choose PERSISTENT_1
deployment type for longer-term storage and workloads and encryption of data in transit. To learn more about deployment types, see FSx for Lustre Deployment Options.
Encryption of data in-transit is automatically enabled when you access a SCRATCH_2
or PERSISTENT_1
file system from Amazon EC2 instances that support this feature. (Default = SCRATCH_1
)
Encryption of data in-transit for SCRATCH_2
and PERSISTENT_1
deployment types is supported when accessed from supported instance types in supported Amazon Web Services Regions. To learn more, Encrypting Data in Transit.
The deployment type of the FSX for Lustre file system. Scratch deployment type is designed for temporary storage and shorter-term processing of data.
SCRATCH_1
and SCRATCH_2
deployment types are best suited for when you need temporary storage and shorter-term processing of data. The SCRATCH_2
deployment type provides in-transit encryption of data and higher burst throughput capacity than SCRATCH_1
.
The PERSISTENT_1
deployment type is used for longer-term storage and workloads and encryption of data in transit. To learn more about deployment types, see FSx for Lustre Deployment Options. (Default = SCRATCH_1
)
You use the MountName
value when mounting the file system.
For the SCRATCH_1
deployment type, this value is always \"fsx
\". For SCRATCH_2
and PERSISTENT_1
deployment types, this value is a string that is unique within an AWS Region.
You use the MountName
value when mounting the file system.
For the SCRATCH_1
deployment type, this value is always \"fsx
\". For SCRATCH_2
and PERSISTENT_1
deployment types, this value is a string that is unique within an Amazon Web Services Region.
Maximum number of DNS aliases to return in the response (integer). This parameter value must be greater than 0. The number of items that Amazon FSx returns is the minimum of the MaxResults
parameter specified in the request and the service's internal maximum number of items per page.
Maximum number of file systems to return in the response (integer). This parameter value must be greater than 0. The number of items that Amazon FSx returns is the minimum of the MaxResults
parameter specified in the request and the service's internal maximum number of items per page.
Maximum number of tags to return in the response (integer). This parameter value must be greater than 0. The number of items that Amazon FSx returns is the minimum of the MaxResults
parameter specified in the request and the service's internal maximum number of items per page.
Sustained throughput of an Amazon FSx file system in MBps.
", "refs": { + "CreateFileSystemOntapConfiguration$ThroughputCapacity": null, "CreateFileSystemWindowsConfiguration$ThroughputCapacity": "The throughput of an Amazon FSx file system, measured in megabytes per second, in 2 to the nth increments, between 2^3 (8) and 2^11 (2048).
", + "OntapFileSystemConfiguration$ThroughputCapacity": null, "UpdateFileSystemWindowsConfiguration$ThroughputCapacity": "Sets the target value for a file system's throughput capacity, in MB/s, that you are updating the file system to. Valid values are 8, 16, 32, 64, 128, 256, 512, 1024, 2048. You cannot make a throughput capacity update request if there is an existing throughput capacity update request in progress. For more information, see Managing Throughput Capacity.
", "WindowsFileSystemConfiguration$ThroughputCapacity": "The throughput of the Amazon FSx file system, measured in megabytes per second.
" } @@ -926,6 +1147,18 @@ "refs": { } }, + "MissingVolumeConfiguration": { + "base": "A volume configuration is required for this operation.
", + "refs": { + } + }, + "NetBiosAlias": { + "base": null, + "refs": { + "CreateSvmActiveDirectoryConfiguration$NetBiosName": "The NetBIOS name of the Active Directory computer object that will be created for your SVM.
", + "SvmActiveDirectoryConfiguration$NetBiosName": "The NetBIOS name of the Active Directory computer object that is joined to your SVM.
" + } + }, "NetworkInterfaceId": { "base": "An elastic network interface ID. An elastic network interface is a logical networking component in a virtual private cloud (VPC) that represents a virtual network card. For more information, see Elastic Network Interfaces in the Amazon EC2 User Guide for Linux Instances.
", "refs": { @@ -949,6 +1182,10 @@ "DescribeFileSystemAliasesResponse$NextToken": "Present if there are more DNS aliases than returned in the response (String). You can use the NextToken
value in a later request to fetch additional descriptions.
Opaque pagination token returned from a previous DescribeFileSystems
operation (String). If a token present, the action continues the list from where the returning call left off.
Present if there are more file systems than returned in the response (String). You can use the NextToken
value in the later request to fetch the descriptions.
Opaque pagination token returned from a previous ListTagsForResource
operation (String). If a token present, the action continues the list from where the returning call left off.
This is present if there are more tags than returned in the response (String). You can use the NextToken
value in the later request to fetch the tags.
Specifies the ONTAP file system deployment type to use in creating the file system.
", + "OntapFileSystemConfiguration$DeploymentType": "The ONTAP file system deployment type.
" + } + }, + "OntapEndpointIpAddresses": { + "base": null, + "refs": { + "FileSystemEndpoint$IpAddresses": "IP addresses of the file system endpoint.
", + "SvmEndpoint$IpAddresses": "The SVM endpoint's IP addresses.
" + } + }, + "OntapFileSystemConfiguration": { + "base": "Configuration for the FSx for NetApp ONTAP file system.
", + "refs": { + "FileSystem$OntapConfiguration": "The configuration for this FSx for NetApp ONTAP file system.
" + } + }, + "OntapVolumeConfiguration": { + "base": "The configuration of an Amazon FSx for NetApp ONTAP volume
", + "refs": { + "Volume$OntapConfiguration": null + } + }, + "OntapVolumeType": { + "base": null, + "refs": { + "OntapVolumeConfiguration$OntapVolumeType": "Specifies the type of volume. Valid values are the following:
RW
specifies a read-write volume. RW
is the default.
DP
specifies a data protection volume. You can protect data by replicating it to data protection mirror copies and use data protection mirror copies to recover data when a disaster occurs.
LS
specifies a load-sharing mirror volume. A load-sharing mirror reduces the network traffic to a FlexVol volume by providing additional read-only access to clients.
The fully qualified distinguished name of the organizational unit within the self-managed AD directory to which the Windows File Server instance is joined.
", - "SelfManagedActiveDirectoryConfiguration$OrganizationalUnitDistinguishedName": "(Optional) The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. Amazon FSx only accepts OU as the direct parent of the file system. An example is OU=FSx,DC=yourdomain,DC=corp,DC=com
. To learn more, see RFC 2253. If none is provided, the FSx file system is created in the default location of your self-managed AD directory.
Only Organizational Unit (OU) objects can be the direct parent of the file system that you're creating.
The fully qualified distinguished name of the organizational unit within the self-managed AD directory to which the Windows File Server or ONTAP storage virtual machine (SVM) instance is joined.
", + "SelfManagedActiveDirectoryConfiguration$OrganizationalUnitDistinguishedName": "(Optional) The fully qualified distinguished name of the organizational unit within your self-managed AD directory. Amazon FSx only accepts OU as the direct parent of the file system. An example is OU=FSx,DC=yourdomain,DC=corp,DC=com
. To learn more, see RFC 2253. If none is provided, the FSx file system is created in the default location of your self-managed AD directory.
Only Organizational Unit (OU) objects can be the direct parent of the file system that you're creating.
The source Region of the backup. Specifies the Region from where this backup is copied.
", - "CopyBackupRequest$SourceRegion": "The source AWS Region of the backup. Specifies the AWS Region from which the backup is being copied. The source and destination Regions must be in the same AWS partition. If you don't specify a Region, it defaults to the Region where the request is sent from (in-Region copy).
" + "CopyBackupRequest$SourceRegion": "The source Amazon Web Services Region of the backup. Specifies the Amazon Web Services Region from which the backup is being copied. The source and destination Regions must be in the same Amazon Web Services partition. If you don't specify a Region, it defaults to the Region where the request is sent from (in-Region copy).
" } }, "ReportFormat": { @@ -1011,7 +1280,7 @@ } }, "ResourceARN": { - "base": "The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify AWS resources. We require an ARN when you need to specify a resource unambiguously across all of AWS. For more information, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.
", + "base": "The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify Amazon Web Services resources. We require an ARN when you need to specify a resource unambiguously across all of Amazon Web Services. For more information, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.
", "refs": { "ActiveDirectoryBackupAttributes$ResourceARN": null, "Backup$ResourceARN": "The Amazon Resource Name (ARN) for the backup resource.
", @@ -1021,8 +1290,10 @@ "NotServiceResourceError$ResourceARN": "The Amazon Resource Name (ARN) of the non-Amazon FSx resource.
", "ResourceDoesNotSupportTagging$ResourceARN": "The Amazon Resource Name (ARN) of the resource that doesn't support tagging.
", "ResourceNotFound$ResourceARN": "The resource ARN of the resource that can't be found.
", + "StorageVirtualMachine$ResourceARN": null, "TagResourceRequest$ResourceARN": "The Amazon Resource Name (ARN) of the Amazon FSx resource that you want to tag.
", - "UntagResourceRequest$ResourceARN": "The ARN of the Amazon FSx resource to untag.
" + "UntagResourceRequest$ResourceARN": "The ARN of the Amazon FSx resource to untag.
", + "Volume$ResourceARN": null } }, "ResourceDoesNotSupportTagging": { @@ -1035,10 +1306,30 @@ "refs": { } }, + "ResourceType": { + "base": null, + "refs": { + "Backup$ResourceType": "Specifies the resource type that is backed up.
" + } + }, + "RouteTableId": { + "base": null, + "refs": { + "InvalidNetworkSettings$InvalidRouteTableId": "The route table ID is either invalid or not part of the VPC specified.
", + "RouteTableIds$member": null + } + }, + "RouteTableIds": { + "base": null, + "refs": { + "CreateFileSystemOntapConfiguration$RouteTableIds": "Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.
", + "OntapFileSystemConfiguration$RouteTableIds": "The VPC route tables in which your file system's endpoints are created.
" + } + }, "SecurityGroupId": { "base": "The ID of your Amazon EC2 security group. This ID is used to control network access to the endpoint that Amazon FSx creates on your behalf in each subnet. For more information, see Amazon EC2 Security Groups for Linux Instances in the Amazon EC2 User Guide.
", "refs": { - "InvalidNetworkSettings$InvalidSecurityGroupId": null, + "InvalidNetworkSettings$InvalidSecurityGroupId": "The security group ID is either invalid or not part of the VPC specified.
", "SecurityGroupIds$member": null } }, @@ -1049,32 +1340,43 @@ "CreateFileSystemRequest$SecurityGroupIds": "A list of IDs specifying the security groups to apply to all network interfaces created for file system access. This list isn't returned in later requests to describe the file system.
" } }, + "SecurityStyle": { + "base": null, + "refs": { + "CreateOntapVolumeConfiguration$SecurityStyle": "The security style for the volume. Specify one of the following values:
UNIX
if the file system is managed by a UNIX administrator, the majority of users are NFS clients, and an application accessing the data uses a UNIX user as the service account. UNIX
is the default.
NTFS
if the file system is managed by a Windows administrator, the majority of users are SMB clients, and an application accessing the data uses a Windows user as the service account.
MIXED
if the file system is managed by both UNIX and Windows administrators and users consist of both NFS and SMB clients.
The security style for the volume, which can be UNIX
, NTFS
, or MIXED
.
The security style for the volume, which can be UNIX
. NTFS
, or MIXED
.
The configuration of the self-managed Microsoft Active Directory (AD) directory to which the Windows File Server instance is joined.
", + "base": "The configuration of the self-managed Microsoft Active Directory (AD) directory to which the Windows File Server or ONTAP storage virtual machine (SVM) instance is joined.
", "refs": { + "SvmActiveDirectoryConfiguration$SelfManagedActiveDirectoryConfiguration": null, "WindowsFileSystemConfiguration$SelfManagedActiveDirectoryConfiguration": null } }, "SelfManagedActiveDirectoryConfiguration": { - "base": "The configuration that Amazon FSx uses to join the Windows File Server instance to your self-managed (including on-premises) Microsoft Active Directory (AD) directory. For more information, see Using Amazon FSx with your self-managed Microsoft Active Directory.
", + "base": "The configuration that Amazon FSx uses to join a Amazon FSx for Windows File Server file system or an ONTAP storage virtual machine (SVM) to a self-managed (including on-premises) Microsoft Active Directory (AD) directory. For more information, see Using Amazon FSx with your self-managed Microsoft Active Directory or Managing SVMs.
", "refs": { - "CreateFileSystemWindowsConfiguration$SelfManagedActiveDirectoryConfiguration": null + "CreateFileSystemWindowsConfiguration$SelfManagedActiveDirectoryConfiguration": null, + "CreateSvmActiveDirectoryConfiguration$SelfManagedActiveDirectoryConfiguration": null } }, "SelfManagedActiveDirectoryConfigurationUpdates": { "base": "The configuration that Amazon FSx uses to join the Windows File Server instance to a self-managed Microsoft Active Directory (AD) directory.
", "refs": { - "UpdateFileSystemWindowsConfiguration$SelfManagedActiveDirectoryConfiguration": "The configuration Amazon FSx uses to join the Windows File Server instance to the self-managed Microsoft AD directory. You cannot make a self-managed Microsoft AD update request if there is an existing self-managed Microsoft AD update request in progress.
" + "UpdateFileSystemWindowsConfiguration$SelfManagedActiveDirectoryConfiguration": "The configuration Amazon FSx uses to join the Windows File Server instance to the self-managed Microsoft AD directory. You cannot make a self-managed Microsoft AD update request if there is an existing self-managed Microsoft AD update request in progress.
", + "UpdateSvmActiveDirectoryConfiguration$SelfManagedActiveDirectoryConfiguration": null } }, "ServiceLimit": { - "base": "The types of limits on your service utilization. Limits include file system count, total throughput capacity, total storage, and total user-initiated backups. These limits apply for a specific account in a specific AWS Region. You can increase some of them by contacting AWS Support.
", + "base": "The types of limits on your service utilization. Limits include file system count, total throughput capacity, total storage, and total user-initiated backups. These limits apply for a specific account in a specific Amazon Web Services Region. You can increase some of them by contacting Amazon Web Services Support.
", "refs": { "ServiceLimitExceeded$Limit": "Enumeration of the service limit that was exceeded.
" } }, "ServiceLimitExceeded": { - "base": "An error indicating that a particular service limit was exceeded. You can increase some service limits by contacting AWS Support.
", + "base": "An error indicating that a particular service limit was exceeded. You can increase some service limits by contacting Amazon Web Services Support.
", "refs": { } }, @@ -1104,24 +1406,120 @@ "StorageCapacity": { "base": "The storage capacity for your Amazon FSx file system, in gibibytes.
", "refs": { - "CreateFileSystemRequest$StorageCapacity": "Sets the storage capacity of the file system that you're creating.
For Lustre file systems:
For SCRATCH_2
and PERSISTENT_1 SSD
deployment types, valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.
For PERSISTENT HDD
file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
For SCRATCH_1
deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB.
For Windows file systems:
If StorageType=SSD
, valid values are 32 GiB - 65,536 GiB (64 TiB).
If StorageType=HDD
, valid values are 2000 GiB - 65,536 GiB (64 TiB).
Sets the storage capacity of the file system that you're creating.
For Lustre file systems:
For SCRATCH_2
and PERSISTENT_1 SSD
deployment types, valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.
For PERSISTENT HDD
file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
For SCRATCH_1
deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB.
For Windows file systems:
If StorageType=SSD
, valid values are 32 GiB - 65,536 GiB (64 TiB).
If StorageType=HDD
, valid values are 2000 GiB - 65,536 GiB (64 TiB).
For ONTAP file systems:
Valid values are 1024 GiB - 196,608 GiB (192 TiB).
The storage capacity of the file system in gibibytes (GiB).
", - "UpdateFileSystemRequest$StorageCapacity": "Use this parameter to increase the storage capacity of an Amazon FSx file system. Specifies the storage capacity target value, GiB, to increase the storage capacity for the file system that you're updating. You cannot make a storage capacity increase request if there is an existing storage capacity increase request in progress.
For Windows file systems, the storage capacity target value must be at least 10 percent (%) greater than the current storage capacity value. In order to increase storage capacity, the file system must have at least 16 MB/s of throughput capacity.
For Lustre file systems, the storage capacity target value can be the following:
For SCRATCH_2
and PERSISTENT_1 SSD
deployment types, valid values are in multiples of 2400 GiB. The value must be greater than the current storage capacity.
For PERSISTENT HDD
file systems, valid values are multiples of 6000 GiB for 12 MB/s/TiB file systems and multiples of 1800 GiB for 40 MB/s/TiB file systems. The values must be greater than the current storage capacity.
For SCRATCH_1
file systems, you cannot increase the storage capacity.
For more information, see Managing storage capacity in the Amazon FSx for Windows File Server User Guide and Managing storage and throughput capacity in the Amazon FSx for Lustre User Guide.
" + "UpdateFileSystemRequest$StorageCapacity": "Use this parameter to increase the storage capacity of an Amazon FSx for Windows File Server or Amazon FSx for Lustre file system. Specifies the storage capacity target value, GiB, to increase the storage capacity for the file system that you're updating. You cannot make a storage capacity increase request if there is an existing storage capacity increase request in progress.
For Windows file systems, the storage capacity target value must be at least 10 percent (%) greater than the current storage capacity value. In order to increase storage capacity, the file system must have at least 16 MB/s of throughput capacity.
For Lustre file systems, the storage capacity target value can be the following:
For SCRATCH_2
and PERSISTENT_1 SSD
deployment types, valid values are in multiples of 2400 GiB. The value must be greater than the current storage capacity.
For PERSISTENT HDD
file systems, valid values are multiples of 6000 GiB for 12 MB/s/TiB file systems and multiples of 1800 GiB for 40 MB/s/TiB file systems. The values must be greater than the current storage capacity.
For SCRATCH_1
file systems, you cannot increase the storage capacity.
For more information, see Managing storage capacity in the Amazon FSx for Windows File Server User Guide and Managing storage and throughput capacity in the Amazon FSx for Lustre User Guide.
" } }, "StorageType": { "base": "The storage type for your Amazon FSx file system.
", "refs": { "CreateFileSystemFromBackupRequest$StorageType": "Sets the storage type for the Windows file system you're creating from a backup. Valid values are SSD
and HDD
.
Set to SSD
to use solid state drive storage. Supported on all Windows deployment types.
Set to HDD
to use hard disk drive storage. Supported on SINGLE_AZ_2
and MULTI_AZ_1
Windows file system deployment types.
Default value is SSD
.
HDD and SSD storage types have different minimum storage capacity requirements. A restored file system's storage capacity is tied to the file system that was backed up. You can create a file system that uses HDD storage from a backup of a file system that used SSD storage only if the original SSD file system had a storage capacity of at least 2000 GiB.
Sets the storage type for the file system you're creating. Valid values are SSD
and HDD
.
Set to SSD
to use solid state drive storage. SSD is supported on all Windows and Lustre deployment types.
Set to HDD
to use hard disk drive storage. HDD is supported on SINGLE_AZ_2
and MULTI_AZ_1
Windows file system deployment types, and on PERSISTENT
Lustre file system deployment types.
Default value is SSD
. For more information, see Storage Type Options in the Amazon FSx for Windows User Guide and Multiple Storage Options in the Amazon FSx for Lustre User Guide.
Sets the storage type for the file system you're creating. Valid values are SSD
and HDD
.
Set to SSD
to use solid state drive storage. SSD is supported on all Windows, Lustre, and ONTAP deployment types.
Set to HDD
to use hard disk drive storage. HDD is supported on SINGLE_AZ_2
and MULTI_AZ_1
Windows file system deployment types, and on PERSISTENT
Lustre file system deployment types.
Default value is SSD
. For more information, see Storage Type Options in the Amazon FSx for Windows User Guide and Multiple Storage Options in the Amazon FSx for Lustre User Guide.
The storage type of the file system. Valid values are SSD
and HDD
. If set to SSD
, the file system uses solid state drive storage. If set to HDD
, the file system uses hard disk drive storage.
Describes the Amazon FSx for NetApp ONTAP storage virtual machine (SVM) configuraton.
", + "refs": { + "CreateStorageVirtualMachineResponse$StorageVirtualMachine": "Returned after a successful CreateStorageVirtualMachine
operation; describes the SVM just created.
A filter used to restrict the results of describe calls for Amazon FSx for NetApp ONTAP storage virtual machines (SVMs). You can use multiple filters to return results that meet all applied filter requirements.
", + "refs": { + "StorageVirtualMachineFilters$member": null + } + }, + "StorageVirtualMachineFilterName": { + "base": null, + "refs": { + "StorageVirtualMachineFilter$Name": "The name for this filter.
" + } + }, + "StorageVirtualMachineFilterValue": { + "base": null, + "refs": { + "StorageVirtualMachineFilterValues$member": null + } + }, + "StorageVirtualMachineFilterValues": { + "base": null, + "refs": { + "StorageVirtualMachineFilter$Values": "The values of the filter. These are all the values for any of the applied filters.
" + } + }, + "StorageVirtualMachineFilters": { + "base": null, + "refs": { + "DescribeStorageVirtualMachinesRequest$Filters": "Enter a filter name:value pair to view a select set of SVMs.
" + } + }, + "StorageVirtualMachineId": { + "base": null, + "refs": { + "CreateOntapVolumeConfiguration$StorageVirtualMachineId": "Specifies the ONTAP SVM in which to create the volume.
", + "DeleteStorageVirtualMachineRequest$StorageVirtualMachineId": "The ID of the SVM that you want to delete.
", + "DeleteStorageVirtualMachineResponse$StorageVirtualMachineId": "The ID of the SVM Amazon FSx is deleting.
", + "OntapVolumeConfiguration$StorageVirtualMachineId": "The ID of the volume's storage virtual machine.
", + "StorageVirtualMachine$StorageVirtualMachineId": "The SVM's system generated unique ID.
", + "StorageVirtualMachineIds$member": null, + "UpdateStorageVirtualMachineRequest$StorageVirtualMachineId": "The ID of the SVM that you want to update, in the format svm-0123456789abcdef0
.
Enter the ID of one or more SVMs that you want to view.
" + } + }, + "StorageVirtualMachineLifecycle": { + "base": null, + "refs": { + "DeleteStorageVirtualMachineResponse$Lifecycle": "Describes the lifecycle state of the SVM being deleted.
", + "StorageVirtualMachine$Lifecycle": "Describes the SVM's lifecycle status.
CREATED
- The SVM is fully available for use.
CREATING
- Amazon FSx is creating the new SVM.
DELETING
- Amazon FSx is deleting an existing SVM.
FAILED
- Amazon FSx was unable to create the SVM.
MISCONFIGURED
- The SVM is in a failed but recoverable state.
PENDING
- Amazon FSx has not started creating the SVM.
The name of the SVM.
", + "StorageVirtualMachine$Name": "The name of the SVM, if provisioned.
" + } + }, + "StorageVirtualMachineNotFound": { + "base": "No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters.
", + "refs": { + } + }, + "StorageVirtualMachineRootVolumeSecurityStyle": { + "base": null, + "refs": { + "CreateStorageVirtualMachineRequest$RootVolumeSecurityStyle": "The security style of the root volume of the SVM. Specify one of the following values:
UNIX
if the file system is managed by a UNIX administrator, the majority of users are NFS clients, and an application accessing the data uses a UNIX user as the service account.
NTFS
if the file system is managed by a Windows administrator, the majority of users are SMB clients, and an application accessing the data uses a Windows user as the service account.
MIXED
if the file system is managed by both UNIX and Windows administrators and users consist of both NFS and SMB clients.
The security style of the root volume of the SVM.
" + } + }, + "StorageVirtualMachineSubtype": { + "base": null, + "refs": { + "StorageVirtualMachine$Subtype": "Describes the SVM's subtype.
" + } + }, + "StorageVirtualMachines": { + "base": null, + "refs": { + "DescribeStorageVirtualMachinesResponse$StorageVirtualMachines": "Returned after a successful DescribeStorageVirtualMachines
operation, describing each SVM.
The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). For more information, see VPC and Subnets in the Amazon VPC User Guide.
", "refs": { - "CreateFileSystemWindowsConfiguration$PreferredSubnetId": "Required when DeploymentType
is set to MULTI_AZ_1
. This specifies the subnet in which you want the preferred file server to be located. For in-AWS applications, we recommend that you launch your clients in the same Availability Zone (AZ) as your preferred file server to reduce cross-AZ data transfer costs and minimize latency.
Required when DeploymentType
is set to MULTI_AZ_1
. This specifies the subnet in which you want the preferred file server to be located. For in-Amazon Web Services applications, we recommend that you launch your clients in the same Availability Zone (AZ) as your preferred file server to reduce cross-AZ data transfer costs and minimize latency.
The subnet ID that is either invalid or not part of the VPC specified.
", + "OntapFileSystemConfiguration$PreferredSubnetId": null, "SubnetIds$member": null, "WindowsFileSystemConfiguration$PreferredSubnetId": "For MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file server is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon FSx serves traffic from this subnet except in the event of a failover to the secondary file server.
For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that for SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
A list of subnet IDs. Currently, you can specify only one subnet ID in a call to the CreateFileSystem
operation.
Specifies the IDs of the subnets that the file system will be accessible from. For Windows MULTI_AZ_1
file system deployment types, provide exactly two subnet IDs, one for the preferred file server and one for the standby file server. You specify one of these subnets as the preferred subnet using the WindowsConfiguration > PreferredSubnetID
property.
For Windows SINGLE_AZ_1
and SINGLE_AZ_2
deployment types and Lustre file systems, provide exactly one subnet ID. The file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system will be accessible from. For Windows MULTI_AZ_1
file system deployment types, provide exactly two subnet IDs, one for the preferred file server and one for the standby file server. You specify one of these subnets as the preferred subnet using the WindowsConfiguration > PreferredSubnetID
property. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
For Windows SINGLE_AZ_1
and SINGLE_AZ_2
file system deployment types and Lustre file systems, provide exactly one subnet ID. The file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system is accessible from. For Windows MULTI_AZ_1
file system deployment type, there are two subnet IDs, one for the preferred file server and one for the standby file server. The preferred file server subnet identified in the PreferredSubnetID
property. All other file systems have only one subnet ID.
For Lustre file systems, and Single-AZ Windows file systems, this is the ID of the subnet that contains the endpoint for the file system. For MULTI_AZ_1
Windows file systems, the endpoint for the file system is available in the PreferredSubnetID
.
Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP MULTI_AZ_1
file system deployment types, provide exactly two subnet IDs, one for the preferred file server and one for the standby file server. You specify one of these subnets as the preferred subnet using the WindowsConfiguration > PreferredSubnetID
or OntapConfiguration > PreferredSubnetID
properties. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide and Availability and durability in the Amazon FSx for ONTAP User Guide.
For Windows SINGLE_AZ_1
and SINGLE_AZ_2
file system deployment types and Lustre file systems, provide exactly one subnet ID. The file server is launched in that subnet's Availability Zone.
Specifies the IDs of the subnets that the file system is accessible from. For Windows and ONTAP MULTI_AZ_1
file system deployment type, there are two subnet IDs, one for the preferred file server and one for the standby file server. The preferred file server subnet identified in the PreferredSubnetID
property. All other file systems have only one subnet ID.
For Lustre file systems, and Single-AZ Windows file systems, this is the ID of the subnet that contains the endpoint for the file system. For MULTI_AZ_1
Windows and ONTAP file systems, the endpoint for the file system is available in the PreferredSubnetID
.
A running total of the number of files that the task has successfully processed.
" } }, + "SvmActiveDirectoryConfiguration": { + "base": "Describes the configuration of the Microsoft Active Directory (AD) directory to which the Amazon FSx for ONTAP storage virtual machine (SVM) is joined. Pleae note, account credentials are not returned in the response payload.
", + "refs": { + "StorageVirtualMachine$ActiveDirectoryConfiguration": "Describes the Microsoft Active Directory configuration to which the SVM is joined, if applicable.
" + } + }, + "SvmEndpoint": { + "base": "An Amazon FSx for NetApp ONTAP storage virtual machine (SVM) has four endpoints that are used to access data or to manage the SVM using the NetApp ONTAP CLI, REST API, or NetApp CloudManager. They are the Iscsi
, Management
, Nfs
, and Smb
endpoints.
An endpoint for connecting using the Internet Small Computer Systems Interface (iSCSI) protocol.
", + "SvmEndpoints$Management": "An endpoint for managing SVMs using the NetApp ONTAP CLI, NetApp ONTAP API, or NetApp CloudManager.
", + "SvmEndpoints$Nfs": "An endpoint for connecting using the Network File System (NFS) protocol.
", + "SvmEndpoints$Smb": "An endpoint for connecting using the Server Message Block (SMB) protocol.
" + } + }, + "SvmEndpoints": { + "base": "An Amazon FSx for NetApp ONTAP storage virtual machine (SVM) has the following endpoints that are used to access data or to manage the SVM using the NetApp ONTAP CLI, REST API, or NetApp CloudManager.
", + "refs": { + "StorageVirtualMachine$Endpoints": "The endpoints that are used to access data or to manage the SVM using the NetApp ONTAP CLI, REST API, or NetApp CloudManager. They are the Iscsi
, Management
, Nfs
, and Smb
endpoints.
Specifies a key-value pair for a resource tag.
", "refs": { @@ -1184,14 +1603,21 @@ "CreateDataRepositoryTaskRequest$Tags": null, "CreateFileSystemFromBackupRequest$Tags": "The tags to be applied to the file system at file system creation. The key value of the Name
tag appears in the console as the file system name.
The tags to apply to the file system being created. The key value of the Name
tag appears in the console as the file system name.
Use if SkipFinalBackup
is set to false
, and you want to apply an array of tags to the final backup. If you have set the file system property CopyTagsToBackups
to true, and you specify one or more FinalBackupTags
when deleting a file system, Amazon FSx will not copy any existing file system tags to the backup.
The set of tags applied to the final backup.
", "DeleteFileSystemWindowsConfiguration$FinalBackupTags": "A set of tags for your final backup.
", "DeleteFileSystemWindowsResponse$FinalBackupTags": "The set of tags applied to the final backup.
", + "DeleteVolumeOntapConfiguration$FinalBackupTags": null, + "DeleteVolumeOntapResponse$FinalBackupTags": null, "FileSystem$Tags": "The tags to associate with the file system. For more information, see Tagging Your Amazon EC2 Resources in the Amazon EC2 User Guide.
", "ListTagsForResourceResponse$Tags": "A list of tags on the resource.
", - "TagResourceRequest$Tags": "A list of tags for the resource. If a tag with a given key already exists, the value is replaced by the one specified in this parameter.
" + "StorageVirtualMachine$Tags": null, + "TagResourceRequest$Tags": "A list of tags for the resource. If a tag with a given key already exists, the value is replaced by the one specified in this parameter.
", + "Volume$Tags": null } }, "TaskId": { @@ -1209,12 +1635,33 @@ "DescribeDataRepositoryTasksRequest$TaskIds": "(Optional) IDs of the tasks whose descriptions you want to retrieve (String).
" } }, + "TieringPolicy": { + "base": "Describes the data tiering policy for an ONTAP volume. When enabled, Amazon FSx for ONTAP's intelligent tiering automatically transitions a volume's data between the file system's primary storage and capacity pool storage based on your access patterns.
", + "refs": { + "CreateOntapVolumeConfiguration$TieringPolicy": null, + "OntapVolumeConfiguration$TieringPolicy": "The volume's TieringPolicy
setting.
Update the volume's data tiering policy.
" + } + }, + "TieringPolicyName": { + "base": null, + "refs": { + "TieringPolicy$Name": "Specifies the tiering policy used to transition data. Default value is SNAPSHOT_ONLY
.
SNAPSHOT_ONLY
- moves cold snapshots to the capacity pool storage tier.
AUTO
- moves cold user data and snapshots to the capacity pool storage tier based on your access patterns.
ALL
- moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier.
NONE
- keeps a volume's data in the primary storage tier, preventing it from being moved to the capacity pool tier.
The total number of files that the task will process. While a task is executing, the sum of SucceededCount
plus FailedCount
may not equal TotalCount
. When the task is complete, TotalCount
equals the sum of SucceededCount
plus FailedCount
.
The volume's UUID (universally unique identifier).
", + "StorageVirtualMachine$UUID": "The SVM's UUID (universally unique identifier).
" + } + }, "UnsupportedOperation": { "base": "The requested operation is not supported for this resource or API.
", "refs": { @@ -1236,6 +1683,12 @@ "UpdateFileSystemRequest$LustreConfiguration": null } }, + "UpdateFileSystemOntapConfiguration": { + "base": "The configuration updates for an Amazon FSx for NetApp ONTAP file system.
", + "refs": { + "UpdateFileSystemRequest$OntapConfiguration": null + } + }, "UpdateFileSystemRequest": { "base": "The request object for the UpdateFileSystem
operation.
The configuration updates for an Amazon FSx for Windows File Server file system.
" } }, + "UpdateOntapVolumeConfiguration": { + "base": "Used to specify changes to the ONTAP configuration for the volume you are updating.
", + "refs": { + "UpdateVolumeRequest$OntapConfiguration": "The ONTAP
configuration of the volume you are updating.
Updates the Microsoft Active Directory (AD) configuration of an SVM joined to an AD. Pleae note, account credentials are not returned in the response payload.
", + "refs": { + "UpdateStorageVirtualMachineRequest$ActiveDirectoryConfiguration": "Updates the Microsoft Active Directory (AD) configuration for an SVM that is joined to an AD.
" + } + }, + "UpdateVolumeRequest": { + "base": null, + "refs": { + } + }, + "UpdateVolumeResponse": { + "base": null, + "refs": { + } + }, + "Volume": { + "base": "Describes an Amazon FSx for NetApp ONTAP volume.
", + "refs": { + "AdministrativeAction$TargetVolumeValues": null, + "Backup$Volume": null, + "CreateVolumeFromBackupResponse$Volume": "Returned after a successful CreateVolumeFromBackup
API operation, describing the volume just created.
Returned after a successful CreateVolume
API operation, describing the volume just created.
Returned after a successful UpdateVolume
API operation, describing the volume just updated.
Specifies the size of the volume, in megabytes (MB), that you are creating.
", + "OntapVolumeConfiguration$SizeInMegabytes": "The configured size of the volume, in megabytes (MBs).
", + "UpdateOntapVolumeConfiguration$SizeInMegabytes": "Specifies the size of the volume in megabytes.
" + } + }, + "VolumeFilter": { + "base": "A filter used to restrict the results of describe calls for Amazon FSx for NetApp ONTAP volumes. You can use multiple filters to return results that meet all applied filter requirements.
", + "refs": { + "VolumeFilters$member": null + } + }, + "VolumeFilterName": { + "base": null, + "refs": { + "VolumeFilter$Name": "The name for this filter.
" + } + }, + "VolumeFilterValue": { + "base": null, + "refs": { + "VolumeFilterValues$member": null + } + }, + "VolumeFilterValues": { + "base": null, + "refs": { + "VolumeFilter$Values": "The values of the filter. These are all the values for any of the applied filters.
" + } + }, + "VolumeFilters": { + "base": null, + "refs": { + "DescribeVolumesRequest$Filters": "Enter a filter name:value pair to view a select set of volumes.
" + } + }, + "VolumeId": { + "base": null, + "refs": { + "CreateBackupRequest$VolumeId": "The ID of he FSx for NetApp ONTAP volume to back up.
", + "DeleteVolumeRequest$VolumeId": "The ID of the volume you are deleting.
", + "DeleteVolumeResponse$VolumeId": "The ID of the volume being deleted.
", + "UpdateVolumeRequest$VolumeId": "Specifies the volume that you want to update, formatted fsvol-0123456789abcdef0
.
The system-generated, unique ID of the volume.
", + "VolumeIds$member": null + } + }, + "VolumeIds": { + "base": null, + "refs": { + "DescribeVolumesRequest$VolumeIds": "IDs of the volumes whose descriptions you want to retrieve.
" + } + }, + "VolumeLifecycle": { + "base": null, + "refs": { + "DeleteVolumeResponse$Lifecycle": "Describes the lifecycle state of the volume being deleted.
", + "Volume$Lifecycle": "The lifecycle status of the volume.
CREATED
- The volume is fully available for use.
CREATING
- Amazon FSx is creating the new volume.
DELETING
- Amazon FSx is deleting an existing volume.
FAILED
- Amazon FSx was unable to create the volume.
MISCONFIGURED
- The volume is in a failed but recoverable state.
PENDING
- Amazon FSx has not started creating the volume.
The name of the new volume you're creating.
", + "CreateVolumeRequest$Name": "Specifies the name of the volume you're creating.
", + "Volume$Name": "The name of the volume.
" + } + }, + "VolumeNotFound": { + "base": "No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied parameters.
", + "refs": { + } + }, + "VolumeType": { + "base": null, + "refs": { + "CreateVolumeRequest$VolumeType": "Specifies the type of volume to create; ONTAP
is the only valid volume type.
The type of volume; ONTAP
is the only valid volume type.
Returned after a successful DescribeVolumes
operation, describing each volume.
The ID of your virtual private cloud (VPC). For more information, see VPC and Subnets in the Amazon VPC User Guide.
", "refs": { @@ -1262,9 +1846,12 @@ "base": "A recurring weekly time, in the format D:HH:MM
.
D
is the day of the week, for which 1 represents Monday and 7 represents Sunday. For further details, see the ISO-8601 spec as described on Wikipedia.
HH
is the zero-padded hour of the day (0-23), and MM
is the zero-padded minute of the hour.
For example, 1:05:00
specifies maintenance at 5 AM Monday.
(Optional) The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
", + "CreateFileSystemOntapConfiguration$WeeklyMaintenanceStartTime": null, "CreateFileSystemWindowsConfiguration$WeeklyMaintenanceStartTime": "The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
", "LustreFileSystemConfiguration$WeeklyMaintenanceStartTime": "The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
", + "OntapFileSystemConfiguration$WeeklyMaintenanceStartTime": null, "UpdateFileSystemLustreConfiguration$WeeklyMaintenanceStartTime": "(Optional) The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
", + "UpdateFileSystemOntapConfiguration$WeeklyMaintenanceStartTime": null, "UpdateFileSystemWindowsConfiguration$WeeklyMaintenanceStartTime": "The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. Where d is the weekday number, from 1 through 7, with 1 = Monday and 7 = Sunday.
", "WindowsFileSystemConfiguration$WeeklyMaintenanceStartTime": "The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
" } @@ -1294,7 +1881,7 @@ "WindowsDeploymentType": { "base": null, "refs": { - "CreateFileSystemWindowsConfiguration$DeploymentType": "Specifies the file system deployment type, valid values are the following:
MULTI_AZ_1
- Deploys a high availability file system that is configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability. You can only deploy a Multi-AZ file system in AWS Regions that have a minimum of three Availability Zones. Also supports HDD storage type
SINGLE_AZ_1
- (Default) Choose to deploy a file system that is configured for single AZ redundancy.
SINGLE_AZ_2
- The latest generation Single AZ file system. Specifies a file system that is configured for single AZ redundancy and supports HDD storage type.
For more information, see Availability and Durability: Single-AZ and Multi-AZ File Systems.
", + "CreateFileSystemWindowsConfiguration$DeploymentType": "Specifies the file system deployment type, valid values are the following:
MULTI_AZ_1
- Deploys a high availability file system that is configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability. You can only deploy a Multi-AZ file system in Amazon Web Services Regions that have a minimum of three Availability Zones. Also supports HDD storage type
SINGLE_AZ_1
- (Default) Choose to deploy a file system that is configured for single AZ redundancy.
SINGLE_AZ_2
- The latest generation Single AZ file system. Specifies a file system that is configured for single AZ redundancy and supports HDD storage type.
For more information, see Availability and Durability: Single-AZ and Multi-AZ File Systems.
", "WindowsFileSystemConfiguration$DeploymentType": "Specifies the file system deployment type, valid values are the following:
MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy, only supports SSD storage.
SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is configured for single AZ redundancy and supports SSD and HDD storage.
For more information, see Single-AZ and Multi-AZ File Systems.
" } }, diff --git a/models/apis/fsx/2018-03-01/paginators-1.json b/models/apis/fsx/2018-03-01/paginators-1.json index 000eb57d5e8..09207d5d179 100644 --- a/models/apis/fsx/2018-03-01/paginators-1.json +++ b/models/apis/fsx/2018-03-01/paginators-1.json @@ -19,6 +19,21 @@ "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults" + }, + "DescribeStorageVirtualMachines": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "DescribeVolumes": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListTagsForResource": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" } } } diff --git a/models/apis/lex-models/2017-04-19/api-2.json b/models/apis/lex-models/2017-04-19/api-2.json index 9d88d0220b8..f122319d5f1 100644 --- a/models/apis/lex-models/2017-04-19/api-2.json +++ b/models/apis/lex-models/2017-04-19/api-2.json @@ -2096,7 +2096,8 @@ "fr-FR", "fr-CA", "it-IT", - "ja-JP" + "ja-JP", + "ko-KR" ] }, "LocaleList":{ diff --git a/models/apis/quicksight/2018-04-01/api-2.json b/models/apis/quicksight/2018-04-01/api-2.json index d3ae957ffda..57ee8411a21 100644 --- a/models/apis/quicksight/2018-04-01/api-2.json +++ b/models/apis/quicksight/2018-04-01/api-2.json @@ -2460,6 +2460,17 @@ "max":16, "min":1 }, + "ColumnTagName":{ + "type":"string", + "enum":[ + "COLUMN_GEOGRAPHIC_ROLE", + "COLUMN_DESCRIPTION" + ] + }, + "ColumnTagNames":{ + "type":"list", + "member":{"shape":"ColumnTagName"} + }, "ConcurrentUpdatingException":{ "type":"structure", "members":{ @@ -2633,7 +2644,8 @@ "RowLevelPermissionDataSet":{"shape":"RowLevelPermissionDataSet"}, "RowLevelPermissionTagConfiguration":{"shape":"RowLevelPermissionTagConfiguration"}, "ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"} } }, "CreateDataSetResponse":{ @@ -3312,7 +3324,8 @@ "FieldFolders":{"shape":"FieldFolderMap"}, "RowLevelPermissionDataSet":{"shape":"RowLevelPermissionDataSet"}, "RowLevelPermissionTagConfiguration":{"shape":"RowLevelPermissionTagConfiguration"}, - "ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"} + "ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"}, + "DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"} } }, "DataSetArnsList":{ @@ -3385,6 +3398,13 @@ "type":"list", "member":{"shape":"DataSetSummary"} }, + "DataSetUsageConfiguration":{ + "type":"structure", + "members":{ + "DisableUseAsDirectQuerySource":{"shape":"Boolean"}, + "DisableUseAsImportedSource":{"shape":"Boolean"} + } + }, "DataSource":{ "type":"structure", "members":{ @@ -6591,7 +6611,8 @@ "type":"structure", "members":{ "JoinInstruction":{"shape":"JoinInstruction"}, - "PhysicalTableId":{"shape":"PhysicalTableId"} + "PhysicalTableId":{"shape":"PhysicalTableId"}, + "DataSetArn":{"shape":"Arn"} } }, "Long":{"type":"long"}, @@ -6787,7 +6808,7 @@ "key":{"shape":"PhysicalTableId"}, "value":{"shape":"PhysicalTable"}, "max":32, - "min":1 + "min":0 }, "Port":{ "type":"integer", @@ -7828,7 +7849,8 @@ "CreateColumnsOperation":{"shape":"CreateColumnsOperation"}, "RenameColumnOperation":{"shape":"RenameColumnOperation"}, "CastColumnTypeOperation":{"shape":"CastColumnTypeOperation"}, - "TagColumnOperation":{"shape":"TagColumnOperation"} + "TagColumnOperation":{"shape":"TagColumnOperation"}, + "UntagColumnOperation":{"shape":"UntagColumnOperation"} } }, "TransformOperationList":{ @@ -7891,6 +7913,17 @@ "error":{"httpStatusCode":403}, "exception":true }, + "UntagColumnOperation":{ + "type":"structure", + "required":[ + "ColumnName", + "TagNames" + ], + "members":{ + "ColumnName":{"shape":"ColumnName"}, + "TagNames":{"shape":"ColumnTagNames"} + } + }, "UntagResourceRequest":{ "type":"structure", "required":[ @@ -8222,7 +8255,8 @@ "FieldFolders":{"shape":"FieldFolderMap"}, "RowLevelPermissionDataSet":{"shape":"RowLevelPermissionDataSet"}, "RowLevelPermissionTagConfiguration":{"shape":"RowLevelPermissionTagConfiguration"}, - "ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"} + "ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"}, + "DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"} } }, "UpdateDataSetResponse":{ diff --git a/models/apis/quicksight/2018-04-01/docs-2.json b/models/apis/quicksight/2018-04-01/docs-2.json index e8ed906aaf0..44c56e3536c 100644 --- a/models/apis/quicksight/2018-04-01/docs-2.json +++ b/models/apis/quicksight/2018-04-01/docs-2.json @@ -3,24 +3,24 @@ "service": "Amazon QuickSight is a fully managed, serverless business intelligence service for the Amazon Web Services Cloud that makes it easy to extend data and insights to every user in your organization. This API reference contains documentation for a programming interface that you can use to manage Amazon QuickSight.
", "operations": { "CancelIngestion": "Cancels an ongoing ingestion of data into SPICE.
", - "CreateAccountCustomization": "Creates Amazon QuickSight customizations the current Amazon Web Services Region;. Currently, you can add a custom default theme by using the CreateAccountCustomization
or UpdateAccountCustomization
API operation. To further customize QuickSight by removing QuickSight sample assets and videos for all new users, see Customizing QuickSight in the Amazon QuickSight User Guide.
You can create customizations for your Amazon Web Services account; or, if you specify a namespace, for a QuickSight namespace instead. Customizations that apply to a namespace always override customizations that apply to an Amazon Web Services account;. To find out which customizations apply, use the DescribeAccountCustomization
API operation.
Before you use the CreateAccountCustomization
API operation to add a theme as the namespace default, make sure that you first share the theme with the namespace. If you don't share it with the namespace, the theme isn't visible to your users even if you make it the default theme. To check if the theme is shared, view the current permissions by using the DescribeThemePermissions
API operation. To share the theme, grant permissions by using the UpdateThemePermissions
API operation.
Creates Amazon QuickSight customizations the current Amazon Web Services Region;. Currently, you can add a custom default theme by using the CreateAccountCustomization
or UpdateAccountCustomization
API operation. To further customize Amazon QuickSight by removing Amazon QuickSight sample assets and videos for all new users, see Customizing Amazon QuickSight in the Amazon QuickSight User Guide.
You can create customizations for your Amazon Web Services account or, if you specify a namespace, for a Amazon QuickSight namespace instead. Customizations that apply to a namespace always override customizations that apply to an Amazon Web Services account. To find out which customizations apply, use the DescribeAccountCustomization
API operation.
Before you use the CreateAccountCustomization
API operation to add a theme as the namespace default, make sure that you first share the theme with the namespace. If you don't share it with the namespace, the theme isn't visible to your users even if you make it the default theme. To check if the theme is shared, view the current permissions by using the DescribeThemePermissions
API operation. To share the theme, grant permissions by using the UpdateThemePermissions
API operation.
Creates an analysis in Amazon QuickSight.
", - "CreateDashboard": "Creates a dashboard from a template. To first create a template, see the CreateTemplate
API operation.
A dashboard is an entity in QuickSight that identifies QuickSight reports, created from analyses. You can share QuickSight dashboards. With the right permissions, you can create scheduled email reports from them. If you have the correct permissions, you can create a dashboard from a template that exists in a different Amazon Web Services account;.
", + "CreateDashboard": "Creates a dashboard from a template. To first create a template, see the CreateTemplate
API operation.
A dashboard is an entity in Amazon QuickSight that identifies Amazon QuickSight reports, created from analyses. You can share Amazon QuickSight dashboards. With the right permissions, you can create scheduled email reports from them. If you have the correct permissions, you can create a dashboard from a template that exists in a different Amazon Web Services account.
", "CreateDataSet": "Creates a dataset.
", "CreateDataSource": "Creates a data source.
", "CreateFolder": "Creates an empty shared folder.
", "CreateFolderMembership": "Adds an asset, such as a dashboard, analysis, or dataset into a folder.
", "CreateGroup": "Creates an Amazon QuickSight group.
The permissions resource is arn:aws:quicksight:us-east-1:<relevant-aws-account-id>:group/default/<group-name>
.
The response is a group object.
", "CreateGroupMembership": "Adds an Amazon QuickSight user to an Amazon QuickSight group.
", - "CreateIAMPolicyAssignment": "Creates an assignment with one specified IAM policy, identified by its Amazon Resource Name (ARN). This policy assignment is attached to the specified groups or users of Amazon QuickSight. Assignment names are unique per Amazon Web Services account;. To avoid overwriting rules in other namespaces, use assignment names that are unique.
", + "CreateIAMPolicyAssignment": "Creates an assignment with one specified IAMpolicy, identified by its Amazon Resource Name (ARN). This policy assignment is attached to the specified groups or users of Amazon QuickSight. Assignment names are unique per Amazon Web Services account. To avoid overwriting rules in other namespaces, use assignment names that are unique.
", "CreateIngestion": "Creates and starts a new SPICE ingestion on a dataset
Any ingestions operating on tagged datasets inherit the same tags automatically for use in access control. For an example, see How do I create an IAM policy to control access to Amazon EC2 resources using tags? in the Amazon Web Services Knowledge Center. Tags are visible on the tagged dataset, but not on the ingestion resource.
", - "CreateNamespace": "(Enterprise edition only) Creates a new namespace for you to use with Amazon QuickSight.
A namespace allows you to isolate the QuickSight users and groups that are registered for that namespace. Users that access the namespace can share assets only with other users or groups in the same namespace. They can't see users and groups in other namespaces. You can create a namespace after your Amazon Web Services account; is subscribed to QuickSight. The namespace must be unique within the Amazon Web Services account;. By default, there is a limit of 100 namespaces per Amazon Web Services account;. To increase your limit, create a ticket with Amazon Web Services Support.
", - "CreateTemplate": "Creates a template from an existing Amazon QuickSight analysis or template. You can use the resulting template to create a dashboard.
A template is an entity in QuickSight that encapsulates the metadata required to create an analysis and that you can use to create s dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with the analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.
", + "CreateNamespace": "(Enterprise edition only) Creates a new namespace for you to use with Amazon QuickSight.
A namespace allows you to isolate the Amazon QuickSight users and groups that are registered for that namespace. Users that access the namespace can share assets only with other users or groups in the same namespace. They can't see users and groups in other namespaces. You can create a namespace after your Amazon Web Services account is subscribed to Amazon QuickSight. The namespace must be unique within the Amazon Web Services account. By default, there is a limit of 100 namespaces per Amazon Web Services account. To increase your limit, create a ticket with Amazon Web Services Support.
", + "CreateTemplate": "Creates a template from an existing Amazon QuickSight analysis or template. You can use the resulting template to create a dashboard.
A template is an entity in Amazon QuickSight that encapsulates the metadata required to create an analysis and that you can use to create s dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with the analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.
", "CreateTemplateAlias": "Creates a template alias for a template.
", "CreateTheme": "Creates a theme.
A theme is set of configuration options for color and layout. Themes apply to analyses and dashboards. For more information, see Using Themes in Amazon QuickSight in the Amazon QuickSight User Guide.
", "CreateThemeAlias": "Creates a theme alias for a theme.
", - "DeleteAccountCustomization": "Deletes all Amazon QuickSight customizations in this Amazon Web Services Region; for the specified Amazon Web Services account; and QuickSight namespace.
", - "DeleteAnalysis": "Deletes an analysis from Amazon QuickSight. You can optionally include a recovery window during which you can restore the analysis. If you don't specify a recovery window value, the operation defaults to 30 days. QuickSight attaches a DeletionTime
stamp to the response that specifies the end of the recovery window. At the end of the recovery window, QuickSight deletes the analysis permanently.
At any time before recovery window ends, you can use the RestoreAnalysis
API operation to remove the DeletionTime
stamp and cancel the deletion of the analysis. The analysis remains visible in the API until it's deleted, so you can describe it but you can't make a template from it.
An analysis that's scheduled for deletion isn't accessible in the QuickSight console. To access it in the console, restore it. Deleting an analysis doesn't delete the dashboards that you publish from it.
", + "DeleteAccountCustomization": "Deletes all Amazon QuickSight customizations in this Amazon Web Services Region; for the specified Amazon Web Services account and Amazon QuickSight namespace.
", + "DeleteAnalysis": "Deletes an analysis from Amazon QuickSight. You can optionally include a recovery window during which you can restore the analysis. If you don't specify a recovery window value, the operation defaults to 30 days. Amazon QuickSight attaches a DeletionTime
stamp to the response that specifies the end of the recovery window. At the end of the recovery window, Amazon QuickSight deletes the analysis permanently.
At any time before recovery window ends, you can use the RestoreAnalysis
API operation to remove the DeletionTime
stamp and cancel the deletion of the analysis. The analysis remains visible in the API until it's deleted, so you can describe it but you can't make a template from it.
An analysis that's scheduled for deletion isn't accessible in the Amazon QuickSight console. To access it in the console, restore it. Deleting an analysis doesn't delete the dashboards that you publish from it.
", "DeleteDashboard": "Deletes a dashboard.
", "DeleteDataSet": "Deletes a dataset.
", "DeleteDataSource": "Deletes the data source permanently. This operation breaks all the datasets that reference the deleted data source.
", @@ -28,7 +28,7 @@ "DeleteFolderMembership": "Removes an asset, such as a dashboard, analysis, or dataset, from a folder.
", "DeleteGroup": "Removes a user group from Amazon QuickSight.
", "DeleteGroupMembership": "Removes a user from a group so that the user is no longer a member of the group.
", - "DeleteIAMPolicyAssignment": "Deletes an existing IAM policy assignment.
", + "DeleteIAMPolicyAssignment": "Deletes an existing IAMpolicy assignment.
", "DeleteNamespace": "Deletes a namespace and the users and groups that are associated with the namespace. This is an asynchronous process. Assets including dashboards, analyses, datasets and data sources are not deleted. To delete these assets, you use the API operations for the relevant asset.
", "DeleteTemplate": "Deletes a template.
", "DeleteTemplateAlias": "Deletes the item that the specified template alias points to. If you provide a specific alias, you delete the version of the template that the alias points to.
", @@ -36,8 +36,8 @@ "DeleteThemeAlias": "Deletes the version of the theme that the specified theme alias points to. If you provide a specific alias, you delete the version of the theme that the alias points to.
", "DeleteUser": "Deletes the Amazon QuickSight user that is associated with the identity of the Identity and Access Management (IAM) user or role that's making the call. The IAM user isn't deleted as a result of this call.
", "DeleteUserByPrincipalId": "Deletes a user identified by its principal ID.
", - "DescribeAccountCustomization": "Describes the customizations associated with the provided Amazon Web Services account; and Amazon QuickSight namespace in an Amazon Web Services Region;. The QuickSight console evaluates which customizations to apply by running this API operation with the Resolved
flag included.
To determine what customizations display when you run this command, it can help to visualize the relationship of the entities involved.
Amazon Web Services account;
- The Amazon Web Services account; exists at the top of the hierarchy. It has the potential to use all of the Amazon Web Services Regions; and AWS Services. When you subscribe to QuickSight, you choose one Amazon Web Services Region; to use as your home Region. That's where your free SPICE capacity is located. You can use QuickSight in any supported Amazon Web Services Region;.
Amazon Web Services Region;
- In each Amazon Web Services Region; where you sign in to QuickSight at least once, QuickSight acts as a separate instance of the same service. If you have a user directory, it resides in us-east-1, which is the US East (N. Virginia). Generally speaking, these users have access to QuickSight in any Amazon Web Services Region;, unless they are constrained to a namespace.
To run the command in a different Amazon Web Services Region;, you change your Region settings. If you're using the AWS CLI, you can use one of the following options:
Use command line options.
Use named profiles.
Run aws configure
to change your default Amazon Web Services Region;. Use Enter to key the same settings for your keys. For more information, see Configuring the AWS CLI.
Namespace
- A QuickSight namespace is a partition that contains users and assets (data sources, datasets, dashboards, and so on). To access assets that are in a specific namespace, users and groups must also be part of the same namespace. People who share a namespace are completely isolated from users and assets in other namespaces, even if they are in the same Amazon Web Services account; and Amazon Web Services Region;.
Applied customizations
- Within an Amazon Web Services Region;, a set of QuickSight customizations can apply to an Amazon Web Services account; or to a namespace. Settings that you apply to a namespace override settings that you apply to an Amazon Web Services account;. All settings are isolated to a single Amazon Web Services Region;. To apply them in other Amazon Web Services Regions;, run the CreateAccountCustomization
command in each Amazon Web Services Region; where you want to apply the same customizations.
Describes the settings that were used when your QuickSight subscription was first created in this Amazon Web Services account;.
", + "DescribeAccountCustomization": "Describes the customizations associated with the provided Amazon Web Services account and Amazon Amazon QuickSight namespace in an Amazon Web Services Region;. The Amazon QuickSight console evaluates which customizations to apply by running this API operation with the Resolved
flag included.
To determine what customizations display when you run this command, it can help to visualize the relationship of the entities involved.
Amazon Web Services account
- The Amazon Web Services account exists at the top of the hierarchy. It has the potential to use all of the Amazon Web Services Regions; and AWS Services. When you subscribe to Amazon QuickSight, you choose one Amazon Web Services Region; to use as your home Region. That's where your free SPICE capacity is located. You can use Amazon QuickSight in any supported Amazon Web Services Region;.
Amazon Web Services Region;
- In each Amazon Web Services Region; where you sign in to Amazon QuickSight at least once, Amazon QuickSight acts as a separate instance of the same service. If you have a user directory, it resides in us-east-1, which is the US East (N. Virginia). Generally speaking, these users have access to Amazon QuickSight in any Amazon Web Services Region;, unless they are constrained to a namespace.
To run the command in a different Amazon Web Services Region;, you change your Region settings. If you're using the AWS CLI, you can use one of the following options:
Use command line options.
Use named profiles.
Run aws configure
to change your default Amazon Web Services Region;. Use Enter to key the same settings for your keys. For more information, see Configuring the AWS CLI.
Namespace
- A Amazon QuickSight namespace is a partition that contains users and assets (data sources, datasets, dashboards, and so on). To access assets that are in a specific namespace, users and groups must also be part of the same namespace. People who share a namespace are completely isolated from users and assets in other namespaces, even if they are in the same Amazon Web Services account and Amazon Web Services Region;.
Applied customizations
- Within an Amazon Web Services Region;, a set of Amazon QuickSight customizations can apply to an Amazon Web Services account or to a namespace. Settings that you apply to a namespace override settings that you apply to an Amazon Web Services account. All settings are isolated to a single Amazon Web Services Region;. To apply them in other Amazon Web Services Regions;, run the CreateAccountCustomization
command in each Amazon Web Services Region; where you want to apply the same customizations.
Describes the settings that were used when your Amazon QuickSight subscription was first created in this Amazon Web Services account.
", "DescribeAnalysis": "Provides a summary of the metadata for an analysis.
", "DescribeAnalysisPermissions": "Provides the read and write permissions for an analysis.
", "DescribeDashboard": "Provides a summary for a dashboard.
", @@ -50,7 +50,7 @@ "DescribeFolderPermissions": "Describes permissions for a folder.
", "DescribeFolderResolvedPermissions": "Describes the folder resolved permissions. Permissions consists of both folder direct permissions and the inherited permissions from the ancestor folders.
", "DescribeGroup": "Returns an Amazon QuickSight group's description and Amazon Resource Name (ARN).
", - "DescribeIAMPolicyAssignment": "Describes an existing IAM policy assignment, as specified by the assignment name.
", + "DescribeIAMPolicyAssignment": "Describes an existing IAMpolicy assignment, as specified by the assignment name.
", "DescribeIngestion": "Describes a SPICE ingestion.
", "DescribeNamespace": "Describes the current namespace.
", "DescribeTemplate": "Describes a template's metadata.
", @@ -62,28 +62,28 @@ "DescribeUser": "Returns information about a user, given the user name.
", "GenerateEmbedUrlForAnonymousUser": "Generates an embed URL that you can use to embed an Amazon QuickSight dashboard in your website, without having to register any reader users. Before you use this action, make sure that you have configured the dashboards and permissions.
The following rules apply to the generated URL:
It contains a temporary bearer token. It is valid for 5 minutes after it is generated. Once redeemed within this period, it cannot be re-used again.
The URL validity period should not be confused with the actual session lifetime that can be customized using the SessionLifetimeInMinutes
parameter.
The resulting user session is valid for 15 minutes (default) to 10 hours (maximum).
You are charged only when the URL is used or there is interaction with Amazon QuickSight.
For more information, see Embedded Analytics in the Amazon QuickSight User Guide.
For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.
", "GenerateEmbedUrlForRegisteredUser": "Generates an embed URL that you can use to embed an Amazon QuickSight experience in your website. This action can be used for any type of user registered in an Amazon QuickSight account. Before you use this action, make sure that you have configured the relevant Amazon QuickSight resource and permissions.
The following rules apply to the generated URL:
It contains a temporary bearer token. It is valid for 5 minutes after it is generated. Once redeemed within this period, it cannot be re-used again.
The URL validity period should not be confused with the actual session lifetime that can be customized using the SessionLifetimeInMinutes
parameter.
The resulting user session is valid for 15 minutes (default) to 10 hours (maximum).
You are charged only when the URL is used or there is interaction with Amazon QuickSight.
For more information, see Embedded Analytics in the Amazon QuickSight User Guide.
For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.
", - "GetDashboardEmbedUrl": "Generates a session URL and authorization code that you can use to embed an Amazon QuickSight read-only dashboard in your web server code. Before you use this command, make sure that you have configured the dashboards and permissions.
Currently, you can use GetDashboardEmbedURL
only from the server, not from the user's browser. The following rules apply to the combination of URL and authorization code:
They must be used together.
They can be used one time only.
They are valid for 5 minutes after you run this command.
The resulting user session is valid for 10 hours.
For more information, see Embedding Analytics Using GetDashboardEmbedUrl in the Amazon QuickSight User Guide.
For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.
", - "GetSessionEmbedUrl": "Generates a session URL and authorization code that you can use to embed the Amazon QuickSight console in your web server code. Use GetSessionEmbedUrl
where you want to provide an authoring portal that allows users to create data sources, datasets, analyses, and dashboards. The users who access an embedded QuickSight console need belong to the author or admin security cohort. If you want to restrict permissions to some of these features, add a custom permissions profile to the user with the UpdateUser
API operation. Use RegisterUser
API operation to add a new user with a custom permission profile attached. For more information, see the following sections in the Amazon QuickSight User Guide:
Lists Amazon QuickSight analyses that exist in the specified Amazon Web Services account;.
", - "ListDashboardVersions": "Lists all the versions of the dashboards in the QuickSight subscription.
", - "ListDashboards": "Lists dashboards in an Amazon Web Services account;.
", - "ListDataSets": "Lists all of the datasets belonging to the current Amazon Web Services account; in an Amazon Web Services Region;.
The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/*
.
Lists data sources in current Amazon Web Services Region; that belong to this Amazon Web Services account;.
", + "GetDashboardEmbedUrl": "Generates a session URL and authorization code that you can use to embed an Amazon Amazon QuickSight read-only dashboard in your web server code. Before you use this command, make sure that you have configured the dashboards and permissions.
Currently, you can use GetDashboardEmbedURL
only from the server, not from the user's browser. The following rules apply to the combination of URL and authorization code:
They must be used together.
They can be used one time only.
They are valid for 5 minutes after you run this command.
The resulting user session is valid for 10 hours.
For more information, see Embedding Analytics Using GetDashboardEmbedUrl in the Amazon QuickSight User Guide.
For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.
", + "GetSessionEmbedUrl": "Generates a session URL and authorization code that you can use to embed the Amazon Amazon QuickSight console in your web server code. Use GetSessionEmbedUrl
where you want to provide an authoring portal that allows users to create data sources, datasets, analyses, and dashboards. The users who access an embedded Amazon QuickSight console need belong to the author or admin security cohort. If you want to restrict permissions to some of these features, add a custom permissions profile to the user with the UpdateUser
API operation. Use RegisterUser
API operation to add a new user with a custom permission profile attached. For more information, see the following sections in the Amazon QuickSight User Guide:
Lists Amazon QuickSight analyses that exist in the specified Amazon Web Services account.
", + "ListDashboardVersions": "Lists all the versions of the dashboards in the Amazon QuickSight subscription.
", + "ListDashboards": "Lists dashboards in an Amazon Web Services account.
", + "ListDataSets": "Lists all of the datasets belonging to the current Amazon Web Services account in an Amazon Web Services Region;.
The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/*
.
Lists data sources in current Amazon Web Services Region; that belong to this Amazon Web Services account.
", "ListFolderMembers": "List all assets (DASHBOARD
, ANALYSIS
, and DATASET
) in a folder.
Lists all folders in an account.
", "ListGroupMemberships": "Lists member users in a group.
", "ListGroups": "Lists all user groups in Amazon QuickSight.
", - "ListIAMPolicyAssignments": "Lists IAM policy assignments in the current Amazon QuickSight account.
", - "ListIAMPolicyAssignmentsForUser": "Lists all the IAM policy assignments, including the Amazon Resource Names (ARNs) for the IAM policies assigned to the specified user and group or groups that the user belongs to.
", + "ListIAMPolicyAssignments": "Lists IAMpolicy assignments in the current Amazon QuickSight account.
", + "ListIAMPolicyAssignmentsForUser": "Lists all the IAMpolicy assignments, including the Amazon Resource Names (ARNs) for the IAM policies assigned to the specified user and group or groups that the user belongs to.
", "ListIngestions": "Lists the history of SPICE ingestions for a dataset.
", - "ListNamespaces": "Lists the namespaces for the specified Amazon Web Services account;.
", + "ListNamespaces": "Lists the namespaces for the specified Amazon Web Services account.
", "ListTagsForResource": "Lists the tags assigned to a resource.
", "ListTemplateAliases": "Lists all the aliases of a template.
", "ListTemplateVersions": "Lists all the versions of the templates in the current Amazon QuickSight account.
", "ListTemplates": "Lists all the templates in the current Amazon QuickSight account.
", "ListThemeAliases": "Lists all the aliases of a theme.
", - "ListThemeVersions": "Lists all the versions of the themes in the current Amazon Web Services account;.
", - "ListThemes": "Lists all the themes in the current Amazon Web Services account;.
", + "ListThemeVersions": "Lists all the versions of the themes in the current Amazon Web Services account.
", + "ListThemes": "Lists all the themes in the current Amazon Web Services account.
", "ListUserGroups": "Lists the Amazon QuickSight groups that an Amazon QuickSight user is a member of.
", "ListUsers": "Returns a list of all of the Amazon QuickSight users belonging to this account.
", "RegisterUser": "Creates an Amazon QuickSight user, whose identity is associated with the AWS Identity and Access Management (IAM) identity or role specified in the request.
", @@ -91,13 +91,13 @@ "SearchAnalyses": "Searches for analyses that belong to the user specified in the filter.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
Searches for dashboards that belong to a user.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
Searches the subfolders in a folder.
", - "TagResource": "Assigns one or more tags (key-value pairs) to the specified QuickSight resource.
Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource
operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.
You can associate as many as 50 tags with a resource. QuickSight supports tagging on data set, data source, dashboard, and template.
Tagging for QuickSight works in a similar way to tagging for other AWS services, except for the following:
You can't use tags to track AWS costs for QuickSight. This restriction is because QuickSight costs are based on users and SPICE capacity, which aren't taggable resources.
QuickSight doesn't currently support the Tag Editor for Resource Groups.
Assigns one or more tags (key-value pairs) to the specified Amazon QuickSight resource.
Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource
operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.
You can associate as many as 50 tags with a resource. Amazon QuickSight supports tagging on data set, data source, dashboard, and template.
Tagging for Amazon QuickSight works in a similar way to tagging for other AWS services, except for the following:
You can't use tags to track AWS costs for Amazon QuickSight. This restriction is because Amazon QuickSight costs are based on users and SPICE capacity, which aren't taggable resources.
Amazon QuickSight doesn't currently support the Tag Editor for Resource Groups.
Removes a tag or tags from a resource.
", - "UpdateAccountCustomization": "Updates Amazon QuickSight customizations the current Amazon Web Services Region;. Currently, the only customization you can use is a theme.
You can use customizations for your Amazon Web Services account; or, if you specify a namespace, for a QuickSight namespace instead. Customizations that apply to a namespace override customizations that apply to an Amazon Web Services account;. To find out which customizations apply, use the DescribeAccountCustomization
API operation.
Updates the Amazon QuickSight settings in your Amazon Web Services account;.
", + "UpdateAccountCustomization": "Updates Amazon QuickSight customizations the current Amazon Web Services Region;. Currently, the only customization you can use is a theme.
You can use customizations for your Amazon Web Services account or, if you specify a namespace, for a Amazon QuickSight namespace instead. Customizations that apply to a namespace override customizations that apply to an Amazon Web Services account. To find out which customizations apply, use the DescribeAccountCustomization
API operation.
Updates the Amazon QuickSight settings in your Amazon Web Services account.
", "UpdateAnalysis": "Updates an analysis in Amazon QuickSight
", "UpdateAnalysisPermissions": "Updates the read and write permissions for an analysis.
", - "UpdateDashboard": "Updates a dashboard in an Amazon Web Services account;.
Updating a Dashboard creates a new dashboard version but does not immediately publish the new version. You can update the published version of a dashboard by using the UpdateDashboardPublishedVersion API operation.
Updates a dashboard in an Amazon Web Services account.
Updating a Dashboard creates a new dashboard version but does not immediately publish the new version. You can update the published version of a dashboard by using the UpdateDashboardPublishedVersion API operation.
Updates read and write permissions on a dashboard.
", "UpdateDashboardPublishedVersion": "Updates the published version of a dashboard.
", "UpdateDataSet": "Updates a dataset.
", @@ -107,7 +107,7 @@ "UpdateFolder": "Updates the name of a folder.
", "UpdateFolderPermissions": "Updates permissions of a folder.
", "UpdateGroup": "Changes a group description.
", - "UpdateIAMPolicyAssignment": "Updates an existing IAM policy assignment. This operation updates only the optional parameter or parameters that are specified in the request. This overwrites all of the users included in Identities
.
Updates an existing IAMpolicy assignment. This operation updates only the optional parameter or parameters that are specified in the request. This overwrites all of the users included in Identities
.
Updates a template from an existing Amazon QuickSight analysis or another template.
", "UpdateTemplateAlias": "Updates the template alias of a template.
", "UpdateTemplatePermissions": "Updates the resource permissions for a template.
", @@ -123,25 +123,25 @@ } }, "AccountCustomization": { - "base": "The Amazon QuickSight customizations associated with your Amazon Web Services account; or a QuickSight namespace in a specific Amazon Web Services Region;.
", + "base": "The Amazon QuickSight customizations associated with your Amazon Web Services account or a Amazon QuickSight namespace in a specific Amazon Web Services Region;.
", "refs": { - "CreateAccountCustomizationRequest$AccountCustomization": "The QuickSight customizations you're adding in the current Amazon Web Services Region;. You can add these to an Amazon Web Services account; and a QuickSight namespace.
For example, you can add a default theme by setting AccountCustomization
to the midnight theme: \"AccountCustomization\": { \"DefaultTheme\": \"arn:aws:quicksight::aws:theme/MIDNIGHT\" }
. Or, you can add a custom theme by specifying \"AccountCustomization\": { \"DefaultTheme\": \"arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639\" }
.
The QuickSight customizations you're adding in the current Amazon Web Services Region;.
", - "DescribeAccountCustomizationResponse$AccountCustomization": "The QuickSight customizations that exist in the current Amazon Web Services Region;.
", - "UpdateAccountCustomizationRequest$AccountCustomization": "The QuickSight customizations you're updating in the current Amazon Web Services Region;.
", - "UpdateAccountCustomizationResponse$AccountCustomization": "The QuickSight customizations you're updating in the current Amazon Web Services Region;.
" + "CreateAccountCustomizationRequest$AccountCustomization": "The Amazon QuickSight customizations you're adding in the current Amazon Web Services Region;. You can add these to an Amazon Web Services account and a Amazon QuickSight namespace.
For example, you can add a default theme by setting AccountCustomization
to the midnight theme: \"AccountCustomization\": { \"DefaultTheme\": \"arn:aws:quicksight::aws:theme/MIDNIGHT\" }
. Or, you can add a custom theme by specifying \"AccountCustomization\": { \"DefaultTheme\": \"arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639\" }
.
The Amazon QuickSight customizations you're adding in the current Amazon Web Services Region;.
", + "DescribeAccountCustomizationResponse$AccountCustomization": "The Amazon QuickSight customizations that exist in the current Amazon Web Services Region;.
", + "UpdateAccountCustomizationRequest$AccountCustomization": "The Amazon QuickSight customizations you're updating in the current Amazon Web Services Region;.
", + "UpdateAccountCustomizationResponse$AccountCustomization": "The Amazon QuickSight customizations you're updating in the current Amazon Web Services Region;.
" } }, "AccountSettings": { - "base": "The QuickSight settings associated with your Amazon Web Services account;.
", + "base": "The Amazon QuickSight settings associated with your Amazon Web Services account.
", "refs": { - "DescribeAccountSettingsResponse$AccountSettings": "The QuickSight settings for this Amazon Web Services account;. This information includes the edition of Amazon QuickSight that you subscribed to (Standard or Enterprise) and the notification email for the QuickSight subscription. In the QuickSight console, the QuickSight subscription is sometimes referred to as a QuickSight \"account\" even though it's technically not an account by itself. Instead, it's a subscription to the QuickSight service for your Amazon Web Services account;. The edition that you subscribe to applies to QuickSight in every Amazon Web Services Region; where you use it.
" + "DescribeAccountSettingsResponse$AccountSettings": "The Amazon QuickSight settings for this Amazon Web Services account. This information includes the edition of Amazon Amazon QuickSight that you subscribed to (Standard or Enterprise) and the notification email for the Amazon QuickSight subscription. In the Amazon QuickSight console, the Amazon QuickSight subscription is sometimes referred to as a Amazon QuickSight \"account\" even though it's technically not an account by itself. Instead, it's a subscription to the Amazon QuickSight service for your Amazon Web Services account. The edition that you subscribe to applies to Amazon QuickSight in every Amazon Web Services Region; where you use it.
" } }, "ActionList": { "base": null, "refs": { - "ResourcePermission$Actions": "The IAM action to grant or revoke permissions on.
" + "ResourcePermission$Actions": "The IAMaction to grant or revoke permissions on.
" } }, "ActiveIAMPolicyAssignment": { @@ -165,7 +165,7 @@ "AdditionalDashboardIdList": { "base": null, "refs": { - "GetDashboardEmbedUrlRequest$AdditionalDashboardIds": "A list of one or more dashboard IDs that you want to add to a session that includes anonymous users. The IdentityType
parameter must be set to ANONYMOUS
for this to work, because other identity types authenticate as QuickSight or IAM users. For example, if you set \"--dashboard-id dash_id1 --dashboard-id dash_id2 dash_id3 identity-type ANONYMOUS
\", the session can access all three dashboards.
A list of one or more dashboard IDs that you want to add to a session that includes anonymous users. The IdentityType
parameter must be set to ANONYMOUS
for this to work, because other identity types authenticate as Amazon QuickSight or IAMusers. For example, if you set \"--dashboard-id dash_id1 --dashboard-id dash_id2 dash_id3 identity-type ANONYMOUS
\", the session can access all three dashboards.
Amazon Elasticsearch Service parameters.
", + "base": "The parameters for Elasticsearch.
", "refs": { - "DataSourceParameters$AmazonElasticsearchParameters": "Amazon Elasticsearch Service parameters.
" + "DataSourceParameters$AmazonElasticsearchParameters": "The parameters for Elasticsearch.
" } }, "Analysis": { @@ -201,7 +201,7 @@ } }, "AnalysisError": { - "base": "A metadata error structure for an analysis.
", + "base": "Analysis error.
", "refs": { "AnalysisErrorList$member": null } @@ -228,9 +228,9 @@ "base": null, "refs": { "Analysis$Name": "The descriptive name of the analysis.
", - "AnalysisSummary$Name": "The name of the analysis. This name is displayed in the QuickSight console.
", - "CreateAnalysisRequest$Name": "A descriptive name for the analysis that you're creating. This name displays for the analysis in the QuickSight console.
", - "UpdateAnalysisRequest$Name": "A descriptive name for the analysis that you're updating. This name displays for the analysis in the QuickSight console.
" + "AnalysisSummary$Name": "The name of the analysis. This name is displayed in the Amazon QuickSight console.
", + "CreateAnalysisRequest$Name": "A descriptive name for the analysis that you're creating. This name displays for the analysis in the Amazon QuickSight console.
", + "UpdateAnalysisRequest$Name": "A descriptive name for the analysis that you're updating. This name displays for the analysis in the Amazon QuickSight console.
" } }, "AnalysisSearchFilter": { @@ -286,7 +286,7 @@ "Arn": { "base": null, "refs": { - "AccountCustomization$DefaultTheme": "The default theme for this QuickSight subscription.
", + "AccountCustomization$DefaultTheme": "The default theme for this Amazon QuickSight subscription.
", "ActiveIAMPolicyAssignment$PolicyArn": "The Amazon Resource Name (ARN) of the resource.
", "Analysis$Arn": "The Amazon Resource Name (ARN) of the analysis.
", "Analysis$ThemeArn": "The ARN of the theme of the analysis.
", @@ -294,10 +294,10 @@ "AnalysisSummary$Arn": "The Amazon Resource Name (ARN) for the analysis.
", "ArnList$member": null, "CancelIngestionResponse$Arn": "The Amazon Resource Name (ARN) for the data ingestion.
", - "CreateAccountCustomizationResponse$Arn": "The Amazon Resource Name (ARN) for the customization that you created for this Amazon Web Services account;.
", - "CreateAnalysisRequest$ThemeArn": "The ARN for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.
", + "CreateAccountCustomizationResponse$Arn": "The Amazon Resource Name (ARN) for the customization that you created for this Amazon Web Services account.
", + "CreateAnalysisRequest$ThemeArn": "The ARN for the theme to apply to the analysis that you're creating. To see the theme in the Amazon QuickSight console, make sure that you have access to it.
", "CreateAnalysisResponse$Arn": "The ARN for the analysis.
", - "CreateDashboardRequest$ThemeArn": "The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. If you add a value for this field, it overrides the value that is used in the source entity. The theme ARN must exist in the same Amazon Web Services account; where you create the dashboard.
", + "CreateDashboardRequest$ThemeArn": "The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. If you add a value for this field, it overrides the value that is used in the source entity. The theme ARN must exist in the same Amazon Web Services account where you create the dashboard.
", "CreateDashboardResponse$Arn": "The ARN of the dashboard.
", "CreateDashboardResponse$VersionArn": "The ARN of the dashboard, including the version number of the first version that is created.
", "CreateDataSetResponse$Arn": "The Amazon Resource Name (ARN) of the dataset.
", @@ -305,10 +305,10 @@ "CreateDataSourceResponse$Arn": "The Amazon Resource Name (ARN) of the data source.
", "CreateFolderRequest$ParentFolderArn": "The Amazon Resource Name (ARN) for the parent folder.
ParentFolderArn
can be null. An empty parentFolderArn
creates a root-level folder.
The Amazon Resource Name (ARN) for the newly created folder.
", - "CreateIAMPolicyAssignmentRequest$PolicyArn": "The ARN for the IAM policy to apply to the QuickSight users and groups specified in this assignment.
", - "CreateIAMPolicyAssignmentResponse$PolicyArn": "The ARN for the IAM policy that is applied to the QuickSight users and groups specified in this assignment.
", + "CreateIAMPolicyAssignmentRequest$PolicyArn": "The ARN for the IAMpolicy to apply to the Amazon QuickSight users and groups specified in this assignment.
", + "CreateIAMPolicyAssignmentResponse$PolicyArn": "The ARN for the IAMpolicy that is applied to the Amazon QuickSight users and groups specified in this assignment.
", "CreateIngestionResponse$Arn": "The Amazon Resource Name (ARN) for the data ingestion.
", - "CreateNamespaceResponse$Arn": "The ARN of the QuickSight namespace you created.
", + "CreateNamespaceResponse$Arn": "The ARN of the Amazon QuickSight namespace you created.
", "CreateTemplateResponse$Arn": "The ARN for the template.
", "CreateTemplateResponse$VersionArn": "The ARN for the template, including the version information of the first version.
", "CreateThemeResponse$Arn": "The Amazon Resource Name (ARN) for the theme.
", @@ -336,7 +336,7 @@ "DeleteTemplateResponse$Arn": "The Amazon Resource Name (ARN) of the resource.
", "DeleteThemeAliasResponse$Arn": "The Amazon Resource Name (ARN) of the theme resource using the deleted alias.
", "DeleteThemeResponse$Arn": "The Amazon Resource Name (ARN) of the resource.
", - "DescribeAccountCustomizationResponse$Arn": "The Amazon Resource Name (ARN) of the customization that's associated with this Amazon Web Services account;.
", + "DescribeAccountCustomizationResponse$Arn": "The Amazon Resource Name (ARN) of the customization that's associated with this Amazon Web Services account.
", "DescribeAnalysisPermissionsResponse$AnalysisArn": "The Amazon Resource Name (ARN) of the analysis whose permissions you're describing.
", "DescribeDashboardPermissionsResponse$DashboardArn": "The Amazon Resource Name (ARN) of the dashboard.
", "DescribeDataSetPermissionsResponse$DataSetArn": "The Amazon Resource Name (ARN) of the dataset.
", @@ -348,13 +348,14 @@ "Folder$Arn": "The folder Amazon Resource Name (ARN).
", "FolderSummary$Arn": "The Amazon Resource Name (ARN).
", "GenerateEmbedUrlForRegisteredUserRequest$UserArn": "The Amazon Resource Name for the registered user.
", - "GetDashboardEmbedUrlRequest$UserArn": "The Amazon QuickSight user's Amazon Resource Name (ARN), for use with QUICKSIGHT
identity type. You can use this for any Amazon QuickSight users in your account (readers, authors, or admins) authenticated as one of the following:
Active Directory (AD) users or group members
Invited nonfederated users
IAM users and IAM role-based sessions authenticated through Federated Single Sign-On using SAML, OpenID Connect, or IAM federation.
Omit this parameter for users in the third group – IAM users and IAM role-based sessions.
", + "GetDashboardEmbedUrlRequest$UserArn": "The Amazon QuickSight user's Amazon Resource Name (ARN), for use with QUICKSIGHT
identity type. You can use this for any Amazon QuickSight users in your account (readers, authors, or admins) authenticated as one of the following:
Active Directory (AD) users or group members
Invited nonfederated users
IAMusers and IAMrole-based sessions authenticated through Federated Single Sign-On using SAML, OpenID Connect, or IAMfederation.
Omit this parameter for users in the third group – IAMusers and IAM role-based sessions.
", "GetSessionEmbedUrlRequest$UserArn": "The Amazon QuickSight user's Amazon Resource Name (ARN), for use with QUICKSIGHT
identity type. You can use this for any type of Amazon QuickSight users in your account (readers, authors, or admins). They need to be authenticated as one of the following:
Active Directory (AD) users or group members
Invited nonfederated users
Identity and Access Management (IAM) users and IAM role-based sessions authenticated through Federated Single Sign-On using SAML, OpenID Connect, or IAM federation
Omit this parameter for users in the third group, IAM users and IAM role-based sessions.
", "Group$Arn": "The Amazon Resource Name (ARN) for the group.
", "GroupMember$Arn": "The Amazon Resource Name (ARN) for the group member (user).
", - "IAMPolicyAssignment$PolicyArn": "The Amazon Resource Name (ARN) for the IAM policy.
", + "IAMPolicyAssignment$PolicyArn": "The Amazon Resource Name (ARN) for the IAMpolicy.
", "Ingestion$Arn": "The Amazon Resource Name (ARN) of the resource.
", "ListTagsForResourceRequest$ResourceArn": "The Amazon Resource Name (ARN) of the resource that you want a list of tags for.
", + "LogicalTableSource$DataSetArn": "The Amazon Resource Number (ARN) of the parent dataset.
", "MemberIdArnPair$MemberArn": "The Amazon Resource Name (ARN) of the member.
", "NamespaceInfoV2$Arn": "The namespace ARN.
", "Path$member": null, @@ -377,13 +378,13 @@ "ThemeVersion$Arn": "The Amazon Resource Name (ARN) of the resource.
", "ThemeVersionSummary$Arn": "The Amazon Resource Name (ARN) of the theme version.
", "UntagResourceRequest$ResourceArn": "The Amazon Resource Name (ARN) of the resource that you want to untag.
", - "UpdateAccountCustomizationResponse$Arn": "The Amazon Resource Name (ARN) for the updated customization for this Amazon Web Services account;.
", + "UpdateAccountCustomizationResponse$Arn": "The Amazon Resource Name (ARN) for the updated customization for this Amazon Web Services account.
", "UpdateAnalysisPermissionsResponse$AnalysisArn": "The Amazon Resource Name (ARN) of the analysis that you updated.
", - "UpdateAnalysisRequest$ThemeArn": "The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.
", + "UpdateAnalysisRequest$ThemeArn": "The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the Amazon QuickSight console, make sure that you have access to it.
", "UpdateAnalysisResponse$Arn": "The ARN of the analysis that you're updating.
", "UpdateDashboardPermissionsResponse$DashboardArn": "The Amazon Resource Name (ARN) of the dashboard.
", "UpdateDashboardPublishedVersionResponse$DashboardArn": "The Amazon Resource Name (ARN) of the dashboard.
", - "UpdateDashboardRequest$ThemeArn": "The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. If you add a value for this field, it overrides the value that was originally associated with the entity. The theme ARN must exist in the same Amazon Web Services account; where you create the dashboard.
", + "UpdateDashboardRequest$ThemeArn": "The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. If you add a value for this field, it overrides the value that was originally associated with the entity. The theme ARN must exist in the same Amazon Web Services account where you create the dashboard.
", "UpdateDashboardResponse$Arn": "The Amazon Resource Name (ARN) of the resource.
", "UpdateDashboardResponse$VersionArn": "The ARN of the dashboard, including the version number.
", "UpdateDataSetPermissionsResponse$DataSetArn": "The Amazon Resource Name (ARN) of the dataset.
", @@ -393,8 +394,8 @@ "UpdateDataSourceResponse$Arn": "The Amazon Resource Name (ARN) of the data source.
", "UpdateFolderPermissionsResponse$Arn": "The Amazon Resource Name (ARN).
", "UpdateFolderResponse$Arn": "The Amazon Resource Name (ARN).
", - "UpdateIAMPolicyAssignmentRequest$PolicyArn": "The ARN for the IAM policy to apply to the QuickSight users and groups specified in this assignment.
", - "UpdateIAMPolicyAssignmentResponse$PolicyArn": "The ARN for the IAM policy applied to the QuickSight users and groups specified in this assignment.
", + "UpdateIAMPolicyAssignmentRequest$PolicyArn": "The ARN for the IAMpolicy to apply to the Amazon QuickSight users and groups specified in this assignment.
", + "UpdateIAMPolicyAssignmentResponse$PolicyArn": "The ARN for the IAMpolicy applied to the Amazon QuickSight users and groups specified in this assignment.
", "UpdateTemplatePermissionsResponse$TemplateArn": "The Amazon Resource Name (ARN) of the template.
", "UpdateTemplateResponse$Arn": "The Amazon Resource Name (ARN) for the template.
", "UpdateTemplateResponse$VersionArn": "The ARN for the template, including the version information of the first version.
", @@ -424,151 +425,151 @@ } }, "AthenaParameters": { - "base": "Amazon Athena parameters.
", + "base": "Parameters for Amazon Athena.
", "refs": { - "DataSourceParameters$AthenaParameters": "Amazon Athena parameters.
" + "DataSourceParameters$AthenaParameters": "The parameters for Amazon Athena.
" } }, "AuroraParameters": { - "base": "Amazon Aurora parameters.
", + "base": "Parameters for Amazon Aurora.
", "refs": { - "DataSourceParameters$AuroraParameters": "Amazon Aurora MySQL parameters.
" + "DataSourceParameters$AuroraParameters": "The parameters for Amazon Aurora MySQL.
" } }, "AuroraPostgreSqlParameters": { - "base": "Amazon Aurora with PostgreSQL compatibility parameters.
", + "base": "Parameters for Amazon Aurora PostgreSQL-Compatible Edition.
", "refs": { - "DataSourceParameters$AuroraPostgreSqlParameters": "Aurora PostgreSQL parameters.
" + "DataSourceParameters$AuroraPostgreSqlParameters": "The parameters for Amazon Aurora.
" } }, "AwsAccountId": { "base": null, "refs": { - "CancelIngestionRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "CreateAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account; that you want to customize QuickSight for.
", - "CreateAccountCustomizationResponse$AwsAccountId": "The ID for the Amazon Web Services account; that you want to customize QuickSight for.
", - "CreateAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account; where you are creating an analysis.
", - "CreateDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account; where you want to create the dashboard.
", - "CreateDataSetRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "CreateDataSourceRequest$AwsAccountId": "The Amazon Web Services account; ID.
", + "CancelIngestionRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "CreateAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account that you want to customize Amazon QuickSight for.
", + "CreateAccountCustomizationResponse$AwsAccountId": "The ID for the Amazon Web Services account that you want to customize Amazon QuickSight for.
", + "CreateAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account where you are creating an analysis.
", + "CreateDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account where you want to create the dashboard.
", + "CreateDataSetRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "CreateDataSourceRequest$AwsAccountId": "The Amazon Web Services account ID.
", "CreateFolderMembershipRequest$AwsAccountId": "The AWS Account ID.
", "CreateFolderRequest$AwsAccountId": "The AWS Account ID.
", - "CreateGroupMembershipRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "CreateGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "CreateIAMPolicyAssignmentRequest$AwsAccountId": "The ID of the Amazon Web Services account; where you want to assign an IAM policy to QuickSight users or groups.
", - "CreateIngestionRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "CreateNamespaceRequest$AwsAccountId": "The ID for the Amazon Web Services account; that you want to create the QuickSight namespace in.
", - "CreateTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template that you creating an alias for.
", - "CreateTemplateRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "CreateThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme for the new theme alias.
", - "CreateThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account; where you want to store the new theme.
", - "DeleteAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account; that you want to delete QuickSight customizations from in this Amazon Web Services Region;.
", - "DeleteAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account; where you want to delete an analysis.
", - "DeleteDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard that you're deleting.
", - "DeleteDataSetRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "DeleteDataSourceRequest$AwsAccountId": "The Amazon Web Services account; ID.
", + "CreateGroupMembershipRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "CreateGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "CreateIAMPolicyAssignmentRequest$AwsAccountId": "The ID of the Amazon Web Services account where you want to assign an IAMpolicy to Amazon QuickSight users or groups.
", + "CreateIngestionRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "CreateNamespaceRequest$AwsAccountId": "The ID for the Amazon Web Services account that you want to create the Amazon QuickSight namespace in.
", + "CreateTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template that you creating an alias for.
", + "CreateTemplateRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. You use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "CreateThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme for the new theme alias.
", + "CreateThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account where you want to store the new theme.
", + "DeleteAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account that you want to delete Amazon QuickSight customizations from in this Amazon Web Services Region;.
", + "DeleteAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account where you want to delete an analysis.
", + "DeleteDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard that you're deleting.
", + "DeleteDataSetRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "DeleteDataSourceRequest$AwsAccountId": "The Amazon Web Services account ID.
", "DeleteFolderMembershipRequest$AwsAccountId": "The AWS Account ID.
", "DeleteFolderRequest$AwsAccountId": "The AWS Account ID for the folder.
", - "DeleteGroupMembershipRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "DeleteGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "DeleteIAMPolicyAssignmentRequest$AwsAccountId": "The Amazon Web Services account; ID where you want to delete the IAM policy assignment.
", - "DeleteNamespaceRequest$AwsAccountId": "The ID for the Amazon Web Services account; that you want to delete the QuickSight namespace from.
", - "DeleteTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the item to delete.
", - "DeleteTemplateRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template that you're deleting.
", - "DeleteThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme alias to delete.
", - "DeleteThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme that you're deleting.
", - "DeleteUserByPrincipalIdRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "DeleteUserRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "DescribeAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account; that you want to describe QuickSight customizations for.
", - "DescribeAccountCustomizationResponse$AwsAccountId": "The ID for the Amazon Web Services account; that you're describing.
", - "DescribeAccountSettingsRequest$AwsAccountId": "The ID for the Amazon Web Services account; that contains the settings that you want to list.
", - "DescribeAnalysisPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analysis whose permissions you're describing. You must be using the Amazon Web Services account; that the analysis is in.
", - "DescribeAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analysis. You must be using the Amazon Web Services account; that the analysis is in.
", - "DescribeDashboardPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard that you're describing permissions for.
", - "DescribeDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard that you're describing.
", - "DescribeDataSetPermissionsRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "DescribeDataSetRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "DescribeDataSourcePermissionsRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "DescribeDataSourceRequest$AwsAccountId": "The Amazon Web Services account; ID.
", + "DeleteGroupMembershipRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "DeleteGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "DeleteIAMPolicyAssignmentRequest$AwsAccountId": "The Amazon Web Services account ID where you want to delete the IAMpolicy assignment.
", + "DeleteNamespaceRequest$AwsAccountId": "The ID for the Amazon Web Services account that you want to delete the Amazon QuickSight namespace from.
", + "DeleteTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the item to delete.
", + "DeleteTemplateRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template that you're deleting.
", + "DeleteThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme alias to delete.
", + "DeleteThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme that you're deleting.
", + "DeleteUserByPrincipalIdRequest$AwsAccountId": "The ID for the Amazon Web Services account that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "DeleteUserRequest$AwsAccountId": "The ID for the Amazon Web Services account that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "DescribeAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account that you want to describe Amazon QuickSight customizations for.
", + "DescribeAccountCustomizationResponse$AwsAccountId": "The ID for the Amazon Web Services account that you're describing.
", + "DescribeAccountSettingsRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the settings that you want to list.
", + "DescribeAnalysisPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analysis whose permissions you're describing. You must be using the Amazon Web Services account that the analysis is in.
", + "DescribeAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analysis. You must be using the Amazon Web Services account that the analysis is in.
", + "DescribeDashboardPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard that you're describing permissions for.
", + "DescribeDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard that you're describing.
", + "DescribeDataSetPermissionsRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "DescribeDataSetRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "DescribeDataSourcePermissionsRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "DescribeDataSourceRequest$AwsAccountId": "The Amazon Web Services account ID.
", "DescribeFolderPermissionsRequest$AwsAccountId": "The AWS Account ID.
", "DescribeFolderRequest$AwsAccountId": "The AWS account ID.
", "DescribeFolderResolvedPermissionsRequest$AwsAccountId": "The AWS account ID.
", - "DescribeGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "DescribeIAMPolicyAssignmentRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the assignment that you want to describe.
", - "DescribeIngestionRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "DescribeNamespaceRequest$AwsAccountId": "The ID for the Amazon Web Services account; that contains the QuickSight namespace that you want to describe.
", - "DescribeTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template alias that you're describing.
", - "DescribeTemplatePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template that you're describing.
", - "DescribeTemplateRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template that you're describing.
", - "DescribeThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme alias that you're describing.
", - "DescribeThemePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme that you're describing.
", - "DescribeUserRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", + "DescribeGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "DescribeIAMPolicyAssignmentRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the assignment that you want to describe.
", + "DescribeIngestionRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "DescribeNamespaceRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the Amazon QuickSight namespace that you want to describe.
", + "DescribeTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template alias that you're describing.
", + "DescribeTemplatePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template that you're describing.
", + "DescribeTemplateRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template that you're describing.
", + "DescribeThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme alias that you're describing.
", + "DescribeThemePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme that you're describing.
", + "DescribeUserRequest$AwsAccountId": "The ID for the Amazon Web Services account that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", "GenerateEmbedUrlForAnonymousUserRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the dashboard that you're embedding.
", "GenerateEmbedUrlForRegisteredUserRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the dashboard that you're embedding.
", - "GetDashboardEmbedUrlRequest$AwsAccountId": "The ID for the Amazon Web Services account; that contains the dashboard that you're embedding.
", - "GetSessionEmbedUrlRequest$AwsAccountId": "The ID for the Amazon Web Services account; associated with your QuickSight subscription.
", - "IAMPolicyAssignment$AwsAccountId": "The Amazon Web Services account; ID.
", - "ListAnalysesRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analyses.
", - "ListDashboardVersionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard that you're listing versions for.
", - "ListDashboardsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboards that you're listing.
", - "ListDataSetsRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "ListDataSourcesRequest$AwsAccountId": "The Amazon Web Services account; ID.
", + "GetDashboardEmbedUrlRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the dashboard that you're embedding.
", + "GetSessionEmbedUrlRequest$AwsAccountId": "The ID for the Amazon Web Services account associated with your Amazon QuickSight subscription.
", + "IAMPolicyAssignment$AwsAccountId": "The Amazon Web Services account ID.
", + "ListAnalysesRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analyses.
", + "ListDashboardVersionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard that you're listing versions for.
", + "ListDashboardsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboards that you're listing.
", + "ListDataSetsRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "ListDataSourcesRequest$AwsAccountId": "The Amazon Web Services account ID.
", "ListFolderMembersRequest$AwsAccountId": "The AWS account ID.
", "ListFoldersRequest$AwsAccountId": "The AWS account ID.
", - "ListGroupMembershipsRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "ListGroupsRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "ListIAMPolicyAssignmentsForUserRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the assignments.
", - "ListIAMPolicyAssignmentsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains these IAM policy assignments.
", - "ListIngestionsRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "ListNamespacesRequest$AwsAccountId": "The ID for the Amazon Web Services account; that contains the QuickSight namespaces that you want to list.
", - "ListTemplateAliasesRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template aliases that you're listing.
", - "ListTemplateVersionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the templates that you're listing.
", - "ListTemplatesRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the templates that you're listing.
", - "ListThemeAliasesRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme aliases that you're listing.
", - "ListThemeVersionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the themes that you're listing.
", - "ListThemesRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the themes that you're listing.
", - "ListUserGroupsRequest$AwsAccountId": "The Amazon Web Services account; ID that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "ListUsersRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "RegisterUserRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "RestoreAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analysis.
", - "SearchAnalysesRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analyses that you're searching for.
", - "SearchDashboardsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the user whose dashboards you're searching for.
", + "ListGroupMembershipsRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "ListGroupsRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "ListIAMPolicyAssignmentsForUserRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the assignments.
", + "ListIAMPolicyAssignmentsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains these IAMpolicy assignments.
", + "ListIngestionsRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "ListNamespacesRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the Amazon QuickSight namespaces that you want to list.
", + "ListTemplateAliasesRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template aliases that you're listing.
", + "ListTemplateVersionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the templates that you're listing.
", + "ListTemplatesRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the templates that you're listing.
", + "ListThemeAliasesRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme aliases that you're listing.
", + "ListThemeVersionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the themes that you're listing.
", + "ListThemesRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the themes that you're listing.
", + "ListUserGroupsRequest$AwsAccountId": "The Amazon Web Services account ID that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "ListUsersRequest$AwsAccountId": "The ID for the Amazon Web Services account that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "RegisterUserRequest$AwsAccountId": "The ID for the Amazon Web Services account that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "RestoreAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analysis.
", + "SearchAnalysesRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analyses that you're searching for.
", + "SearchDashboardsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the user whose dashboards you're searching for.
", "SearchFoldersRequest$AwsAccountId": "The AWS account ID.
", - "UpdateAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account; that you want to update QuickSight customizations for.
", - "UpdateAccountCustomizationResponse$AwsAccountId": "The ID for the Amazon Web Services account; that you want to update QuickSight customizations for.
", - "UpdateAccountSettingsRequest$AwsAccountId": "The ID for the Amazon Web Services account; that contains the QuickSight settings that you want to list.
", - "UpdateAnalysisPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analysis whose permissions you're updating. You must be using the Amazon Web Services account; that the analysis is in.
", - "UpdateAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the analysis that you're updating.
", - "UpdateDashboardPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard whose permissions you're updating.
", - "UpdateDashboardPublishedVersionRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard that you're updating.
", - "UpdateDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the dashboard that you're updating.
", - "UpdateDataSetPermissionsRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "UpdateDataSetRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "UpdateDataSourcePermissionsRequest$AwsAccountId": "The Amazon Web Services account; ID.
", - "UpdateDataSourceRequest$AwsAccountId": "The Amazon Web Services account; ID.
", + "UpdateAccountCustomizationRequest$AwsAccountId": "The ID for the Amazon Web Services account that you want to update Amazon QuickSight customizations for.
", + "UpdateAccountCustomizationResponse$AwsAccountId": "The ID for the Amazon Web Services account that you want to update Amazon QuickSight customizations for.
", + "UpdateAccountSettingsRequest$AwsAccountId": "The ID for the Amazon Web Services account that contains the Amazon QuickSight settings that you want to list.
", + "UpdateAnalysisPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analysis whose permissions you're updating. You must be using the Amazon Web Services account that the analysis is in.
", + "UpdateAnalysisRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the analysis that you're updating.
", + "UpdateDashboardPermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard whose permissions you're updating.
", + "UpdateDashboardPublishedVersionRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard that you're updating.
", + "UpdateDashboardRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the dashboard that you're updating.
", + "UpdateDataSetPermissionsRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "UpdateDataSetRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "UpdateDataSourcePermissionsRequest$AwsAccountId": "The Amazon Web Services account ID.
", + "UpdateDataSourceRequest$AwsAccountId": "The Amazon Web Services account ID.
", "UpdateFolderPermissionsRequest$AwsAccountId": "The AWS account ID.
", "UpdateFolderRequest$AwsAccountId": "The AWS account ID.
", - "UpdateGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the group is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
", - "UpdateIAMPolicyAssignmentRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the IAM policy assignment.
", - "UpdateTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template alias that you're updating.
", - "UpdateTemplatePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template.
", - "UpdateTemplateRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the template that you're updating.
", - "UpdateThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme alias that you're updating.
", - "UpdateThemePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme.
", - "UpdateThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme that you're updating.
", - "UpdateUserRequest$AwsAccountId": "The ID for the Amazon Web Services account; that the user is in. Currently, you use the ID for the Amazon Web Services account; that contains your Amazon QuickSight account.
" + "UpdateGroupRequest$AwsAccountId": "The ID for the Amazon Web Services account that the group is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
", + "UpdateIAMPolicyAssignmentRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the IAMpolicy assignment.
", + "UpdateTemplateAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template alias that you're updating.
", + "UpdateTemplatePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template.
", + "UpdateTemplateRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the template that you're updating.
", + "UpdateThemeAliasRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme alias that you're updating.
", + "UpdateThemePermissionsRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme.
", + "UpdateThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme that you're updating.
", + "UpdateUserRequest$AwsAccountId": "The ID for the Amazon Web Services account that the user is in. Currently, you use the ID for the Amazon Web Services account that contains your Amazon QuickSight account.
" } }, "AwsAndAccountId": { "base": null, "refs": { - "DescribeThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account; that contains the theme that you're describing.
" + "DescribeThemeRequest$AwsAccountId": "The ID of the Amazon Web Services account that contains the theme that you're describing.
" } }, "AwsIotAnalyticsParameters": { - "base": "Amazon Web Services IoT Analytics parameters.
", + "base": "The parameters for IoT Analytics.
", "refs": { - "DataSourceParameters$AwsIotAnalyticsParameters": "Amazon Web Services IoT Analytics parameters.
" + "DataSourceParameters$AwsIotAnalyticsParameters": "The parameters for IoT Analytics.
" } }, "Boolean": { @@ -576,10 +577,12 @@ "refs": { "DataSetSummary$RowLevelPermissionTagConfigurationApplied": "Whether or not the row level permission tags are applied.
", "DataSetSummary$ColumnLevelPermissionRulesApplied": "A value that indicates if the dataset has column level permission configured.
", + "DataSetUsageConfiguration$DisableUseAsDirectQuerySource": "An option that controls whether a child dataset of a direct query can use this dataset as a source.
", + "DataSetUsageConfiguration$DisableUseAsImportedSource": "An option that controls whether a child dataset that's stored in QuickSight can use this dataset as a source.
", "GetDashboardEmbedUrlRequest$UndoRedoDisabled": "Remove the undo/redo button on the embedded dashboard. The default is FALSE, which enables the undo/redo button.
", "GetDashboardEmbedUrlRequest$ResetDisabled": "Remove the reset button on the embedded dashboard. The default is FALSE, which enables the reset button.
", - "GetDashboardEmbedUrlRequest$StatePersistenceEnabled": "Adds persistence of state for the user session in an embedded dashboard. Persistence applies to the sheet and the parameter settings. These are control settings that the dashboard subscriber (QuickSight reader) chooses while viewing the dashboard. If this is set to TRUE
, the settings are the same when the subscriber reopens the same dashboard URL. The state is stored in QuickSight, not in a browser cookie. If this is set to FALSE, the state of the user session is not persisted. The default is FALSE
.
A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.
", + "GetDashboardEmbedUrlRequest$StatePersistenceEnabled": "Adds persistence of state for the user session in an embedded dashboard. Persistence applies to the sheet and the parameter settings. These are control settings that the dashboard subscriber (Amazon QuickSight reader) chooses while viewing the dashboard. If this is set to TRUE
, the settings are the same when the subscriber reopens the same dashboard URL. The state is stored in Amazon QuickSight, not in a browser cookie. If this is set to FALSE, the state of the user session is not persisted. The default is FALSE
.
A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by Amazon QuickSight to optimize query performance.
", "SslProperties$DisableSsl": "A Boolean option to control whether SSL should be disabled.
", "UpdateUserRequest$UnapplyCustomPermissions": "A flag that you use to indicate that you want to remove all custom permissions from this user. Using this parameter resets the user to the state it was in before a custom permissions profile was applied. This parameter defaults to NULL and it doesn't accept any other value.
", "UploadSettings$ContainsHeader": "Whether the file has a header row, or the files each have a header row.
", @@ -680,9 +683,9 @@ "ColumnGroupList": { "base": null, "refs": { - "CreateDataSetRequest$ColumnGroups": "Groupings of columns that work together in certain QuickSight features. Currently, only geospatial hierarchy is supported.
", + "CreateDataSetRequest$ColumnGroups": "Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.
", "DataSet$ColumnGroups": "Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.
", - "UpdateDataSetRequest$ColumnGroups": "Groupings of columns that work together in certain QuickSight features. Currently, only geospatial hierarchy is supported.
" + "UpdateDataSetRequest$ColumnGroups": "Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.
" } }, "ColumnGroupName": { @@ -739,7 +742,8 @@ "OutputColumn$Name": "A display name for the dataset.
", "RenameColumnOperation$ColumnName": "The name of the column to be renamed.
", "RenameColumnOperation$NewColumnName": "The new name for the column.
", - "TagColumnOperation$ColumnName": "The column that this operation acts on.
" + "TagColumnOperation$ColumnName": "The column that this operation acts on.
", + "UntagColumnOperation$ColumnName": "The column that this operation acts on.
" } }, "ColumnNameList": { @@ -772,6 +776,18 @@ "TagColumnOperation$Tags": "The dataset column tag, currently only used for geospatial type tagging.
This is not tags for the Amazon Web Services tagging feature.
The column tags to remove from this column.
" + } + }, "ConcurrentUpdatingException": { "base": "A resource is already in a state that indicates an operation is happening that must complete before a new update can be applied.
", "refs": { @@ -1021,8 +1037,8 @@ "DashboardPublishOptions": { "base": "Dashboard publish options.
", "refs": { - "CreateDashboardRequest$DashboardPublishOptions": "Options for publishing the dashboard when you create it:
AvailabilityStatus
for AdHocFilteringOption
- This status can be either ENABLED
or DISABLED
. When this is set to DISABLED
, QuickSight disables the left filter pane on the published dashboard, which can be used for ad hoc (one-time) filtering. This option is ENABLED
by default.
AvailabilityStatus
for ExportToCSVOption
- This status can be either ENABLED
or DISABLED
. The visual option to export data to .CSV format isn't enabled when this is set to DISABLED
. This option is ENABLED
by default.
VisibilityState
for SheetControlsOption
- This visibility state can be either COLLAPSED
or EXPANDED
. This option is COLLAPSED
by default.
Options for publishing the dashboard when you create it:
AvailabilityStatus
for AdHocFilteringOption
- This status can be either ENABLED
or DISABLED
. When this is set to DISABLED
, QuickSight disables the left filter pane on the published dashboard, which can be used for ad hoc (one-time) filtering. This option is ENABLED
by default.
AvailabilityStatus
for ExportToCSVOption
- This status can be either ENABLED
or DISABLED
. The visual option to export data to .CSV format isn't enabled when this is set to DISABLED
. This option is ENABLED
by default.
VisibilityState
for SheetControlsOption
- This visibility state can be either COLLAPSED
or EXPANDED
. This option is COLLAPSED
by default.
Options for publishing the dashboard when you create it:
AvailabilityStatus
for AdHocFilteringOption
- This status can be either ENABLED
or DISABLED
. When this is set to DISABLED
, Amazon QuickSight disables the left filter pane on the published dashboard, which can be used for ad hoc (one-time) filtering. This option is ENABLED
by default.
AvailabilityStatus
for ExportToCSVOption
- This status can be either ENABLED
or DISABLED
. The visual option to export data to .CSV format isn't enabled when this is set to DISABLED
. This option is ENABLED
by default.
VisibilityState
for SheetControlsOption
- This visibility state can be either COLLAPSED
or EXPANDED
. This option is COLLAPSED
by default.
Options for publishing the dashboard when you create it:
AvailabilityStatus
for AdHocFilteringOption
- This status can be either ENABLED
or DISABLED
. When this is set to DISABLED
, Amazon QuickSight disables the left filter pane on the published dashboard, which can be used for ad hoc (one-time) filtering. This option is ENABLED
by default.
AvailabilityStatus
for ExportToCSVOption
- This status can be either ENABLED
or DISABLED
. The visual option to export data to .CSV format isn't enabled when this is set to DISABLED
. This option is ENABLED
by default.
VisibilityState
for SheetControlsOption
- This visibility state can be either COLLAPSED
or EXPANDED
. This option is COLLAPSED
by default.
Dashboard source entity.
", "refs": { - "CreateDashboardRequest$SourceEntity": "The entity that you are using as a source when you create the dashboard. In SourceEntity
, you specify the type of object you're using as source. You can only create a dashboard from a template, so you use a SourceTemplate
entity. If you need to create a dashboard from an analysis, first convert the analysis to a template by using the CreateTemplate API operation. For SourceTemplate
, specify the Amazon Resource Name (ARN) of the source template. The SourceTemplate
ARN can contain any Amazon Web Services account; and any QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
The entity that you are using as a source when you update the dashboard. In SourceEntity
, you specify the type of object you're using as source. You can only update a dashboard from a template, so you use a SourceTemplate
entity. If you need to update a dashboard from an analysis, first convert the analysis to a template by using the CreateTemplate API operation. For SourceTemplate
, specify the Amazon Resource Name (ARN) of the source template. The SourceTemplate
ARN can contain any Amazon Web Services account; and any QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
The entity that you are using as a source when you create the dashboard. In SourceEntity
, you specify the type of object you're using as source. You can only create a dashboard from a template, so you use a SourceTemplate
entity. If you need to create a dashboard from an analysis, first convert the analysis to a template by using the CreateTemplate API operation. For SourceTemplate
, specify the Amazon Resource Name (ARN) of the source template. The SourceTemplate
ARN can contain any Amazon Web Services account and any Amazon QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
The entity that you are using as a source when you update the dashboard. In SourceEntity
, you specify the type of object you're using as source. You can only update a dashboard from a template, so you use a SourceTemplate
entity. If you need to update a dashboard from an analysis, first convert the analysis to a template by using the CreateTemplate API operation. For SourceTemplate
, specify the Amazon Resource Name (ARN) of the source template. The SourceTemplate
ARN can contain any Amazon Web Services account and any Amazon QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
A structure that contains all of the dashboards in your Amazon Web Services account;. This structure provides basic information about the dashboards.
", + "ListDashboardsResponse$DashboardSummaryList": "A structure that contains all of the dashboards in your Amazon Web Services account. This structure provides basic information about the dashboards.
", "SearchDashboardsResponse$DashboardSummaryList": "The list of dashboards owned by the user specified in Filters
in your request.
The list of dataset summaries.
" } }, + "DataSetUsageConfiguration": { + "base": "The usage configuration to apply to child datasets that reference this dataset as a source.
", + "refs": { + "CreateDataSetRequest$DataSetUsageConfiguration": null, + "DataSet$DataSetUsageConfiguration": "The usage configuration to apply to child datasets that reference this dataset as a source.
", + "UpdateDataSetRequest$DataSetUsageConfiguration": null + } + }, "DataSource": { "base": "The structure of a data source.
", "refs": { @@ -1175,8 +1199,8 @@ "DataSourceCredentials": { "base": "Data source credentials. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.
", "refs": { - "CreateDataSourceRequest$Credentials": "The credentials QuickSight that uses to connect to your underlying source. Currently, only credentials based on user name and password are supported.
", - "UpdateDataSourceRequest$Credentials": "The credentials that QuickSight that uses to connect to your underlying source. Currently, only credentials based on user name and password are supported.
" + "CreateDataSourceRequest$Credentials": "The credentials Amazon QuickSight that uses to connect to your underlying source. Currently, only credentials based on user name and password are supported.
", + "UpdateDataSourceRequest$Credentials": "The credentials that Amazon QuickSight that uses to connect to your underlying source. Currently, only credentials based on user name and password are supported.
" } }, "DataSourceErrorInfo": { @@ -1200,10 +1224,10 @@ "DataSourceParameters": { "base": "The parameters that Amazon QuickSight uses to connect to your underlying data source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.
", "refs": { - "CreateDataSourceRequest$DataSourceParameters": "The parameters that QuickSight uses to connect to your underlying source.
", + "CreateDataSourceRequest$DataSourceParameters": "The parameters that Amazon QuickSight uses to connect to your underlying source.
", "DataSource$DataSourceParameters": "The parameters that Amazon QuickSight uses to connect to your underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.
", "DataSourceParametersList$member": null, - "UpdateDataSourceRequest$DataSourceParameters": "The parameters that QuickSight uses to connect to your underlying source.
" + "UpdateDataSourceRequest$DataSourceParameters": "The parameters that Amazon QuickSight uses to connect to your underlying source.
" } }, "DataSourceParametersList": { @@ -1216,7 +1240,7 @@ "DataSourceType": { "base": null, "refs": { - "CreateDataSourceRequest$Type": "The type of the data source. Currently, the supported types for this operation are: ATHENA, AURORA, AURORA_POSTGRESQL, AMAZON_ELASTICSEARCH, MARIADB, MYSQL, POSTGRESQL, PRESTO, REDSHIFT, S3, SNOWFLAKE, SPARK, SQLSERVER, TERADATA
. Use ListDataSources
to return a list of all data sources.
AMAZON_ELASTICSEARCH
is for Amazon managed Elasticsearch Service.
The type of the data source. To return a list of all data sources, use ListDataSources
.
Use AMAZON_ELASTICSEARCH
for Amazon Elasticsearch Service.
The type of the data source. This type indicates which database engine the data source connects to.
" } }, @@ -1224,7 +1248,7 @@ "base": null, "refs": { "AuroraParameters$Database": "Database.
", - "AuroraPostgreSqlParameters$Database": "Database.
", + "AuroraPostgreSqlParameters$Database": "The Amazon Aurora PostgreSQL database to connect to.
", "MariaDbParameters$Database": "Database.
", "MySqlParameters$Database": "Database.
", "OracleParameters$Database": "Database.
", @@ -1245,7 +1269,7 @@ "DateTimeParameterList": { "base": null, "refs": { - "Parameters$DateTimeParameters": "Date-time parameters.
" + "Parameters$DateTimeParameters": "The parameters that have a data type of date-time.
" } }, "DecimalParameter": { @@ -1257,7 +1281,7 @@ "DecimalParameterList": { "base": null, "refs": { - "Parameters$DecimalParameters": "Decimal parameters.
" + "Parameters$DecimalParameters": "The parameters that have a data type of decimal.
" } }, "DeleteAccountCustomizationRequest": { @@ -1679,7 +1703,7 @@ "Domain": { "base": null, "refs": { - "AmazonElasticsearchParameters$Domain": "The Amazon Elasticsearch Service domain.
" + "AmazonElasticsearchParameters$Domain": "The Elasticsearch domain.
" } }, "DomainNotWhitelistedException": { @@ -1702,7 +1726,7 @@ "Edition": { "base": null, "refs": { - "AccountSettings$Edition": "The edition of QuickSight that you're currently subscribed to: Enterprise edition or Standard edition.
" + "AccountSettings$Edition": "The edition of Amazon QuickSight that you're currently subscribed to: Enterprise edition or Standard edition.
" } }, "EmbeddingIdentityType": { @@ -1717,7 +1741,7 @@ "GenerateEmbedUrlForAnonymousUserResponse$EmbedUrl": "The embed URL for the dashboard.
", "GenerateEmbedUrlForRegisteredUserResponse$EmbedUrl": "The embed URL for the Amazon QuickSight dashboard or console.
", "GetDashboardEmbedUrlResponse$EmbedUrl": "A single-use URL that you can put into your server-side webpage to embed your dashboard. This URL is valid for 5 minutes. The API operation provides the URL with an auth_code
value that enables one (and only one) sign-on to a user session that is valid for 10 hours.
A single-use URL that you can put into your server-side web page to embed your QuickSight session. This URL is valid for 5 minutes. The API operation provides the URL with an auth_code
value that enables one (and only one) sign-on to a user session that is valid for 10 hours.
A single-use URL that you can put into your server-side web page to embed your Amazon QuickSight session. This URL is valid for 5 minutes. The API operation provides the URL with an auth_code
value that enables one (and only one) sign-on to a user session that is valid for 10 hours.
The URL you use to access the embedded session. The entry point URL is constrained to the following paths:
/start
/start/analyses
/start/dashboards
/start/favorites
/dashboards/DashboardId
- where DashboardId
is the actual ID key from the QuickSight console URL of the dashboard
/analyses/AnalysisId
- where AnalysisId
is the actual ID key from the QuickSight console URL of the analysis
The URL you use to access the embedded session. The entry point URL is constrained to the following paths:
/start
/start/analyses
/start/dashboards
/start/favorites
/dashboards/DashboardId
- where DashboardId
is the actual ID key from the Amazon QuickSight console URL of the dashboard
/analyses/AnalysisId
- where AnalysisId
is the actual ID key from the Amazon QuickSight console URL of the analysis
Host.
", - "AuroraPostgreSqlParameters$Host": "Host.
", + "AuroraPostgreSqlParameters$Host": "The Amazon Aurora PostgreSQL-Compatible host to connect to.
", "MariaDbParameters$Host": "Host.
", "MySqlParameters$Host": "Host.
", "OracleParameters$Host": "An Oracle host.
", @@ -2043,26 +2067,26 @@ "IAMPolicyAssignment": { "base": "An Identity and Access Management (IAM) policy assignment.
", "refs": { - "DescribeIAMPolicyAssignmentResponse$IAMPolicyAssignment": "Information describing the IAM policy assignment.
" + "DescribeIAMPolicyAssignmentResponse$IAMPolicyAssignment": "Information describing the IAMpolicy assignment.
" } }, "IAMPolicyAssignmentName": { "base": null, "refs": { - "ActiveIAMPolicyAssignment$AssignmentName": "A name for the IAM policy assignment.
", - "CreateIAMPolicyAssignmentRequest$AssignmentName": "The name of the assignment, also called a rule. It must be unique within an Amazon Web Services account;.
", - "CreateIAMPolicyAssignmentResponse$AssignmentName": "The name of the assignment. This name must be unique within the Amazon Web Services account;.
", + "ActiveIAMPolicyAssignment$AssignmentName": "A name for the IAMpolicy assignment.
", + "CreateIAMPolicyAssignmentRequest$AssignmentName": "The name of the assignment, also called a rule. It must be unique within an Amazon Web Services account.
", + "CreateIAMPolicyAssignmentResponse$AssignmentName": "The name of the assignment. This name must be unique within the Amazon Web Services account.
", "DeleteIAMPolicyAssignmentRequest$AssignmentName": "The name of the assignment.
", "DeleteIAMPolicyAssignmentResponse$AssignmentName": "The name of the assignment.
", "DescribeIAMPolicyAssignmentRequest$AssignmentName": "The name of the assignment, also called a rule.
", "IAMPolicyAssignment$AssignmentName": "Assignment name.
", "IAMPolicyAssignmentSummary$AssignmentName": "Assignment name.
", - "UpdateIAMPolicyAssignmentRequest$AssignmentName": "The name of the assignment, also called a rule. This name must be unique within an Amazon Web Services account;.
", + "UpdateIAMPolicyAssignmentRequest$AssignmentName": "The name of the assignment, also called a rule. This name must be unique within an Amazon Web Services account.
", "UpdateIAMPolicyAssignmentResponse$AssignmentName": "The name of the assignment or rule.
" } }, "IAMPolicyAssignmentSummary": { - "base": "IAM policy assignment summary.
", + "base": "IAMpolicy assignment summary.
", "refs": { "IAMPolicyAssignmentSummaryList$member": null } @@ -2070,17 +2094,17 @@ "IAMPolicyAssignmentSummaryList": { "base": null, "refs": { - "ListIAMPolicyAssignmentsResponse$IAMPolicyAssignments": "Information describing the IAM policy assignments.
" + "ListIAMPolicyAssignmentsResponse$IAMPolicyAssignments": "Information describing the IAMpolicy assignments.
" } }, "IdentityMap": { "base": null, "refs": { - "CreateIAMPolicyAssignmentRequest$Identities": "The QuickSight users, groups, or both that you want to assign the policy to.
", - "CreateIAMPolicyAssignmentResponse$Identities": "The QuickSight users, groups, or both that the IAM policy is assigned to.
", + "CreateIAMPolicyAssignmentRequest$Identities": "The Amazon QuickSight users, groups, or both that you want to assign the policy to.
", + "CreateIAMPolicyAssignmentResponse$Identities": "The Amazon QuickSight users, groups, or both that the IAMpolicy is assigned to.
", "IAMPolicyAssignment$Identities": "Identities.
", - "UpdateIAMPolicyAssignmentRequest$Identities": "The QuickSight users, groups, or both that you want to assign the policy to.
", - "UpdateIAMPolicyAssignmentResponse$Identities": "The QuickSight users, groups, or both that the IAM policy is assigned to.
" + "UpdateIAMPolicyAssignmentRequest$Identities": "The Amazon QuickSight users, groups, or both that you want to assign the policy to.
", + "UpdateIAMPolicyAssignmentResponse$Identities": "The Amazon QuickSight users, groups, or both that the IAMpolicy is assigned to.
" } }, "IdentityName": { @@ -2106,7 +2130,7 @@ "IdentityType": { "base": null, "refs": { - "RegisterUserRequest$IdentityType": "Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts two values:
IAM
: A user whose identity maps to an existing IAM user or role.
QUICKSIGHT
: A user whose identity is owned and managed internally by Amazon QuickSight.
Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts two values:
IAM
: A user whose identity maps to an existing IAMuser or role.
QUICKSIGHT
: A user whose identity is owned and managed internally by Amazon QuickSight.
The type of identity authentication used by the user.
" } }, @@ -2187,7 +2211,7 @@ "refs": { "CustomSql$Columns": "The column schema from the SQL query result set.
", "RelationalTable$InputColumns": "The column schema of the table.
", - "S3Source$InputColumns": "A physical table type for an S3 data source.
For non-JSON files, only STRING
data types are supported in input columns.
A physical table type for an S3 data source.
For files that aren't JSON, only STRING
data types are supported in input columns.
Integer parameters.
" + "Parameters$IntegerParameters": "The parameters that have a data type of integer.
" } }, "InternalFailureException": { @@ -2224,9 +2248,9 @@ } }, "JiraParameters": { - "base": "Jira parameters.
", + "base": "The parameters for Jira.
", "refs": { - "DataSourceParameters$JiraParameters": "Jira parameters.
" + "DataSourceParameters$JiraParameters": "The parameters for Jira.
" } }, "JoinInstruction": { @@ -2523,7 +2547,7 @@ "ManifestFileLocation": { "base": "Amazon S3 manifest file location.
", "refs": { - "S3Parameters$ManifestFileLocation": "Location of the Amazon S3 manifest file. This is NULL if the manifest file was uploaded into QuickSight.
" + "S3Parameters$ManifestFileLocation": "Location of the Amazon S3 manifest file. This is NULL if the manifest file was uploaded into Amazon QuickSight.
" } }, "MarginStyle": { @@ -2533,9 +2557,9 @@ } }, "MariaDbParameters": { - "base": "MariaDB parameters.
", + "base": "The parameters for MariaDB.
", "refs": { - "DataSourceParameters$MariaDbParameters": "MariaDB parameters.
" + "DataSourceParameters$MariaDbParameters": "The parameters for MariaDB.
" } }, "MaxResults": { @@ -2581,37 +2605,37 @@ } }, "MySqlParameters": { - "base": "MySQL parameters.
", + "base": "The parameters for MySQL.
", "refs": { - "DataSourceParameters$MySqlParameters": "MySQL parameters.
" + "DataSourceParameters$MySqlParameters": "The parameters for MySQL.
" } }, "Namespace": { "base": null, "refs": { - "AccountSettings$DefaultNamespace": "The default QuickSight namespace for your Amazon Web Services account;.
", - "CreateAccountCustomizationRequest$Namespace": "The QuickSight namespace that you want to add customizations to.
", + "AccountSettings$DefaultNamespace": "The default Amazon QuickSight namespace for your Amazon Web Services account.
", + "CreateAccountCustomizationRequest$Namespace": "The Amazon QuickSight namespace that you want to add customizations to.
", "CreateAccountCustomizationResponse$Namespace": "The namespace associated with the customization you're creating.
", "CreateGroupMembershipRequest$Namespace": "The namespace. Currently, you should set this to default
.
The namespace. Currently, you should set this to default
.
The namespace that contains the assignment.
", "CreateNamespaceRequest$Namespace": "The name that you want to use to describe the new namespace.
", "CreateNamespaceResponse$Name": "The name of the new namespace that you created.
", - "DeleteAccountCustomizationRequest$Namespace": "The QuickSight namespace that you're deleting the customizations from.
", + "DeleteAccountCustomizationRequest$Namespace": "The Amazon QuickSight namespace that you're deleting the customizations from.
", "DeleteGroupMembershipRequest$Namespace": "The namespace. Currently, you should set this to default
.
The namespace. Currently, you should set this to default
.
The namespace that contains the assignment.
", "DeleteNamespaceRequest$Namespace": "The namespace that you want to delete.
", "DeleteUserByPrincipalIdRequest$Namespace": "The namespace. Currently, you should set this to default
.
The namespace. Currently, you should set this to default
.
The QuickSight namespace that you want to describe QuickSight customizations for.
", - "DescribeAccountCustomizationResponse$Namespace": "The QuickSight namespace that you're describing.
", + "DescribeAccountCustomizationRequest$Namespace": "The Amazon QuickSight namespace that you want to describe Amazon QuickSight customizations for.
", + "DescribeAccountCustomizationResponse$Namespace": "The Amazon QuickSight namespace that you're describing.
", "DescribeGroupRequest$Namespace": "The namespace. Currently, you should set this to default
.
The namespace that contains the assignment.
", "DescribeNamespaceRequest$Namespace": "The namespace that you want to describe.
", "DescribeUserRequest$Namespace": "The namespace. Currently, you should set this to default
.
The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon QuickSight custom namespace, set this to default
.
The Amazon QuickSight namespace that the user virtually belongs to. If you are not using an Amazon QuickSight custom namespace, set this to default
.
The Amazon QuickSight namespace that contains the dashboard IDs in this request. If you're not using a custom namespace, set Namespace = default
.
The namespace. Currently, you should set this to default
.
The namespace. Currently, you should set this to default
.
The namespace of the assignment.
", @@ -2621,9 +2645,9 @@ "NamespaceInfoV2$Name": "The name of the error.
", "RegisterUserRequest$Namespace": "The namespace. Currently, you should set this to default
.
The namespace associated with the dataset that contains permissions for RLS.
", - "UpdateAccountCustomizationRequest$Namespace": "The namespace that you want to update QuickSight customizations for.
", + "UpdateAccountCustomizationRequest$Namespace": "The namespace that you want to update Amazon QuickSight customizations for.
", "UpdateAccountCustomizationResponse$Namespace": "The namespace associated with the customization that you're updating.
", - "UpdateAccountSettingsRequest$DefaultNamespace": "The default namespace for this Amazon Web Services account;. Currently, the default is default
. Identity and Access Management (IAM) users that register for the first time with QuickSight provide an email that becomes associated with the default namespace.
The default namespace for this Amazon Web Services account. Currently, the default is default
. Identity and Access Management (IAM) users that register for the first time with Amazon QuickSight provide an email that becomes associated with the default namespace.
The namespace. Currently, you should set this to default
.
The namespace of the assignment.
", "UpdateUserRequest$Namespace": "The namespace. Currently, you should set this to default
.
The information about the namespaces in this Amazon Web Services account;. The response includes the namespace ARN, name, Amazon Web Services Region;, notification email address, creation status, and identity store.
" + "ListNamespacesResponse$Namespaces": "The information about the namespaces in this Amazon Web Services account. The response includes the namespace ARN, name, Amazon Web Services Region;, notification email address, creation status, and identity store.
" } }, "NonEmptyString": { @@ -2670,7 +2694,7 @@ "DateTimeParameter$Name": "A display name for the date-time parameter.
", "DecimalParameter$Name": "A display name for the decimal parameter.
", "IntegerParameter$Name": "The name of the integer parameter.
", - "Sheet$Name": "The name of a sheet. This name is displayed on the sheet's tab in the QuickSight console.
", + "Sheet$Name": "The name of a sheet. This name is displayed on the sheet's tab in the Amazon QuickSight console.
", "StringParameter$Name": "A display name for a string parameter.
", "TemplateError$Message": "Description of the error type.
", "ThemeError$Message": "The error message.
" @@ -2689,9 +2713,9 @@ } }, "OracleParameters": { - "base": "Oracle parameters.
", + "base": "The parameters for Oracle.
", "refs": { - "DataSourceParameters$OracleParameters": "Oracle parameters.
" + "DataSourceParameters$OracleParameters": "The parameters for Oracle.
" } }, "OutputColumn": { @@ -2707,7 +2731,7 @@ } }, "Parameters": { - "base": "A list of QuickSight parameters and the list's override values.
", + "base": "A list of Amazon QuickSight parameters and the list's override values.
", "refs": { "CreateAnalysisRequest$Parameters": "The parameter names and override values that you want to use. An analysis can have any parameter type, and some parameters might accept multiple values.
", "CreateDashboardRequest$Parameters": "The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values.
", @@ -2752,7 +2776,7 @@ "base": null, "refs": { "AuroraParameters$Port": "Port.
", - "AuroraPostgreSqlParameters$Port": "Port.
", + "AuroraPostgreSqlParameters$Port": "The port that Amazon Aurora PostgreSQL is listening on.
", "MariaDbParameters$Port": "Port.
", "MySqlParameters$Port": "Port.
", "OracleParameters$Port": "Port.
", @@ -2771,9 +2795,9 @@ } }, "PostgreSqlParameters": { - "base": "PostgreSQL parameters.
", + "base": "The parameters for PostgreSQL.
", "refs": { - "DataSourceParameters$PostgreSqlParameters": "PostgreSQL parameters.
" + "DataSourceParameters$PostgreSqlParameters": "The parameters for PostgreSQL.
" } }, "PreconditionNotMetException": { @@ -2782,21 +2806,21 @@ } }, "PrestoParameters": { - "base": "Presto parameters.
", + "base": "The parameters for Presto.
", "refs": { - "DataSourceParameters$PrestoParameters": "Presto parameters.
" + "DataSourceParameters$PrestoParameters": "The parameters for Presto.
" } }, "Principal": { "base": null, "refs": { - "ResourcePermission$Principal": "The Amazon Resource Name (ARN) of the principal. This can be one of the following:
The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)
The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)
The ARN of an Amazon Web Services account; root: This is an IAM ARN rather than a QuickSight ARN. Use this option only to share resources (templates) across Amazon Web Services accounts. (This is less common.)
The Amazon Resource Name (ARN) of the principal. This can be one of the following:
The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)
The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)
The ARN of an Amazon Web Services account root: This is an IAMARN rather than a Amazon QuickSight ARN. Use this option only to share resources (templates) across Amazon Web Services accounts. (This is less common.)
An array of Amazon Resource Names (ARNs) for QuickSight users or groups.
" + "ColumnLevelPermissionRule$Principals": "An array of Amazon Resource Names (ARNs) for Amazon QuickSight users or groups.
" } }, "ProjectOperation": { @@ -2829,21 +2853,21 @@ } }, "RdsParameters": { - "base": "Amazon RDS parameters.
", + "base": "The parameters for Amazon RDS.
", "refs": { - "DataSourceParameters$RdsParameters": "Amazon RDS parameters.
" + "DataSourceParameters$RdsParameters": "The parameters for Amazon RDS.
" } }, "RecoveryWindowInDays": { "base": null, "refs": { - "DeleteAnalysisRequest$RecoveryWindowInDays": "A value that specifies the number of days that QuickSight waits before it deletes the analysis. You can't use this parameter with the ForceDeleteWithoutRecovery
option in the same API call. The default value is 30.
A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. You can't use this parameter with the ForceDeleteWithoutRecovery
option in the same API call. The default value is 30.
Amazon Redshift parameters. The ClusterId
field can be blank if Host
and Port
are both set. The Host
and Port
fields can be blank if the ClusterId
field is set.
The parameters for Amazon Redshift. The ClusterId
field can be blank if Host
and Port
are both set. The Host
and Port
fields can be blank if the ClusterId
field is set.
Amazon Redshift parameters.
" + "DataSourceParameters$RedshiftParameters": "The parameters for Amazon Redshift.
" } }, "RegisterUserRequest": { @@ -2912,33 +2936,33 @@ "ResourceId": { "base": null, "refs": { - "CreateDataSetRequest$DataSetId": "An ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "CreateDataSetResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", + "CreateDataSetRequest$DataSetId": "An ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "CreateDataSetResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", "CreateDataSetResponse$IngestionId": "The ID of the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.
", - "CreateDataSourceRequest$DataSourceId": "An ID for the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "CreateDataSourceResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", + "CreateDataSourceRequest$DataSourceId": "An ID for the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "CreateDataSourceResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", "DataSet$DataSetId": "The ID of the dataset.
", "DataSetSummary$DataSetId": "The ID of the dataset.
", - "DataSource$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DeleteDataSetRequest$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DeleteDataSetResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DeleteDataSourceRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DeleteDataSourceResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DescribeDataSetPermissionsRequest$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DescribeDataSetPermissionsResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DescribeDataSetRequest$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DescribeDataSourcePermissionsRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DescribeDataSourcePermissionsResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "DescribeDataSourceRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSetPermissionsRequest$DataSetId": "The ID for the dataset whose permissions you want to update. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSetPermissionsResponse$DataSetId": "The ID for the dataset whose permissions you want to update. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSetRequest$DataSetId": "The ID for the dataset that you want to update. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSetResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", + "DataSource$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DeleteDataSetRequest$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DeleteDataSetResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DeleteDataSourceRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DeleteDataSourceResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DescribeDataSetPermissionsRequest$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DescribeDataSetPermissionsResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DescribeDataSetRequest$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DescribeDataSourcePermissionsRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DescribeDataSourcePermissionsResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "DescribeDataSourceRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSetPermissionsRequest$DataSetId": "The ID for the dataset whose permissions you want to update. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSetPermissionsResponse$DataSetId": "The ID for the dataset whose permissions you want to update. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSetRequest$DataSetId": "The ID for the dataset that you want to update. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSetResponse$DataSetId": "The ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", "UpdateDataSetResponse$IngestionId": "The ID of the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.
", - "UpdateDataSourcePermissionsRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSourcePermissionsResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSourceRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "UpdateDataSourceResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
" + "UpdateDataSourcePermissionsRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSourcePermissionsResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSourceRequest$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "UpdateDataSourceResponse$DataSourceId": "The ID of the data source. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
" } }, "ResourceName": { @@ -2969,7 +2993,7 @@ "base": null, "refs": { "CreateAnalysisRequest$Permissions": "A structure that describes the principals and the resource-level permissions on an analysis. You can use the Permissions
structure to grant permissions by providing a list of Identity and Access Management (IAM) action information for each principal listed by Amazon Resource Name (ARN).
To specify no permissions, omit Permissions
.
A structure that contains the permissions of the dashboard. You can use this structure for granting permissions by providing a list of IAM action information for each principal ARN.
To specify no permissions, omit the permissions list.
", + "CreateDashboardRequest$Permissions": "A structure that contains the permissions of the dashboard. You can use this structure for granting permissions by providing a list of IAMaction information for each principal ARN.
To specify no permissions, omit the permissions list.
", "CreateDataSetRequest$Permissions": "A list of resource permissions on the dataset.
", "CreateDataSourceRequest$Permissions": "A list of resource permissions on the data source.
", "CreateFolderRequest$Permissions": "A structure that describes the principals and the resource-level permissions of a folder.
To specify no permissions, omit Permissions
.
The dashboard ID for the dashboard that you want the user to see first. This ID is included in the output URL. When the URL in response is accessed, Amazon QuickSight renders this dashboard.
The Amazon Resource Name (ARN) of this dashboard must be included in the AuthorizedResourceArns
parameter. Otherwise, the request will fail with InvalidParameterValueException
.
The ID for the analysis that you're creating. This ID displays in the URL of the analysis.
", "CreateAnalysisResponse$AnalysisId": "The ID of the analysis.
", - "CreateDashboardRequest$DashboardId": "The ID for the dashboard, also added to the IAM policy.
", + "CreateDashboardRequest$DashboardId": "The ID for the dashboard, also added to the IAMpolicy.
", "CreateDashboardResponse$DashboardId": "The ID for the dashboard.
", "CreateFolderMembershipRequest$FolderId": "The folder ID.
", "CreateFolderMembershipRequest$MemberId": "The ID of the asset (the dashboard, analysis, or dataset).
", "CreateFolderRequest$FolderId": "The folder ID.
", "CreateFolderResponse$FolderId": "The folder ID for the newly created folder.
", "CreateTemplateAliasRequest$TemplateId": "An ID for the template.
", - "CreateTemplateRequest$TemplateId": "An ID for the template that you want to create. This template is unique per Amazon Web Services Region; in each Amazon Web Services account;.
", + "CreateTemplateRequest$TemplateId": "An ID for the template that you want to create. This template is unique per Amazon Web Services Region; in each Amazon Web Services account.
", "CreateTemplateResponse$TemplateId": "The ID of the template.
", "CreateThemeAliasRequest$ThemeId": "An ID for the theme alias.
", - "CreateThemeRequest$ThemeId": "An ID for the theme that you want to create. The theme ID is unique per Amazon Web Services Region; in each Amazon Web Services account;.
", - "CreateThemeRequest$BaseThemeId": "The ID of the theme that a custom theme will inherit from. All themes inherit from one of the starting themes defined by Amazon QuickSight. For a list of the starting themes, use ListThemes
or choose Themes from within a QuickSight analysis.
An ID for the theme that you want to create. The theme ID is unique per Amazon Web Services Region in each Amazon Web Services account.
", + "CreateThemeRequest$BaseThemeId": "The ID of the theme that a custom theme will inherit from. All themes inherit from one of the starting themes defined by Amazon QuickSight. For a list of the starting themes, use ListThemes
or choose Themes from within a Amazon QuickSight analysis.
The ID of the theme.
", "Dashboard$DashboardId": "Dashboard ID.
", "DashboardSummary$DashboardId": "Dashboard ID.
", @@ -3078,7 +3102,7 @@ "DescribeAnalysisPermissionsRequest$AnalysisId": "The ID of the analysis whose permissions you're describing. The ID is part of the analysis URL.
", "DescribeAnalysisPermissionsResponse$AnalysisId": "The ID of the analysis whose permissions you're describing.
", "DescribeAnalysisRequest$AnalysisId": "The ID of the analysis that you're describing. The ID is part of the URL of the analysis.
", - "DescribeDashboardPermissionsRequest$DashboardId": "The ID for the dashboard, also added to the IAM policy.
", + "DescribeDashboardPermissionsRequest$DashboardId": "The ID for the dashboard, also added to the IAMpolicy.
", "DescribeDashboardPermissionsResponse$DashboardId": "The ID for the dashboard.
", "DescribeDashboardRequest$DashboardId": "The ID for the dashboard.
", "DescribeFolderPermissionsRequest$FolderId": "The folder ID.
", @@ -3109,11 +3133,11 @@ "RestoreAnalysisRequest$AnalysisId": "The ID of the analysis that you're restoring.
", "RestoreAnalysisResponse$AnalysisId": "The ID of the analysis that you're restoring.
", "Sheet$SheetId": "The unique identifier associated with a sheet.
", - "Template$TemplateId": "The ID for the template. This is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "TemplateSummary$TemplateId": "The ID of the template. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", + "Template$TemplateId": "The ID for the template. This is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "TemplateSummary$TemplateId": "The ID of the template. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", "Theme$ThemeId": "The identifier that the user gives to the theme.
", - "ThemeSummary$ThemeId": "The ID of the theme. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account;.
", - "ThemeVersion$BaseThemeId": "The Amazon QuickSight-defined ID of the theme that a custom theme inherits from. All themes initially inherit from a default QuickSight theme.
", + "ThemeSummary$ThemeId": "The ID of the theme. This ID is unique per Amazon Web Services Region; for each Amazon Web Services account.
", + "ThemeVersion$BaseThemeId": "The Amazon QuickSight-defined ID of the theme that a custom theme inherits from. All themes initially inherit from a default Amazon QuickSight theme.
", "UpdateAnalysisPermissionsRequest$AnalysisId": "The ID of the analysis whose permissions you're updating. The ID is part of the analysis URL.
", "UpdateAnalysisPermissionsResponse$AnalysisId": "The ID of the analysis that you updated permissions for.
", "UpdateAnalysisRequest$AnalysisId": "The ID for the analysis that you're updating. This ID displays in the URL of the analysis.
", @@ -3144,15 +3168,15 @@ "RoleName": { "base": null, "refs": { - "RegisterUserRequest$CustomPermissionsName": "(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:
Create and update data sources
Create and update datasets
Create and update email reports
Subscribe to email reports
To add custom permissions to an existing user, use UpdateUser
instead.
A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the QuickSight console. Then, you use the RegisterUser
API operation to assign the named set of permissions to a QuickSight user.
QuickSight custom permissions are applied through IAM policies. Therefore, they override the permissions typically granted by assigning QuickSight users to one of the default security cohorts in QuickSight (admin, author, reader).
This feature is available only to QuickSight Enterprise edition subscriptions.
", - "UpdateUserRequest$CustomPermissionsName": "(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:
Create and update data sources
Create and update datasets
Create and update email reports
Subscribe to email reports
A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the QuickSight console. Then, you use the RegisterUser
API operation to assign the named set of permissions to a QuickSight user.
QuickSight custom permissions are applied through IAM policies. Therefore, they override the permissions typically granted by assigning QuickSight users to one of the default security cohorts in QuickSight (admin, author, reader).
This feature is available only to QuickSight Enterprise edition subscriptions.
", + "RegisterUserRequest$CustomPermissionsName": "(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:
Create and update data sources
Create and update datasets
Create and update email reports
Subscribe to email reports
To add custom permissions to an existing user, use UpdateUser
instead.
A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the Amazon QuickSight console. Then, you use the RegisterUser
API operation to assign the named set of permissions to a Amazon QuickSight user.
Amazon QuickSight custom permissions are applied through IAMpolicies. Therefore, they override the permissions typically granted by assigning Amazon QuickSight users to one of the default security cohorts in Amazon QuickSight (admin, author, reader).
This feature is available only to Amazon QuickSight Enterprise edition subscriptions.
", + "UpdateUserRequest$CustomPermissionsName": "(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:
Create and update data sources
Create and update datasets
Create and update email reports
Subscribe to email reports
A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the Amazon QuickSight console. Then, you use the RegisterUser
API operation to assign the named set of permissions to a Amazon QuickSight user.
Amazon QuickSight custom permissions are applied through IAMpolicies. Therefore, they override the permissions typically granted by assigning Amazon QuickSight users to one of the default security cohorts in Amazon QuickSight (admin, author, reader).
This feature is available only to Amazon QuickSight Enterprise edition subscriptions.
", "User$CustomPermissionsName": "The custom permissions profile associated with this user.
" } }, "RoleSessionName": { "base": null, "refs": { - "RegisterUserRequest$SessionName": "You need to use this parameter only when you register one or more users using an assumed IAM role. You don't need to provide the session name for other scenarios, for example when you are registering an IAM user or an Amazon QuickSight user. You can register multiple users using the same IAM role if each user has a different session name. For more information on assuming IAM roles, see assume-role
in the AWS CLI Reference.
You need to use this parameter only when you register one or more users using an assumed IAMrole. You don't need to provide the session name for other scenarios, for example when you are registering an IAMuser or an Amazon QuickSight user. You can register multiple users using the same IAMrole if each user has a different session name. For more information on assuming IAMroles, see assume-role
in the AWS CLI Reference.
The type of permissions to use when interpretting the permissions for RLS. DENY_ACCESS
is included for backward compatibility only.
The type of permissions to use when interpreting the permissions for RLS. DENY_ACCESS
is included for backward compatibility only.
S3 parameters.
", + "base": "The parameters for S3.
", "refs": { - "DataSourceParameters$S3Parameters": "S3 parameters.
" + "DataSourceParameters$S3Parameters": "The parameters for S3.
" } }, "S3Source": { @@ -3263,9 +3287,9 @@ } }, "ServiceNowParameters": { - "base": "ServiceNow parameters.
", + "base": "The parameters for ServiceNow.
", "refs": { - "DataSourceParameters$ServiceNowParameters": "ServiceNow parameters.
" + "DataSourceParameters$ServiceNowParameters": "The parameters for ServiceNow.
" } }, "SessionLifetimeInMinutes": { @@ -3342,15 +3366,15 @@ } }, "SnowflakeParameters": { - "base": "Snowflake parameters.
", + "base": "The parameters for Snowflake.
", "refs": { - "DataSourceParameters$SnowflakeParameters": "Snowflake parameters.
" + "DataSourceParameters$SnowflakeParameters": "The parameters for Snowflake.
" } }, "SparkParameters": { - "base": "Spark parameters.
", + "base": "The parameters for Spark.
", "refs": { - "DataSourceParameters$SparkParameters": "Spark parameters.
" + "DataSourceParameters$SparkParameters": "The parameters for Spark.
" } }, "SqlQuery": { @@ -3360,17 +3384,17 @@ } }, "SqlServerParameters": { - "base": "SQL Server parameters.
", + "base": "The parameters for SQL Server.
", "refs": { - "DataSourceParameters$SqlServerParameters": "SQL Server parameters.
" + "DataSourceParameters$SqlServerParameters": "The parameters for SQL Server.
" } }, "SslProperties": { - "base": "Secure Socket Layer (SSL) properties that apply when QuickSight connects to your underlying data source.
", + "base": "Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your underlying data source.
", "refs": { - "CreateDataSourceRequest$SslProperties": "Secure Socket Layer (SSL) properties that apply when QuickSight connects to your underlying source.
", - "DataSource$SslProperties": "Secure Socket Layer (SSL) properties that apply when QuickSight connects to your underlying source.
", - "UpdateDataSourceRequest$SslProperties": "Secure Socket Layer (SSL) properties that apply when QuickSight connects to your underlying source.
" + "CreateDataSourceRequest$SslProperties": "Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your underlying source.
", + "DataSource$SslProperties": "Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your underlying source.
", + "UpdateDataSourceRequest$SslProperties": "Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your underlying source.
" } }, "Status": { @@ -3503,8 +3527,8 @@ "refs": { "AccessDeniedException$Message": null, "AccessDeniedException$RequestId": "The Amazon Web Services request ID for this request.
", - "AccountSettings$AccountName": "The \"account name\" you provided for the QuickSight subscription in your Amazon Web Services account;. You create this name when you sign up for QuickSight. It is unique in all of Amazon Web Services and it appears only when users sign in.
", - "AccountSettings$NotificationEmail": "The main notification email for your QuickSight subscription.
", + "AccountSettings$AccountName": "The \"account name\" you provided for the Amazon QuickSight subscription in your Amazon Web Services account. You create this name when you sign up for Amazon QuickSight. It is unique in all of Amazon Web Services and it appears only when users sign in.
", + "AccountSettings$NotificationEmail": "The main notification email for your Amazon QuickSight subscription.
", "ActionList$member": null, "AnalysisSearchFilter$Value": "The value of the named item, in this case QUICKSIGHT_USER
, that you want to use as a filter, for example \"Value\"
. An example is \"arn:aws:quicksight:us-east-1:1:user/default/UserName1\"
.
The name of the column group's column schema.
", @@ -3669,9 +3693,9 @@ "QuickSightUserNotFoundException$Message": null, "QuickSightUserNotFoundException$RequestId": "The Amazon Web Services request ID for this request.
", "RegisterUserRequest$Email": "The email address of the user that you want to register.
", - "RegisterUserRequest$IamArn": "The ARN of the IAM user or role that you are registering with Amazon QuickSight.
", - "RegisterUserRequest$ExternalLoginFederationProviderType": "The type of supported external login provider that provides identity to let a user federate into Amazon QuickSight with an associated AWS Identity and Access Management (IAM) role. The type of supported external login provider can be one of the following.
COGNITO
: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. When choosing the COGNITO
provider type, don’t use the \"CustomFederationProviderUrl\" parameter which is only needed when the external provider is custom.
CUSTOM_OIDC
: Custom OpenID Connect (OIDC) provider. When choosing CUSTOM_OIDC
type, use the CustomFederationProviderUrl
parameter to provide the custom OIDC provider URL.
The URL of the custom OpenID Connect (OIDC) provider that provides identity to let a user federate into QuickSight with an associated AWS Identity and Access Management (IAM) role. This parameter should only be used when ExternalLoginFederationProviderType
parameter is set to CUSTOM_OIDC
.
The ARN of the IAMuser or role that you are registering with Amazon QuickSight.
", + "RegisterUserRequest$ExternalLoginFederationProviderType": "The type of supported external login provider that provides identity to let a user federate into Amazon QuickSight with an associated Identity and Access Management(IAM) role. The type of supported external login provider can be one of the following.
COGNITO
: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. When choosing the COGNITO
provider type, don’t use the \"CustomFederationProviderUrl\" parameter which is only needed when the external provider is custom.
CUSTOM_OIDC
: Custom OpenID Connect (OIDC) provider. When choosing CUSTOM_OIDC
type, use the CustomFederationProviderUrl
parameter to provide the custom OIDC provider URL.
The URL of the custom OpenID Connect (OIDC) provider that provides identity to let a user federate into Amazon QuickSight with an associated Identity and Access Management(IAM) role. This parameter should only be used when ExternalLoginFederationProviderType
parameter is set to CUSTOM_OIDC
.
The identity ID for a user in the external login provider.
", "RegisterUserResponse$UserInvitationUrl": "The URL the user visits to complete registration and provide a password. This is returned only for users with an identity type of QUICKSIGHT
.
The Amazon Web Services request ID for this operation.
", @@ -3704,7 +3728,7 @@ "UnsupportedUserEditionException$RequestId": "The Amazon Web Services request ID for this request.
", "UntagResourceResponse$RequestId": "The Amazon Web Services request ID for this operation.
", "UpdateAccountCustomizationResponse$RequestId": "The Amazon Web Services request ID for this operation.
", - "UpdateAccountSettingsRequest$NotificationEmail": "The email address that you want QuickSight to send notifications to regarding your Amazon Web Services account; or QuickSight subscription.
", + "UpdateAccountSettingsRequest$NotificationEmail": "The email address that you want Amazon QuickSight to send notifications to regarding your Amazon Web Services account or Amazon QuickSight subscription.
", "UpdateAccountSettingsResponse$RequestId": "The Amazon Web Services request ID for this operation.
", "UpdateAnalysisPermissionsResponse$RequestId": "The Amazon Web Services request ID for this operation.
", "UpdateAnalysisResponse$RequestId": "The Amazon Web Services request ID for this operation.
", @@ -3727,13 +3751,13 @@ "UpdateThemePermissionsResponse$RequestId": "The Amazon Web Services request ID for this operation.
", "UpdateThemeResponse$RequestId": "The Amazon Web Services request ID for this operation.
", "UpdateUserRequest$Email": "The email address of the user that you want to update.
", - "UpdateUserRequest$ExternalLoginFederationProviderType": "The type of supported external login provider that provides identity to let a user federate into QuickSight with an associated AWS Identity and Access Management (IAM) role. The type of supported external login provider can be one of the following.
COGNITO
: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. When choosing the COGNITO
provider type, don’t use the \"CustomFederationProviderUrl\" parameter which is only needed when the external provider is custom.
CUSTOM_OIDC
: Custom OpenID Connect (OIDC) provider. When choosing CUSTOM_OIDC
type, use the CustomFederationProviderUrl
parameter to provide the custom OIDC provider URL.
NONE
: This clears all the previously saved external login information for a user. Use DescribeUser
API to check the external login information.
The URL of the custom OpenID Connect (OIDC) provider that provides identity to let a user federate into QuickSight with an associated AWS Identity and Access Management (IAM) role. This parameter should only be used when ExternalLoginFederationProviderType
parameter is set to CUSTOM_OIDC
.
The type of supported external login provider that provides identity to let a user federate into Amazon QuickSight with an associated Identity and Access Management(IAM) role. The type of supported external login provider can be one of the following.
COGNITO
: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. When choosing the COGNITO
provider type, don’t use the \"CustomFederationProviderUrl\" parameter which is only needed when the external provider is custom.
CUSTOM_OIDC
: Custom OpenID Connect (OIDC) provider. When choosing CUSTOM_OIDC
type, use the CustomFederationProviderUrl
parameter to provide the custom OIDC provider URL.
NONE
: This clears all the previously saved external login information for a user. Use DescribeUser
API to check the external login information.
The URL of the custom OpenID Connect (OIDC) provider that provides identity to let a user federate into Amazon QuickSight with an associated Identity and Access Management(IAM) role. This parameter should only be used when ExternalLoginFederationProviderType
parameter is set to CUSTOM_OIDC
.
The identity ID for a user in the external login provider.
", "UpdateUserResponse$RequestId": "The Amazon Web Services request ID for this operation.
", "User$Email": "The user's email address.
", "User$PrincipalId": "The principal ID of the user.
", - "User$ExternalLoginFederationProviderType": "The type of supported external login provider that provides identity to let the user federate into Amazon QuickSight with an associated IAM role. The type can be one of the following.
COGNITO
: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com.
CUSTOM_OIDC
: Custom OpenID Connect (OIDC) provider.
The type of supported external login provider that provides identity to let the user federate into Amazon QuickSight with an associated IAMrole. The type can be one of the following.
COGNITO
: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com.
CUSTOM_OIDC
: Custom OpenID Connect (OIDC) provider.
The URL of the external login provider.
", "User$ExternalLoginId": "The identity ID for the user in the external login provider.
" } @@ -3753,7 +3777,7 @@ "StringParameterList": { "base": null, "refs": { - "Parameters$StringParameters": "String parameters.
" + "Parameters$StringParameters": "The parameters that have a data type of string.
" } }, "Tag": { @@ -3814,7 +3838,7 @@ } }, "Template": { - "base": "A template object. A template is an entity in QuickSight that encapsulates the metadata required to create an analysis and that you can use to create a dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with an analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.
You can share templates across Amazon Web Services accounts by allowing users in other Amazon Web Services accounts to create a template or a dashboard from an existing template.
", + "base": "A template object. A template is an entity in Amazon QuickSight that encapsulates the metadata required to create an analysis and that you can use to create a dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with an analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.
You can share templates across Amazon Web Services accounts by allowing users in other Amazon Web Services accounts to create a template or a dashboard from an existing template.
", "refs": { "DescribeTemplateResponse$Template": "The template structure for the object you want to describe.
" } @@ -3870,8 +3894,8 @@ "TemplateSourceEntity": { "base": "The source entity of the template.
", "refs": { - "CreateTemplateRequest$SourceEntity": "The entity that you are using as a source when you create the template. In SourceEntity
, you specify the type of object you're using as source: SourceTemplate
for a template or SourceAnalysis
for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate
, specify the ARN of the source template. For SourceAnalysis
, specify the ARN of the source analysis. The SourceTemplate
ARN can contain any Amazon Web Services account; and any QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
or SourceAnalysis
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
The entity that you are using as a source when you update the template. In SourceEntity
, you specify the type of object you're using as source: SourceTemplate
for a template or SourceAnalysis
for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate
, specify the ARN of the source template. For SourceAnalysis
, specify the ARN of the source analysis. The SourceTemplate
ARN can contain any Amazon Web Services account; and any QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
or SourceAnalysis
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
The entity that you are using as a source when you create the template. In SourceEntity
, you specify the type of object you're using as source: SourceTemplate
for a template or SourceAnalysis
for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate
, specify the ARN of the source template. For SourceAnalysis
, specify the ARN of the source analysis. The SourceTemplate
ARN can contain any Amazon Web Services account and any Amazon QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
or SourceAnalysis
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
The entity that you are using as a source when you update the template. In SourceEntity
, you specify the type of object you're using as source: SourceTemplate
for a template or SourceAnalysis
for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate
, specify the ARN of the source template. For SourceAnalysis
, specify the ARN of the source analysis. The SourceTemplate
ARN can contain any Amazon Web Services account and any Amazon QuickSight-supported Amazon Web Services Region;.
Use the DataSetReferences
entity within SourceTemplate
or SourceAnalysis
to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.
Teradata parameters.
", + "base": "The parameters for Teradata.
", "refs": { - "DataSourceParameters$TeradataParameters": "Teradata parameters.
" + "DataSourceParameters$TeradataParameters": "The parameters for Teradata.
" } }, "TextQualifier": { @@ -4092,9 +4116,9 @@ } }, "TwitterParameters": { - "base": "Twitter parameters.
", + "base": "The parameters for Twitter.
", "refs": { - "DataSourceParameters$TwitterParameters": "Twitter parameters.
" + "DataSourceParameters$TwitterParameters": "The parameters for Twitter.
" } }, "TypeCastFormat": { @@ -4110,13 +4134,19 @@ } }, "UnsupportedPricingPlanException": { - "base": "This error indicates that you are calling an embedding operation in Amazon QuickSight without the required pricing plan on your Amazon Web Services account;. Before you can use embedding for anonymous users, a QuickSight administrator needs to add capacity pricing to QuickSight. You can do this on the Manage QuickSight page.
After capacity pricing is added, you can use the GetDashboardEmbedUrl API operation with the --identity-type ANONYMOUS
option.
This error indicates that you are calling an embedding operation in Amazon QuickSight without the required pricing plan on your Amazon Web Services account. Before you can use embedding for anonymous users, a Amazon QuickSight administrator needs to add capacity pricing to Amazon QuickSight. You can do this on the Manage Amazon QuickSight page.
After capacity pricing is added, you can use the GetDashboardEmbedUrl API operation with the --identity-type ANONYMOUS
option.
This error indicates that you are calling an operation on an Amazon QuickSight subscription where the edition doesn't include support for that operation. Amazon QuickSight currently has Standard Edition and Enterprise Edition. Not every operation and capability is available in every edition.
", + "base": "This error indicates that you are calling an operation on an Amazon QuickSight subscription where the edition doesn't include support for that operation. Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. Not every operation and capability is available in every edition.
", + "refs": { + } + }, + "UntagColumnOperation": { + "base": "A transform operation that removes tags associated with a column.
", "refs": { + "TransformOperation$UntagColumnOperation": null } }, "UntagResourceRequest": { @@ -4399,8 +4429,8 @@ "base": null, "refs": { "RegisterUserRequest$UserRole": "The Amazon QuickSight role for the user. The user role can be one of the following:
READER
: A user who has read-only access to dashboards.
AUTHOR
: A user who can create data sources, datasets, analyses, and dashboards.
ADMIN
: A user who is an author, who can also manage Amazon QuickSight settings.
RESTRICTED_READER
: This role isn't currently available for use.
RESTRICTED_AUTHOR
: This role isn't currently available for use.
The Amazon QuickSight role of the user. The role can be one of the following default security cohorts:
READER
: A user who has read-only access to dashboards.
AUTHOR
: A user who can create data sources, datasets, analyses, and dashboards.
ADMIN
: A user who is an author, who can also manage Amazon QuickSight settings.
The name of the QuickSight role is invisible to the user except for the console screens dealing with permissions.
", - "User$Role": "The Amazon QuickSight role for the user. The user role can be one of the following:.
READER
: A user who has read-only access to dashboards.
AUTHOR
: A user who can create data sources, datasets, analyses, and dashboards.
ADMIN
: A user who is an author, who can also manage Amazon QuickSight settings.
RESTRICTED_READER
: This role isn't currently available for use.
RESTRICTED_AUTHOR
: This role isn't currently available for use.
The Amazon QuickSight role of the user. The role can be one of the following default security cohorts:
READER
: A user who has read-only access to dashboards.
AUTHOR
: A user who can create data sources, datasets, analyses, and dashboards.
ADMIN
: A user who is an author, who can also manage Amazon QuickSight settings.
The name of the Amazon QuickSight role is invisible to the user except for the console screens dealing with permissions.
", + "User$Role": "The Amazon QuickSight role for the user. The user role can be one of the following:.
READER
: A user who has read-only access to dashboards.
AUTHOR
: A user who can create data sources, datasets, analyses, and dashboards.
ADMIN
: A user who is an author, who can also manage Amazon Amazon QuickSight settings.
RESTRICTED_READER
: This role isn't currently available for use.
RESTRICTED_AUTHOR
: This role isn't currently available for use.
VPC connection properties.
", "refs": { - "CreateDataSourceRequest$VpcConnectionProperties": "Use this parameter only when you want QuickSight to use a VPC connection when connecting to your underlying source.
", - "DataSource$VpcConnectionProperties": "The VPC connection information. You need to use this parameter only when you want QuickSight to use a VPC connection when connecting to your underlying source.
", - "UpdateDataSourceRequest$VpcConnectionProperties": "Use this parameter only when you want QuickSight to use a VPC connection when connecting to your underlying source.
" + "CreateDataSourceRequest$VpcConnectionProperties": "Use this parameter only when you want Amazon QuickSight to use a VPC connection when connecting to your underlying source.
", + "DataSource$VpcConnectionProperties": "The VPC connection information. You need to use this parameter only when you want Amazon QuickSight to use a VPC connection when connecting to your underlying source.
", + "UpdateDataSourceRequest$VpcConnectionProperties": "Use this parameter only when you want Amazon QuickSight to use a VPC connection when connecting to your underlying source.
" } }, "Warehouse": { @@ -4478,7 +4508,7 @@ "refs": { "BorderStyle$Show": "The option to enable display of borders for visuals.
", "DeleteAnalysisRequest$ForceDeleteWithoutRecovery": "This option defaults to the value NoForceDeleteWithoutRecovery
. To immediately delete the analysis, add the ForceDeleteWithoutRecovery
option. You can't restore an analysis after it's deleted.
The Resolved
flag works with the other parameters to determine which view of QuickSight customizations is returned. You can add this flag to your command to use the same view that QuickSight uses to identify which customizations to apply to the console. Omit this flag, or set it to no-resolved
, to reveal customizations that are configured at different levels.
The Resolved
flag works with the other parameters to determine which view of Amazon QuickSight customizations is returned. You can add this flag to your command to use the same view that Amazon QuickSight uses to identify which customizations to apply to the console. Omit this flag, or set it to no-resolved
, to reveal customizations that are configured at different levels.
This Boolean value controls whether to display a gutter space between sheet tiles.
", "MarginStyle$Show": "This Boolean value controls whether to display sheet margins.
" } diff --git a/models/apis/s3control/2018-08-20/api-2.json b/models/apis/s3control/2018-08-20/api-2.json index 429583c3ed4..b1134c57588 100644 --- a/models/apis/s3control/2018-08-20/api-2.json +++ b/models/apis/s3control/2018-08-20/api-2.json @@ -79,6 +79,23 @@ "hostPrefix":"{AccountId}." } }, + "CreateMultiRegionAccessPoint":{ + "name":"CreateMultiRegionAccessPoint", + "http":{ + "method":"POST", + "requestUri":"/v20180820/async-requests/mrap/create" + }, + "input":{ + "shape":"CreateMultiRegionAccessPointRequest", + "locationName":"CreateMultiRegionAccessPointRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"CreateMultiRegionAccessPointResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, "DeleteAccessPoint":{ "name":"DeleteAccessPoint", "http":{ @@ -185,6 +202,23 @@ "hostPrefix":"{AccountId}." } }, + "DeleteMultiRegionAccessPoint":{ + "name":"DeleteMultiRegionAccessPoint", + "http":{ + "method":"POST", + "requestUri":"/v20180820/async-requests/mrap/delete" + }, + "input":{ + "shape":"DeleteMultiRegionAccessPointRequest", + "locationName":"DeleteMultiRegionAccessPointRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"DeleteMultiRegionAccessPointResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, "DeletePublicAccessBlock":{ "name":"DeletePublicAccessBlock", "http":{ @@ -237,6 +271,19 @@ "hostPrefix":"{AccountId}." } }, + "DescribeMultiRegionAccessPointOperation":{ + "name":"DescribeMultiRegionAccessPointOperation", + "http":{ + "method":"GET", + "requestUri":"/v20180820/async-requests/mrap/{request_token+}" + }, + "input":{"shape":"DescribeMultiRegionAccessPointOperationRequest"}, + "output":{"shape":"DescribeMultiRegionAccessPointOperationResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, "GetAccessPoint":{ "name":"GetAccessPoint", "http":{ @@ -386,6 +433,45 @@ "hostPrefix":"{AccountId}." } }, + "GetMultiRegionAccessPoint":{ + "name":"GetMultiRegionAccessPoint", + "http":{ + "method":"GET", + "requestUri":"/v20180820/mrap/instances/{name}" + }, + "input":{"shape":"GetMultiRegionAccessPointRequest"}, + "output":{"shape":"GetMultiRegionAccessPointResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, + "GetMultiRegionAccessPointPolicy":{ + "name":"GetMultiRegionAccessPointPolicy", + "http":{ + "method":"GET", + "requestUri":"/v20180820/mrap/instances/{name}/policy" + }, + "input":{"shape":"GetMultiRegionAccessPointPolicyRequest"}, + "output":{"shape":"GetMultiRegionAccessPointPolicyResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, + "GetMultiRegionAccessPointPolicyStatus":{ + "name":"GetMultiRegionAccessPointPolicyStatus", + "http":{ + "method":"GET", + "requestUri":"/v20180820/mrap/instances/{name}/policystatus" + }, + "input":{"shape":"GetMultiRegionAccessPointPolicyStatusRequest"}, + "output":{"shape":"GetMultiRegionAccessPointPolicyStatusResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, "GetPublicAccessBlock":{ "name":"GetPublicAccessBlock", "http":{ @@ -466,6 +552,19 @@ "hostPrefix":"{AccountId}." } }, + "ListMultiRegionAccessPoints":{ + "name":"ListMultiRegionAccessPoints", + "http":{ + "method":"GET", + "requestUri":"/v20180820/mrap/instances" + }, + "input":{"shape":"ListMultiRegionAccessPointsRequest"}, + "output":{"shape":"ListMultiRegionAccessPointsResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, "ListRegionalBuckets":{ "name":"ListRegionalBuckets", "http":{ @@ -597,6 +696,23 @@ "hostPrefix":"{AccountId}." } }, + "PutMultiRegionAccessPointPolicy":{ + "name":"PutMultiRegionAccessPointPolicy", + "http":{ + "method":"POST", + "requestUri":"/v20180820/async-requests/mrap/put-policy" + }, + "input":{ + "shape":"PutMultiRegionAccessPointPolicyRequest", + "locationName":"PutMultiRegionAccessPointPolicyRequest", + "xmlNamespace":{"uri":"http://awss3control.amazonaws.com/doc/2018-08-20/"} + }, + "output":{"shape":"PutMultiRegionAccessPointPolicyResult"}, + "endpoint":{ + "hostPrefix":"{AccountId}." + }, + "httpChecksumRequired":true + }, "PutPublicAccessBlock":{ "name":"PutPublicAccessBlock", "http":{ @@ -736,6 +852,57 @@ "max":63, "pattern":"^[0-9a-z\\\\-]{63}" }, + "AsyncCreationTimestamp":{"type":"timestamp"}, + "AsyncErrorDetails":{ + "type":"structure", + "members":{ + "Code":{"shape":"MaxLength1024String"}, + "Message":{"shape":"MaxLength1024String"}, + "Resource":{"shape":"MaxLength1024String"}, + "RequestId":{"shape":"MaxLength1024String"} + } + }, + "AsyncOperation":{ + "type":"structure", + "members":{ + "CreationTime":{"shape":"AsyncCreationTimestamp"}, + "Operation":{"shape":"AsyncOperationName"}, + "RequestTokenARN":{"shape":"AsyncRequestTokenARN"}, + "RequestParameters":{"shape":"AsyncRequestParameters"}, + "RequestStatus":{"shape":"AsyncRequestStatus"}, + "ResponseDetails":{"shape":"AsyncResponseDetails"} + } + }, + "AsyncOperationName":{ + "type":"string", + "enum":[ + "CreateMultiRegionAccessPoint", + "DeleteMultiRegionAccessPoint", + "PutMultiRegionAccessPointPolicy" + ] + }, + "AsyncRequestParameters":{ + "type":"structure", + "members":{ + "CreateMultiRegionAccessPointRequest":{"shape":"CreateMultiRegionAccessPointInput"}, + "DeleteMultiRegionAccessPointRequest":{"shape":"DeleteMultiRegionAccessPointInput"}, + "PutMultiRegionAccessPointPolicyRequest":{"shape":"PutMultiRegionAccessPointPolicyInput"} + } + }, + "AsyncRequestStatus":{"type":"string"}, + "AsyncRequestTokenARN":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"arn:.+" + }, + "AsyncResponseDetails":{ + "type":"structure", + "members":{ + "MultiRegionAccessPointDetails":{"shape":"MultiRegionAccessPointsAsyncResponse"}, + "ErrorDetails":{"shape":"AsyncErrorDetails"} + } + }, "AwsLambdaTransformation":{ "type":"structure", "required":["FunctionArn"], @@ -1001,7 +1168,47 @@ "JobId":{"shape":"JobId"} } }, + "CreateMultiRegionAccessPointInput":{ + "type":"structure", + "required":[ + "Name", + "Regions" + ], + "members":{ + "Name":{"shape":"MultiRegionAccessPointName"}, + "PublicAccessBlock":{"shape":"PublicAccessBlockConfiguration"}, + "Regions":{"shape":"RegionCreationList"} + } + }, + "CreateMultiRegionAccessPointRequest":{ + "type":"structure", + "required":[ + "AccountId", + "ClientToken", + "Details" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "ClientToken":{ + "shape":"MultiRegionAccessPointClientToken", + "idempotencyToken":true + }, + "Details":{"shape":"CreateMultiRegionAccessPointInput"} + } + }, + "CreateMultiRegionAccessPointResult":{ + "type":"structure", + "members":{ + "RequestTokenARN":{"shape":"AsyncRequestTokenARN"} + } + }, "CreationDate":{"type":"timestamp"}, + "CreationTimestamp":{"type":"timestamp"}, "Date":{"type":"timestamp"}, "Days":{"type":"integer"}, "DaysAfterInitiation":{"type":"integer"}, @@ -1190,6 +1397,40 @@ "members":{ } }, + "DeleteMultiRegionAccessPointInput":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{"shape":"MultiRegionAccessPointName"} + } + }, + "DeleteMultiRegionAccessPointRequest":{ + "type":"structure", + "required":[ + "AccountId", + "ClientToken", + "Details" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "ClientToken":{ + "shape":"MultiRegionAccessPointClientToken", + "idempotencyToken":true + }, + "Details":{"shape":"DeleteMultiRegionAccessPointInput"} + } + }, + "DeleteMultiRegionAccessPointResult":{ + "type":"structure", + "members":{ + "RequestTokenARN":{"shape":"AsyncRequestTokenARN"} + } + }, "DeletePublicAccessBlockRequest":{ "type":"structure", "required":["AccountId"], @@ -1273,11 +1514,43 @@ "Job":{"shape":"JobDescriptor"} } }, + "DescribeMultiRegionAccessPointOperationRequest":{ + "type":"structure", + "required":[ + "AccountId", + "RequestTokenARN" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "RequestTokenARN":{ + "shape":"AsyncRequestTokenARN", + "location":"uri", + "locationName":"request_token" + } + } + }, + "DescribeMultiRegionAccessPointOperationResult":{ + "type":"structure", + "members":{ + "AsyncOperation":{"shape":"AsyncOperation"} + } + }, "Endpoints":{ "type":"map", "key":{"shape":"NonEmptyMaxLength64String"}, "value":{"shape":"NonEmptyMaxLength1024String"} }, + "EstablishedMultiRegionAccessPointPolicy":{ + "type":"structure", + "members":{ + "Policy":{"shape":"Policy"} + } + }, "ExceptionMessage":{ "type":"string", "max":1024, @@ -1636,6 +1909,84 @@ "Tags":{"shape":"S3TagSet"} } }, + "GetMultiRegionAccessPointPolicyRequest":{ + "type":"structure", + "required":[ + "AccountId", + "Name" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "Name":{ + "shape":"MultiRegionAccessPointName", + "location":"uri", + "locationName":"name" + } + } + }, + "GetMultiRegionAccessPointPolicyResult":{ + "type":"structure", + "members":{ + "Policy":{"shape":"MultiRegionAccessPointPolicyDocument"} + } + }, + "GetMultiRegionAccessPointPolicyStatusRequest":{ + "type":"structure", + "required":[ + "AccountId", + "Name" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "Name":{ + "shape":"MultiRegionAccessPointName", + "location":"uri", + "locationName":"name" + } + } + }, + "GetMultiRegionAccessPointPolicyStatusResult":{ + "type":"structure", + "members":{ + "Established":{"shape":"PolicyStatus"} + } + }, + "GetMultiRegionAccessPointRequest":{ + "type":"structure", + "required":[ + "AccountId", + "Name" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "Name":{ + "shape":"MultiRegionAccessPointName", + "location":"uri", + "locationName":"name" + } + } + }, + "GetMultiRegionAccessPointResult":{ + "type":"structure", + "members":{ + "AccessPoint":{"shape":"MultiRegionAccessPointReport"} + } + }, "GetPublicAccessBlockOutput":{ "type":"structure", "members":{ @@ -2226,6 +2577,35 @@ "Jobs":{"shape":"JobListDescriptorList"} } }, + "ListMultiRegionAccessPointsRequest":{ + "type":"structure", + "required":["AccountId"], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "NextToken":{ + "shape":"NonEmptyMaxLength1024String", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListMultiRegionAccessPointsResult":{ + "type":"structure", + "members":{ + "AccessPoints":{"shape":"MultiRegionAccessPointReportList"}, + "NextToken":{"shape":"NonEmptyMaxLength1024String"} + } + }, "ListRegionalBucketsRequest":{ "type":"structure", "required":["AccountId"], @@ -2313,6 +2693,77 @@ "max":100, "min":0.1 }, + "MultiRegionAccessPointAlias":{ + "type":"string", + "max":63, + "pattern":"^[a-z][a-z0-9]*[.]mrap$" + }, + "MultiRegionAccessPointClientToken":{ + "type":"string", + "max":64, + "pattern":"\\S+" + }, + "MultiRegionAccessPointName":{ + "type":"string", + "max":50, + "pattern":"^[a-z0-9][-a-z0-9]{1,48}[a-z0-9]$" + }, + "MultiRegionAccessPointPolicyDocument":{ + "type":"structure", + "members":{ + "Established":{"shape":"EstablishedMultiRegionAccessPointPolicy"}, + "Proposed":{"shape":"ProposedMultiRegionAccessPointPolicy"} + } + }, + "MultiRegionAccessPointRegionalResponse":{ + "type":"structure", + "members":{ + "Name":{"shape":"RegionName"}, + "RequestStatus":{"shape":"AsyncRequestStatus"} + } + }, + "MultiRegionAccessPointRegionalResponseList":{ + "type":"list", + "member":{ + "shape":"MultiRegionAccessPointRegionalResponse", + "locationName":"Region" + } + }, + "MultiRegionAccessPointReport":{ + "type":"structure", + "members":{ + "Name":{"shape":"MultiRegionAccessPointName"}, + "Alias":{"shape":"MultiRegionAccessPointAlias"}, + "CreatedAt":{"shape":"CreationTimestamp"}, + "PublicAccessBlock":{"shape":"PublicAccessBlockConfiguration"}, + "Status":{"shape":"MultiRegionAccessPointStatus"}, + "Regions":{"shape":"RegionReportList"} + } + }, + "MultiRegionAccessPointReportList":{ + "type":"list", + "member":{ + "shape":"MultiRegionAccessPointReport", + "locationName":"AccessPoint" + } + }, + "MultiRegionAccessPointStatus":{ + "type":"string", + "enum":[ + "READY", + "INCONSISTENT_ACROSS_REGIONS", + "CREATING", + "PARTIALLY_CREATED", + "PARTIALLY_DELETED", + "DELETING" + ] + }, + "MultiRegionAccessPointsAsyncResponse":{ + "type":"structure", + "members":{ + "Regions":{"shape":"MultiRegionAccessPointRegionalResponseList"} + } + }, "NetworkOrigin":{ "type":"string", "enum":[ @@ -2516,6 +2967,12 @@ "SelectionCriteria":{"shape":"SelectionCriteria"} } }, + "ProposedMultiRegionAccessPointPolicy":{ + "type":"structure", + "members":{ + "Policy":{"shape":"Policy"} + } + }, "PublicAccessBlockConfiguration":{ "type":"structure", "members":{ @@ -2711,6 +3168,44 @@ "members":{ } }, + "PutMultiRegionAccessPointPolicyInput":{ + "type":"structure", + "required":[ + "Name", + "Policy" + ], + "members":{ + "Name":{"shape":"MultiRegionAccessPointName"}, + "Policy":{"shape":"Policy"} + } + }, + "PutMultiRegionAccessPointPolicyRequest":{ + "type":"structure", + "required":[ + "AccountId", + "ClientToken", + "Details" + ], + "members":{ + "AccountId":{ + "shape":"AccountId", + "hostLabel":true, + "location":"header", + "locationName":"x-amz-account-id" + }, + "ClientToken":{ + "shape":"MultiRegionAccessPointClientToken", + "idempotencyToken":true + }, + "Details":{"shape":"PutMultiRegionAccessPointPolicyInput"} + } + }, + "PutMultiRegionAccessPointPolicyResult":{ + "type":"structure", + "members":{ + "RequestTokenARN":{"shape":"AsyncRequestTokenARN"} + } + }, "PutPublicAccessBlockRequest":{ "type":"structure", "required":[ @@ -2782,6 +3277,39 @@ "members":{ } }, + "Region":{ + "type":"structure", + "required":["Bucket"], + "members":{ + "Bucket":{"shape":"BucketName"} + } + }, + "RegionCreationList":{ + "type":"list", + "member":{ + "shape":"Region", + "locationName":"Region" + } + }, + "RegionName":{ + "type":"string", + "max":64, + "min":1 + }, + "RegionReport":{ + "type":"structure", + "members":{ + "Bucket":{"shape":"BucketName"}, + "Region":{"shape":"RegionName"} + } + }, + "RegionReportList":{ + "type":"list", + "member":{ + "shape":"RegionReport", + "locationName":"Region" + } + }, "RegionalBucket":{ "type":"structure", "required":[ diff --git a/models/apis/s3control/2018-08-20/docs-2.json b/models/apis/s3control/2018-08-20/docs-2.json index 301ae9700ef..c4b9695cfd9 100644 --- a/models/apis/s3control/2018-08-20/docs-2.json +++ b/models/apis/s3control/2018-08-20/docs-2.json @@ -6,19 +6,22 @@ "CreateAccessPointForObjectLambda": "Creates an Object Lambda Access Point. For more information, see Transforming objects with Object Lambda Access Points in the Amazon S3 User Guide.
The following actions are related to CreateAccessPointForObjectLambda
:
This action creates an Amazon S3 on Outposts bucket. To create an S3 bucket, see Create Bucket in the Amazon S3 API Reference.
Creates a new Outposts bucket. By creating the bucket, you become the bucket owner. To create an Outposts bucket, you must have S3 on Outposts. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.
Not every string is an acceptable bucket name. For information on bucket naming restrictions, see Working with Amazon S3 Buckets.
S3 on Outposts buckets support:
Tags
LifecycleConfigurations for deleting expired objects
For a complete list of restrictions and Amazon S3 feature limitations on S3 on Outposts, see Amazon S3 on Outposts Restrictions and Limitations.
For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id
in your API request, see the Examples section.
The following actions are related to CreateBucket
for Amazon S3 on Outposts:
You can use S3 Batch Operations to perform large-scale batch actions on Amazon S3 objects. Batch Operations can run a single action on lists of Amazon S3 objects that you specify. For more information, see S3 Batch Operations in the Amazon S3 User Guide.
This action creates a S3 Batch Operations job.
Related actions include:
", + "CreateMultiRegionAccessPoint": "Creates a Multi-Region Access Point and associates it with the specified buckets. For more information about creating Multi-Region Access Points, see Creating Multi-Region Access Points in the Amazon S3 User Guide.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
This request is asynchronous, meaning that you might receive a response before the command has completed. When this request provides a response, it provides a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation
.
The following actions are related to CreateMultiRegionAccessPoint
:
Deletes the specified access point.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to DeleteAccessPoint
:
Deletes the specified Object Lambda Access Point.
The following actions are related to DeleteAccessPointForObjectLambda
:
Deletes the access point policy for the specified access point.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to DeleteAccessPointPolicy
:
Removes the resource policy for an Object Lambda Access Point.
The following actions are related to DeleteAccessPointPolicyForObjectLambda
:
This action deletes an Amazon S3 on Outposts bucket. To delete an S3 bucket, see DeleteBucket in the Amazon S3 API Reference.
Deletes the Amazon S3 on Outposts bucket. All objects (including all object versions and delete markers) in the bucket must be deleted before the bucket itself can be deleted. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
Related Resources
", "DeleteBucketLifecycleConfiguration": "This action deletes an Amazon S3 on Outposts bucket's lifecycle configuration. To delete an S3 bucket's lifecycle configuration, see DeleteBucketLifecycle in the Amazon S3 API Reference.
Deletes the lifecycle configuration from the specified Outposts bucket. Amazon S3 on Outposts removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 on Outposts no longer automatically deletes any objects on the basis of rules contained in the deleted lifecycle configuration. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.
To use this action, you must have permission to perform the s3-outposts:DeleteLifecycleConfiguration
action. By default, the bucket owner has this permission and the Outposts bucket owner can grant this permission to others.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
For more information about object expiration, see Elements to Describe Lifecycle Actions.
Related actions include:
", - "DeleteBucketPolicy": "This action deletes an Amazon S3 on Outposts bucket policy. To delete an S3 bucket policy, see DeleteBucketPolicy in the Amazon S3 API Reference.
This implementation of the DELETE action uses the policy subresource to delete the policy of a specified Amazon S3 on Outposts bucket. If you are using an identity other than the root user of the account that owns the bucket, the calling identity must have the s3-outposts:DeleteBucketPolicy
permissions on the specified Outposts bucket and belong to the bucket owner's account to use this action. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.
If you don't have DeleteBucketPolicy
permissions, Amazon S3 returns a 403 Access Denied
error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed
error.
As a security precaution, the root user of the account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to DeleteBucketPolicy
:
This action deletes an Amazon S3 on Outposts bucket policy. To delete an S3 bucket policy, see DeleteBucketPolicy in the Amazon S3 API Reference.
This implementation of the DELETE action uses the policy subresource to delete the policy of a specified Amazon S3 on Outposts bucket. If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the s3-outposts:DeleteBucketPolicy
permissions on the specified Outposts bucket and belong to the bucket owner's account to use this action. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.
If you don't have DeleteBucketPolicy
permissions, Amazon S3 returns a 403 Access Denied
error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed
error.
As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to DeleteBucketPolicy
:
This action deletes an Amazon S3 on Outposts bucket's tags. To delete an S3 bucket tags, see DeleteBucketTagging in the Amazon S3 API Reference.
Deletes the tags from the Outposts bucket. For more information, see Using Amazon S3 on Outposts in Amazon S3 User Guide.
To use this action, you must have permission to perform the PutBucketTagging
action. By default, the bucket owner has this permission and can grant this permission to others.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to DeleteBucketTagging
:
Removes the entire tag set from the specified S3 Batch Operations job. To use this operation, you must have permission to perform the s3:DeleteJobTagging
action. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.
Related actions include:
", - "DeletePublicAccessBlock": "Removes the PublicAccessBlock
configuration for an account. For more information, see Using Amazon S3 block public access.
Related actions include:
", + "DeleteMultiRegionAccessPoint": "Deletes a Multi-Region Access Point. This action does not delete the buckets associated with the Multi-Region Access Point, only the Multi-Region Access Point itself.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
This request is asynchronous, meaning that you might receive a response before the command has completed. When this request provides a response, it provides a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation
.
The following actions are related to DeleteMultiRegionAccessPoint
:
Removes the PublicAccessBlock
configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.
Related actions include:
", "DeleteStorageLensConfiguration": "Deletes the Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:DeleteStorageLensConfiguration
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Deletes the Amazon S3 Storage Lens configuration tags. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:DeleteStorageLensConfigurationTagging
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Retrieves the configuration parameters and status for a Batch Operations job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.
Related actions include:
", + "DescribeMultiRegionAccessPointOperation": "Retrieves the status of an asynchronous request to manage a Multi-Region Access Point. For more information about managing Multi-Region Access Points and how asynchronous requests work, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
The following actions are related to GetMultiRegionAccessPoint
:
Returns configuration information about the specified access point.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to GetAccessPoint
:
Returns configuration for an Object Lambda Access Point.
The following actions are related to GetAccessPointConfigurationForObjectLambda
:
Returns configuration information about the specified Object Lambda Access Point
The following actions are related to GetAccessPointForObjectLambda
:
Returns the resource policy for an Object Lambda Access Point.
The following actions are related to GetAccessPointPolicyForObjectLambda
:
Indicates whether the specified access point currently has a policy that allows public access. For more information about public access through access points, see Managing Data Access with Amazon S3 access points in the Amazon S3 User Guide.
", "GetAccessPointPolicyStatusForObjectLambda": "Returns the status of the resource policy associated with an Object Lambda Access Point.
", - "GetBucket": "Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the account that owns the Outposts bucket, the calling identity must have the s3-outposts:GetBucket
permissions on the specified Outposts bucket and belong to the Outposts bucket owner's account in order to use this action. Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket.
If you don't have s3-outposts:GetBucket
permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied
error.
The following actions are related to GetBucket
for Amazon S3 on Outposts:
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the s3-outposts:GetBucket
permissions on the specified Outposts bucket and belong to the Outposts bucket owner's account in order to use this action. Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket.
If you don't have s3-outposts:GetBucket
permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied
error.
The following actions are related to GetBucket
for Amazon S3 on Outposts:
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
This action gets an Amazon S3 on Outposts bucket's lifecycle configuration. To get an S3 bucket's lifecycle configuration, see GetBucketLifecycleConfiguration in the Amazon S3 API Reference.
Returns the lifecycle configuration information set on the Outposts bucket. For more information, see Using Amazon S3 on Outposts and for information about lifecycle configuration, see Object Lifecycle Management in Amazon S3 User Guide.
To use this action, you must have permission to perform the s3-outposts:GetLifecycleConfiguration
action. The Outposts bucket owner has this permission, by default. The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
GetBucketLifecycleConfiguration
has the following special error:
Error code: NoSuchLifecycleConfiguration
Description: The lifecycle configuration does not exist.
HTTP Status Code: 404 Not Found
SOAP Fault Code Prefix: Client
The following actions are related to GetBucketLifecycleConfiguration
:
This action gets a bucket policy for an Amazon S3 on Outposts bucket. To get a policy for an S3 bucket, see GetBucketPolicy in the Amazon S3 API Reference.
Returns the policy of a specified Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the account that owns the bucket, the calling identity must have the GetBucketPolicy
permissions on the specified bucket and belong to the bucket owner's account in order to use this action.
Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy
permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied
error.
As a security precaution, the root user of the account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to GetBucketPolicy
:
This action gets a bucket policy for an Amazon S3 on Outposts bucket. To get a policy for an S3 bucket, see GetBucketPolicy in the Amazon S3 API Reference.
Returns the policy of a specified Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the Amazon Web Services account that owns the bucket, the calling identity must have the GetBucketPolicy
permissions on the specified bucket and belong to the bucket owner's account in order to use this action.
Only users from Outposts bucket owner account with the right permissions can perform actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy
permissions or you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access Denied
error.
As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to GetBucketPolicy
:
This action gets an Amazon S3 on Outposts bucket's tags. To get an S3 bucket tags, see GetBucketTagging in the Amazon S3 API Reference.
Returns the tag set associated with the Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
To use this action, you must have permission to perform the GetBucketTagging
action. By default, the bucket owner has this permission and can grant this permission to others.
GetBucketTagging
has the following special error:
Error code: NoSuchTagSetError
Description: There is no tag set associated with the bucket.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to GetBucketTagging
:
Returns the tags on an S3 Batch Operations job. To use this operation, you must have permission to perform the s3:GetJobTagging
action. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.
Related actions include:
", - "GetPublicAccessBlock": "Retrieves the PublicAccessBlock
configuration for an account. For more information, see Using Amazon S3 block public access.
Related actions include:
", + "GetMultiRegionAccessPoint": "Returns configuration information about the specified Multi-Region Access Point.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
The following actions are related to GetMultiRegionAccessPoint
:
Returns the access control policy of the specified Multi-Region Access Point.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
The following actions are related to GetMultiRegionAccessPointPolicy
:
Indicates whether the specified Multi-Region Access Point has an access control policy that allows public access.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
The following actions are related to GetMultiRegionAccessPointPolicyStatus
:
Retrieves the PublicAccessBlock
configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.
Related actions include:
", "GetStorageLensConfiguration": "Gets the Amazon S3 Storage Lens configuration. For more information, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:GetStorageLensConfiguration
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Gets the tags of Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:GetStorageLensConfigurationTagging
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Returns a list of the access points currently associated with the specified bucket. You can retrieve up to 1000 access points per call. If the specified bucket has more than 1,000 access points (or the number specified in maxResults
, whichever is less), the response will include a continuation token that you can use to list the additional access points.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to ListAccessPoints
:
Returns a list of the access points associated with the Object Lambda Access Point. You can retrieve up to 1000 access points per call. If there are more than 1,000 access points (or the number specified in maxResults
, whichever is less), the response will include a continuation token that you can use to list the additional access points.
The following actions are related to ListAccessPointsForObjectLambda
:
Lists current S3 Batch Operations jobs and jobs that have ended within the last 30 days for the account making the request. For more information, see S3 Batch Operations in the Amazon S3 User Guide.
Related actions include:
", + "ListJobs": "Lists current S3 Batch Operations jobs and jobs that have ended within the last 30 days for the Amazon Web Services account making the request. For more information, see S3 Batch Operations in the Amazon S3 User Guide.
Related actions include:
", + "ListMultiRegionAccessPoints": "Returns a list of the Multi-Region Access Points currently associated with the specified Amazon Web Services account. Each call can return up to 100 Multi-Region Access Points, the maximum number of Multi-Region Access Points that can be associated with a single account.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
The following actions are related to ListMultiRegionAccessPoint
:
Returns a list of all Outposts buckets in an Outpost that are owned by the authenticated sender of the request. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and x-amz-outpost-id
in your request, see the Examples section.
Gets a list of Amazon S3 Storage Lens configurations. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:ListStorageLensConfigurations
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Replaces configuration for an Object Lambda Access Point.
The following actions are related to PutAccessPointConfigurationForObjectLambda
:
Associates an access policy with the specified access point. Each access point can have only one policy, so a request made to this API replaces any existing policy associated with the specified access point.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to PutAccessPointPolicy
:
Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see Creating Object Lambda Access Points in the Amazon S3 User Guide.
The following actions are related to PutAccessPointPolicyForObjectLambda
:
This action puts a lifecycle configuration to an Amazon S3 on Outposts bucket. To put a lifecycle configuration to an S3 bucket, see PutBucketLifecycleConfiguration in the Amazon S3 API Reference.
Creates a new lifecycle configuration for the S3 on Outposts bucket or replaces an existing lifecycle configuration. Outposts buckets only support lifecycle configurations that delete/expire objects after a certain period of time and abort incomplete multipart uploads.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to PutBucketLifecycleConfiguration
:
This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an S3 bucket, see PutBucketPolicy in the Amazon S3 API Reference.
Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the account that owns the Outposts bucket, the calling identity must have the PutBucketPolicy
permissions on the specified Outposts bucket and belong to the bucket owner's account in order to use this action.
If you don't have PutBucketPolicy
permissions, Amazon S3 returns a 403 Access Denied
error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed
error.
As a security precaution, the root user of the account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to PutBucketPolicy
:
This action puts tags on an Amazon S3 on Outposts bucket. To put tags on an S3 bucket, see PutBucketTagging in the Amazon S3 API Reference.
Sets the tags for an S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this, sign up to get your account bill with tag key values included. Then, to see the cost of combined resources, organize your billing information according to resources with the same tag key values. For example, you can tag several resources with a specific application name, and then organize your billing information to see the total cost of that application across several services. For more information, see Cost allocation and tagging.
Within a bucket, if you add a tag that has the same key as an existing tag, the new value overwrites the old value. For more information, see Using cost allocation in Amazon S3 bucket tags.
To use this action, you must have permissions to perform the s3-outposts:PutBucketTagging
action. The Outposts bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing access permissions to your Amazon S3 resources.
PutBucketTagging
has the following special errors:
Error code: InvalidTagError
Description: The tag provided was not a valid tag. This error can occur if the tag did not pass input validation. For information about tag restrictions, see User-Defined Tag Restrictions and Amazon Web Services-Generated Cost Allocation Tag Restrictions.
Error code: MalformedXMLError
Description: The XML provided does not match the schema.
Error code: OperationAbortedError
Description: A conflicting conditional action is currently in progress against this resource. Try again.
Error code: InternalError
Description: The service was unable to apply the provided tag to the bucket.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to PutBucketTagging
:
This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an S3 bucket, see PutBucketPolicy in the Amazon S3 API Reference.
Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the PutBucketPolicy
permissions on the specified Outposts bucket and belong to the bucket owner's account in order to use this action.
If you don't have PutBucketPolicy
permissions, Amazon S3 returns a 403 Access Denied
error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed
error.
As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action.
For more information about bucket policies, see Using Bucket Policies and User Policies.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to PutBucketPolicy
:
This action puts tags on an Amazon S3 on Outposts bucket. To put tags on an S3 bucket, see PutBucketTagging in the Amazon S3 API Reference.
Sets the tags for an S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this, sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost of combined resources, organize your billing information according to resources with the same tag key values. For example, you can tag several resources with a specific application name, and then organize your billing information to see the total cost of that application across several services. For more information, see Cost allocation and tagging.
Within a bucket, if you add a tag that has the same key as an existing tag, the new value overwrites the old value. For more information, see Using cost allocation in Amazon S3 bucket tags.
To use this action, you must have permissions to perform the s3-outposts:PutBucketTagging
action. The Outposts bucket owner has this permission by default and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing access permissions to your Amazon S3 resources.
PutBucketTagging
has the following special errors:
Error code: InvalidTagError
Description: The tag provided was not a valid tag. This error can occur if the tag did not pass input validation. For information about tag restrictions, see User-Defined Tag Restrictions and Amazon Web Services-Generated Cost Allocation Tag Restrictions.
Error code: MalformedXMLError
Description: The XML provided does not match the schema.
Error code: OperationAbortedError
Description: A conflicting conditional action is currently in progress against this resource. Try again.
Error code: InternalError
Description: The service was unable to apply the provided tag to the bucket.
All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id
to be passed with the request and an S3 on Outposts endpoint hostname prefix instead of s3-control
. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id
derived using the access point ARN, see the Examples section.
The following actions are related to PutBucketTagging
:
Sets the supplied tag-set on an S3 Batch Operations job.
A tag is a key-value pair. You can associate S3 Batch Operations tags with any job by sending a PUT request against the tagging subresource that is associated with the job. To modify the existing tag set, you can either replace the existing tag set entirely, or make changes within the existing tag set by retrieving the existing tag set using GetJobTagging, modify that tag set, and use this action to replace the tag set with the one you modified. For more information, see Controlling access and labeling jobs using tags in the Amazon S3 User Guide.
If you send this request with an empty tag set, Amazon S3 deletes the existing tag set on the Batch Operations job. If you use this method, you are charged for a Tier 1 Request (PUT). For more information, see Amazon S3 pricing.
For deleting existing tags for your Batch Operations job, a DeleteJobTagging request is preferred because it achieves the same result without incurring charges.
A few things to consider about using tags:
Amazon S3 limits the maximum number of tags to 50 tags per job.
You can associate up to 50 tags with a job as long as they have unique tag keys.
A tag key can be up to 128 Unicode characters in length, and tag values can be up to 256 Unicode characters in length.
The key and values are case sensitive.
For tagging-related restrictions related to characters and encodings, see User-Defined Tag Restrictions in the Billing and Cost Management User Guide.
To use this action, you must have permission to perform the s3:PutJobTagging
action.
Related actions include:
", - "PutPublicAccessBlock": "Creates or modifies the PublicAccessBlock
configuration for an account. For more information, see Using Amazon S3 block public access.
Related actions include:
", + "PutMultiRegionAccessPointPolicy": "Associates an access control policy with the specified Multi-Region Access Point. Each Multi-Region Access Point can have only one policy, so a request made to this action replaces any existing policy that is associated with the specified Multi-Region Access Point.
This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around managing Multi-Region Access Points, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
The following actions are related to PutMultiRegionAccessPointPolicy
:
Creates or modifies the PublicAccessBlock
configuration for an Amazon Web Services account. For more information, see Using Amazon S3 block public access.
Related actions include:
", "PutStorageLensConfiguration": "Puts an Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Working with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:PutStorageLensConfiguration
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Put or replace tags on an existing Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the Amazon S3 User Guide.
To use this action, you must have permission to perform the s3:PutStorageLensConfigurationTagging
action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the Amazon S3 User Guide.
Updates an existing S3 Batch Operations job's priority. For more information, see S3 Batch Operations in the Amazon S3 User Guide.
Related actions include:
", @@ -88,9 +96,10 @@ "AccountId": { "base": null, "refs": { - "CreateAccessPointForObjectLambdaRequest$AccountId": "The account ID for owner of the specified Object Lambda Access Point.
", - "CreateAccessPointRequest$AccountId": "The account ID for the owner of the bucket for which you want to create an access point.
", - "CreateJobRequest$AccountId": "The account ID that creates the job.
", + "CreateAccessPointForObjectLambdaRequest$AccountId": "The Amazon Web Services account ID for owner of the specified Object Lambda Access Point.
", + "CreateAccessPointRequest$AccountId": "The Amazon Web Services account ID for the owner of the bucket for which you want to create an access point.
", + "CreateJobRequest$AccountId": "The Amazon Web Services account ID that creates the job.
", + "CreateMultiRegionAccessPointRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point. The owner of the Multi-Region Access Point also must own the underlying buckets.
", "DeleteAccessPointForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", "DeleteAccessPointPolicyForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", "DeleteAccessPointPolicyRequest$AccountId": "The account ID for the account that owns the specified access point.
", @@ -98,12 +107,14 @@ "DeleteBucketLifecycleConfigurationRequest$AccountId": "The account ID of the lifecycle configuration to delete.
", "DeleteBucketPolicyRequest$AccountId": "The account ID of the Outposts bucket.
", "DeleteBucketRequest$AccountId": "The account ID that owns the Outposts bucket.
", - "DeleteBucketTaggingRequest$AccountId": "The account ID of the Outposts bucket tag set to be removed.
", - "DeleteJobTaggingRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
", - "DeletePublicAccessBlockRequest$AccountId": "The account ID for the account whose PublicAccessBlock
configuration you want to remove.
The Amazon Web Services account ID of the Outposts bucket tag set to be removed.
", + "DeleteJobTaggingRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
", + "DeleteMultiRegionAccessPointRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", + "DeletePublicAccessBlockRequest$AccountId": "The account ID for the Amazon Web Services account whose PublicAccessBlock
configuration you want to remove.
The account ID of the requester.
", "DeleteStorageLensConfigurationTaggingRequest$AccountId": "The account ID of the requester.
", - "DescribeJobRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
", + "DescribeJobRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
", + "DescribeMultiRegionAccessPointOperationRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", "GetAccessPointConfigurationForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", "GetAccessPointForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", "GetAccessPointPolicyForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", @@ -111,32 +122,37 @@ "GetAccessPointPolicyStatusForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", "GetAccessPointPolicyStatusRequest$AccountId": "The account ID for the account that owns the specified access point.
", "GetAccessPointRequest$AccountId": "The account ID for the account that owns the specified access point.
", - "GetBucketLifecycleConfigurationRequest$AccountId": "The account ID of the Outposts bucket.
", - "GetBucketPolicyRequest$AccountId": "The account ID of the Outposts bucket.
", - "GetBucketRequest$AccountId": "The account ID of the Outposts bucket.
", - "GetBucketTaggingRequest$AccountId": "The account ID of the Outposts bucket.
", - "GetJobTaggingRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
", - "GetPublicAccessBlockRequest$AccountId": "The account ID for the account whose PublicAccessBlock
configuration you want to retrieve.
The Amazon Web Services account ID of the Outposts bucket.
", + "GetBucketPolicyRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", + "GetBucketRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", + "GetBucketTaggingRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", + "GetJobTaggingRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
", + "GetMultiRegionAccessPointPolicyRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", + "GetMultiRegionAccessPointPolicyStatusRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", + "GetMultiRegionAccessPointRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", + "GetPublicAccessBlockRequest$AccountId": "The account ID for the Amazon Web Services account whose PublicAccessBlock
configuration you want to retrieve.
The account ID of the requester.
", "GetStorageLensConfigurationTaggingRequest$AccountId": "The account ID of the requester.
", "ListAccessPointsForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", - "ListAccessPointsRequest$AccountId": "The account ID for owner of the bucket whose access points you want to list.
", - "ListJobsRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
", - "ListRegionalBucketsRequest$AccountId": "The account ID of the Outposts bucket.
", + "ListAccessPointsRequest$AccountId": "The Amazon Web Services account ID for owner of the bucket whose access points you want to list.
", + "ListJobsRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
", + "ListMultiRegionAccessPointsRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", + "ListRegionalBucketsRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", "ListStorageLensConfigurationsRequest$AccountId": "The account ID of the requester.
", "PutAccessPointConfigurationForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", "PutAccessPointPolicyForObjectLambdaRequest$AccountId": "The account ID for the account that owns the specified Object Lambda Access Point.
", - "PutAccessPointPolicyRequest$AccountId": "The account ID for owner of the bucket associated with the specified access point.
", - "PutBucketLifecycleConfigurationRequest$AccountId": "The account ID of the Outposts bucket.
", - "PutBucketPolicyRequest$AccountId": "The account ID of the Outposts bucket.
", - "PutBucketTaggingRequest$AccountId": "The account ID of the Outposts bucket.
", - "PutJobTaggingRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
", - "PutPublicAccessBlockRequest$AccountId": "The account ID for the account whose PublicAccessBlock
configuration you want to set.
The Amazon Web Services account ID for owner of the bucket associated with the specified access point.
", + "PutBucketLifecycleConfigurationRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", + "PutBucketPolicyRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", + "PutBucketTaggingRequest$AccountId": "The Amazon Web Services account ID of the Outposts bucket.
", + "PutJobTaggingRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
", + "PutMultiRegionAccessPointPolicyRequest$AccountId": "The Amazon Web Services account ID for the owner of the Multi-Region Access Point.
", + "PutPublicAccessBlockRequest$AccountId": "The account ID for the Amazon Web Services account whose PublicAccessBlock
configuration you want to set.
The account ID of the requester.
", "PutStorageLensConfigurationTaggingRequest$AccountId": "The account ID of the requester.
", "S3BucketDestination$AccountId": "The account ID of the owner of the S3 Storage Lens metrics export bucket.
", - "UpdateJobPriorityRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
", - "UpdateJobStatusRequest$AccountId": "The account ID associated with the S3 Batch Operations job.
" + "UpdateJobPriorityRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
", + "UpdateJobStatusRequest$AccountId": "The Amazon Web Services account ID associated with the S3 Batch Operations job.
" } }, "AccountLevel": { @@ -160,6 +176,59 @@ "GetAccessPointResult$Alias": "The name or alias of the access point.
" } }, + "AsyncCreationTimestamp": { + "base": null, + "refs": { + "AsyncOperation$CreationTime": "The time that the request was sent to the service.
" + } + }, + "AsyncErrorDetails": { + "base": "Error details for the failed asynchronous operation.
", + "refs": { + "AsyncResponseDetails$ErrorDetails": "Error details for an asynchronous request.
" + } + }, + "AsyncOperation": { + "base": "A container for the information about an asynchronous operation.
", + "refs": { + "DescribeMultiRegionAccessPointOperationResult$AsyncOperation": "A container element containing the details of the asynchronous operation.
" + } + }, + "AsyncOperationName": { + "base": null, + "refs": { + "AsyncOperation$Operation": "The specific operation for the asynchronous request.
" + } + }, + "AsyncRequestParameters": { + "base": "A container for the request parameters associated with an asynchronous request.
", + "refs": { + "AsyncOperation$RequestParameters": "The parameters associated with the request.
" + } + }, + "AsyncRequestStatus": { + "base": null, + "refs": { + "AsyncOperation$RequestStatus": "The current status of the request.
", + "MultiRegionAccessPointRegionalResponse$RequestStatus": "The current status of the Multi-Region Access Point in this Region.
" + } + }, + "AsyncRequestTokenARN": { + "base": null, + "refs": { + "AsyncOperation$RequestTokenARN": "The request token associated with the request.
", + "CreateMultiRegionAccessPointResult$RequestTokenARN": "The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous requests.
", + "DeleteMultiRegionAccessPointResult$RequestTokenARN": "The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous requests.
", + "DescribeMultiRegionAccessPointOperationRequest$RequestTokenARN": "The request token associated with the request you want to know about. This request token is returned as part of the response when you make an asynchronous request. You provide this token to query about the status of the asynchronous action.
", + "PutMultiRegionAccessPointPolicyResult$RequestTokenARN": "The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous requests.
" + } + }, + "AsyncResponseDetails": { + "base": "A container for the response details that are returned when querying about an asynchronous request.
", + "refs": { + "AsyncOperation$ResponseDetails": "The details of the response.
" + } + }, "AwsLambdaTransformation": { "base": "Lambda function used to transform objects through an Object Lambda Access Point.
", "refs": { @@ -242,6 +311,8 @@ "PutBucketLifecycleConfigurationRequest$Bucket": "The name of the bucket for which to set the configuration.
", "PutBucketPolicyRequest$Bucket": "Specifies the bucket.
For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.
For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name>
. For example, to access the bucket reports
through outpost my-outpost
owned by account 123456789012
in Region us-west-2
, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports
. The value must be URL encoded.
The Amazon Resource Name (ARN) of the bucket.
For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.
For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name>
. For example, to access the bucket reports
through outpost my-outpost
owned by account 123456789012
in Region us-west-2
, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports
. The value must be URL encoded.
The name of the associated bucket for the Region.
", + "RegionReport$Bucket": "The name of the bucket.
", "RegionalBucket$Bucket": "" } }, @@ -331,6 +402,23 @@ "refs": { } }, + "CreateMultiRegionAccessPointInput": { + "base": "A container for the information associated with a CreateMultiRegionAccessPoint request.
", + "refs": { + "AsyncRequestParameters$CreateMultiRegionAccessPointRequest": "A container of the parameters for a CreateMultiRegionAccessPoint request.
", + "CreateMultiRegionAccessPointRequest$Details": "A container element containing details about the Multi-Region Access Point.
" + } + }, + "CreateMultiRegionAccessPointRequest": { + "base": null, + "refs": { + } + }, + "CreateMultiRegionAccessPointResult": { + "base": null, + "refs": { + } + }, "CreationDate": { "base": null, "refs": { @@ -340,6 +428,12 @@ "RegionalBucket$CreationDate": "The creation date of the regional bucket
" } }, + "CreationTimestamp": { + "base": null, + "refs": { + "MultiRegionAccessPointReport$CreatedAt": "When the Multi-Region Access Point create request was received.
" + } + }, "Date": { "base": null, "refs": { @@ -412,6 +506,23 @@ "refs": { } }, + "DeleteMultiRegionAccessPointInput": { + "base": "A container for the information associated with a DeleteMultiRegionAccessPoint request.
", + "refs": { + "AsyncRequestParameters$DeleteMultiRegionAccessPointRequest": "A container of the parameters for a DeleteMultiRegionAccessPoint request.
", + "DeleteMultiRegionAccessPointRequest$Details": "A container element containing details about the Multi-Region Access Point.
" + } + }, + "DeleteMultiRegionAccessPointRequest": { + "base": null, + "refs": { + } + }, + "DeleteMultiRegionAccessPointResult": { + "base": null, + "refs": { + } + }, "DeletePublicAccessBlockRequest": { "base": null, "refs": { @@ -442,12 +553,28 @@ "refs": { } }, + "DescribeMultiRegionAccessPointOperationRequest": { + "base": null, + "refs": { + } + }, + "DescribeMultiRegionAccessPointOperationResult": { + "base": null, + "refs": { + } + }, "Endpoints": { "base": null, "refs": { "GetAccessPointResult$Endpoints": "The VPC endpoint for the access point.
" } }, + "EstablishedMultiRegionAccessPointPolicy": { + "base": "The last established access control policy for a Multi-Region Access Point.
When you update the policy, the update is first listed as the proposed policy. After the update is finished and all Regions have been updated, the proposed policy is listed as the established policy. If both policies have the same version number, the proposed policy is the established policy.
", + "refs": { + "MultiRegionAccessPointPolicyDocument$Established": "The last established policy for the Multi-Region Access Point.
" + } + }, "ExceptionMessage": { "base": null, "refs": { @@ -613,6 +740,36 @@ "refs": { } }, + "GetMultiRegionAccessPointPolicyRequest": { + "base": null, + "refs": { + } + }, + "GetMultiRegionAccessPointPolicyResult": { + "base": null, + "refs": { + } + }, + "GetMultiRegionAccessPointPolicyStatusRequest": { + "base": null, + "refs": { + } + }, + "GetMultiRegionAccessPointPolicyStatusResult": { + "base": null, + "refs": { + } + }, + "GetMultiRegionAccessPointRequest": { + "base": null, + "refs": { + } + }, + "GetMultiRegionAccessPointResult": { + "base": null, + "refs": { + } + }, "GetPublicAccessBlockOutput": { "base": null, "refs": { @@ -1010,6 +1167,16 @@ "refs": { } }, + "ListMultiRegionAccessPointsRequest": { + "base": null, + "refs": { + } + }, + "ListMultiRegionAccessPointsResult": { + "base": null, + "refs": { + } + }, "ListRegionalBucketsRequest": { "base": null, "refs": { @@ -1045,6 +1212,10 @@ "MaxLength1024String": { "base": null, "refs": { + "AsyncErrorDetails$Code": "A string that uniquely identifies the error condition.
", + "AsyncErrorDetails$Message": "A generic descritpion of the error condition in English.
", + "AsyncErrorDetails$Resource": "The identifier of the resource associated with the error.
", + "AsyncErrorDetails$RequestId": "The ID of the request associated with the error.
", "S3UserMetadata$value": null } }, @@ -1054,6 +1225,7 @@ "ListAccessPointsForObjectLambdaRequest$MaxResults": "The maximum number of access points that you want to include in the list. If there are more than this number of access points, then the response will include a continuation token in the NextToken
field that you can use to retrieve the next page of access points.
The maximum number of access points that you want to include in the list. If the specified bucket has more than this number of access points, then the response will include a continuation token in the NextToken
field that you can use to retrieve the next page of access points.
The maximum number of jobs that Amazon S3 will include in the List Jobs
response. If there are more jobs than this number, the response will include a pagination token in the NextToken
field to enable you to retrieve the next page of results.
Not currently used. Do not use this parameter.
", "ListRegionalBucketsRequest$MaxResults": "" } }, @@ -1063,6 +1235,75 @@ "SelectionCriteria$MinStorageBytesPercentage": "The minimum number of storage bytes percentage whose metrics will be selected.
You must choose a value greater than or equal to 1.0
.
The alias for the Multi-Region Access Point. For more information about the distinction between the name and the alias of an Multi-Region Access Point, see Managing Multi-Region Access Points.
" + } + }, + "MultiRegionAccessPointClientToken": { + "base": null, + "refs": { + "CreateMultiRegionAccessPointRequest$ClientToken": "An idempotency token used to identify the request and guarantee that requests are unique.
", + "DeleteMultiRegionAccessPointRequest$ClientToken": "An idempotency token used to identify the request and guarantee that requests are unique.
", + "PutMultiRegionAccessPointPolicyRequest$ClientToken": "An idempotency token used to identify the request and guarantee that requests are unique.
" + } + }, + "MultiRegionAccessPointName": { + "base": null, + "refs": { + "CreateMultiRegionAccessPointInput$Name": "The name of the Multi-Region Access Point associated with this request.
", + "DeleteMultiRegionAccessPointInput$Name": "The name of the Multi-Region Access Point associated with this request.
", + "GetMultiRegionAccessPointPolicyRequest$Name": "Specifies the Multi-Region Access Point. The name of the Multi-Region Access Point is different from the alias. For more information about the distinction between the name and the alias of an Multi-Region Access Point, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
", + "GetMultiRegionAccessPointPolicyStatusRequest$Name": "Specifies the Multi-Region Access Point. The name of the Multi-Region Access Point is different from the alias. For more information about the distinction between the name and the alias of an Multi-Region Access Point, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
", + "GetMultiRegionAccessPointRequest$Name": "The name of the Multi-Region Access Point whose configuration information you want to receive. The name of the Multi-Region Access Point is different from the alias. For more information about the distinction between the name and the alias of an Multi-Region Access Point, see Managing Multi-Region Access Points in the Amazon S3 User Guide.
", + "MultiRegionAccessPointReport$Name": "The name of the Multi-Region Access Point.
", + "PutMultiRegionAccessPointPolicyInput$Name": "The name of the Multi-Region Access Point associated with the request.
" + } + }, + "MultiRegionAccessPointPolicyDocument": { + "base": "The Multi-Region Access Point access control policy.
When you update the policy, the update is first listed as the proposed policy. After the update is finished and all Regions have been updated, the proposed policy is listed as the established policy. If both policies have the same version number, the proposed policy is the established policy.
", + "refs": { + "GetMultiRegionAccessPointPolicyResult$Policy": "The policy associated with the specified Multi-Region Access Point.
" + } + }, + "MultiRegionAccessPointRegionalResponse": { + "base": "Status information for a single Multi-Region Access Point Region.
", + "refs": { + "MultiRegionAccessPointRegionalResponseList$member": null + } + }, + "MultiRegionAccessPointRegionalResponseList": { + "base": null, + "refs": { + "MultiRegionAccessPointsAsyncResponse$Regions": "A collection of status information for the different Regions that a Multi-Region Access Point supports.
" + } + }, + "MultiRegionAccessPointReport": { + "base": "A collection of statuses for a Multi-Region Access Point in the various Regions it supports.
", + "refs": { + "GetMultiRegionAccessPointResult$AccessPoint": "A container element containing the details of the requested Multi-Region Access Point.
", + "MultiRegionAccessPointReportList$member": null + } + }, + "MultiRegionAccessPointReportList": { + "base": null, + "refs": { + "ListMultiRegionAccessPointsResult$AccessPoints": "The list of Multi-Region Access Points associated with the user.
" + } + }, + "MultiRegionAccessPointStatus": { + "base": null, + "refs": { + "MultiRegionAccessPointReport$Status": "The current status of the Multi-Region Access Point.
CREATING
and DELETING
are temporary states that exist while the request is propogating and being completed. If a Multi-Region Access Point has a status of PARTIALLY_CREATED
, you can retry creation or send a request to delete the Multi-Region Access Point. If a Multi-Region Access Point has a status of PARTIALLY_DELETED
, you can retry a delete request to finish the deletion of the Multi-Region Access Point.
The Multi-Region Access Point details that are returned when querying about an asynchronous request.
", + "refs": { + "AsyncResponseDetails$MultiRegionAccessPointDetails": "The details for the Multi-Region Access Point.
" + } + }, "NetworkOrigin": { "base": null, "refs": { @@ -1090,6 +1331,8 @@ "ListAccessPointsForObjectLambdaResult$NextToken": "If the list has more access points than can be returned in one call to this API, this field contains a continuation token that you can provide in subsequent calls to this API to retrieve additional access points.
", "ListAccessPointsRequest$NextToken": "A continuation token. If a previous call to ListAccessPoints
returned a continuation token in the NextToken
field, then providing that value here causes Amazon S3 to retrieve the next page of results.
If the specified bucket has more access points than can be returned in one call to this API, this field contains a continuation token that you can provide in subsequent calls to this API to retrieve additional access points.
", + "ListMultiRegionAccessPointsRequest$NextToken": "Not currently used. Do not use this parameter.
", + "ListMultiRegionAccessPointsResult$NextToken": "If the specified bucket has more Multi-Region Access Points than can be returned in one call to this action, this field contains a continuation token. You can use this token tin subsequent calls to this action to retrieve additional Multi-Region Access Points.
", "ListRegionalBucketsRequest$NextToken": "", "ListRegionalBucketsResult$NextToken": " NextToken
is sent when isTruncated
is true, which means there are more buckets that can be listed. The next list requests to Amazon S3 can be continued with this NextToken
. NextToken
is obfuscated and is not a real key.
Specifies the folder prefix into which you would like the objects to be copied. For example, to copy objects into a folder named \"Folder1\" in the destination bucket, set the TargetKeyPrefix to \"Folder1/\".
", @@ -1272,17 +1515,21 @@ "Policy": { "base": null, "refs": { + "EstablishedMultiRegionAccessPointPolicy$Policy": "The details of the last established policy.
", "GetAccessPointPolicyResult$Policy": "The access point policy associated with the specified access point.
", "GetBucketPolicyResult$Policy": "The policy of the Outposts bucket.
", + "ProposedMultiRegionAccessPointPolicy$Policy": "The details of the proposed policy.
", "PutAccessPointPolicyRequest$Policy": "The policy that you want to apply to the specified access point. For more information about access point policies, see Managing data access with Amazon S3 access points in the Amazon S3 User Guide.
", - "PutBucketPolicyRequest$Policy": "The bucket policy as a JSON document.
" + "PutBucketPolicyRequest$Policy": "The bucket policy as a JSON document.
", + "PutMultiRegionAccessPointPolicyInput$Policy": "The policy details for the PutMultiRegionAccessPoint
request.
Indicates whether this access point policy is public. For more information about how Amazon S3 evaluates policies to determine whether they are public, see The Meaning of \"Public\" in the Amazon S3 User Guide.
", "refs": { "GetAccessPointPolicyStatusForObjectLambdaResult$PolicyStatus": null, - "GetAccessPointPolicyStatusResult$PolicyStatus": "Indicates the current policy status of the specified access point.
" + "GetAccessPointPolicyStatusResult$PolicyStatus": "Indicates the current policy status of the specified access point.
", + "GetMultiRegionAccessPointPolicyStatusResult$Established": null } }, "Prefix": { @@ -1305,14 +1552,22 @@ "PrefixLevel$StorageMetrics": "A container for the prefix-level storage metrics for S3 Storage Lens.
" } }, + "ProposedMultiRegionAccessPointPolicy": { + "base": "The proposed access control policy for the Multi-Region Access Point.
When you update the policy, the update is first listed as the proposed policy. After the update is finished and all Regions have been updated, the proposed policy is listed as the established policy. If both policies have the same version number, the proposed policy is the established policy.
", + "refs": { + "MultiRegionAccessPointPolicyDocument$Proposed": "The proposed policy for the Multi-Region Access Point.
" + } + }, "PublicAccessBlockConfiguration": { "base": "The PublicAccessBlock
configuration that you want to apply to this Amazon S3 account. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.
This is not supported for Amazon S3 on Outposts.
", "refs": { "CreateAccessPointRequest$PublicAccessBlockConfiguration": " The PublicAccessBlock
configuration that you want to apply to the access point.
Configuration to block all public access. This setting is turned on and can not be edited.
", "GetAccessPointResult$PublicAccessBlockConfiguration": null, - "GetPublicAccessBlockOutput$PublicAccessBlockConfiguration": "The PublicAccessBlock
configuration currently in effect for this account.
The PublicAccessBlock
configuration that you want to apply to the specified account.
The PublicAccessBlock
configuration currently in effect for this Amazon Web Services account.
The PublicAccessBlock
configuration that you want to apply to the specified Amazon Web Services account.
A container for the information associated with a PutMultiRegionAccessPoint request.
", + "refs": { + "AsyncRequestParameters$PutMultiRegionAccessPointPolicyRequest": "A container of the parameters for a PutMultiRegionAccessPoint request.
", + "PutMultiRegionAccessPointPolicyRequest$Details": "A container element containing the details of the policy for the Multi-Region Access Point.
" + } + }, + "PutMultiRegionAccessPointPolicyRequest": { + "base": null, + "refs": { + } + }, + "PutMultiRegionAccessPointPolicyResult": { + "base": null, + "refs": { + } + }, "PutPublicAccessBlockRequest": { "base": null, "refs": { @@ -1382,6 +1654,37 @@ "refs": { } }, + "Region": { + "base": "A Region that supports a Multi-Region Access Point as well as the associated bucket for the Region.
", + "refs": { + "RegionCreationList$member": null + } + }, + "RegionCreationList": { + "base": null, + "refs": { + "CreateMultiRegionAccessPointInput$Regions": "The buckets in different Regions that are associated with the Multi-Region Access Point.
" + } + }, + "RegionName": { + "base": null, + "refs": { + "MultiRegionAccessPointRegionalResponse$Name": "The name of the Region in the Multi-Region Access Point.
", + "RegionReport$Region": "The name of the Region.
" + } + }, + "RegionReport": { + "base": "A combination of a bucket and Region that's part of a Multi-Region Access Point.
", + "refs": { + "RegionReportList$member": null + } + }, + "RegionReportList": { + "base": null, + "refs": { + "MultiRegionAccessPointReport$Regions": "A collection of the Regions and buckets associated with the Multi-Region Access Point.
" + } + }, "RegionalBucket": { "base": "The container for the regional bucket.
", "refs": { diff --git a/models/apis/s3control/2018-08-20/paginators-1.json b/models/apis/s3control/2018-08-20/paginators-1.json index 604837d517f..dbd0835187d 100644 --- a/models/apis/s3control/2018-08-20/paginators-1.json +++ b/models/apis/s3control/2018-08-20/paginators-1.json @@ -16,6 +16,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListMultiRegionAccessPoints": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListRegionalBuckets": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/schemas/2019-12-02/api-2.json b/models/apis/schemas/2019-12-02/api-2.json index 8a7ee2fb52b..e6a102407b4 100644 --- a/models/apis/schemas/2019-12-02/api-2.json +++ b/models/apis/schemas/2019-12-02/api-2.json @@ -1085,6 +1085,9 @@ "SourceArn": { "shape": "__stringMin20Max1600" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" @@ -1103,6 +1106,9 @@ "SourceArn": { "shape": "__stringMin20Max1600" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" @@ -1130,6 +1136,9 @@ "State": { "shape": "DiscovererState" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" @@ -1430,6 +1439,9 @@ "State": { "shape": "DiscovererState" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" @@ -1575,6 +1587,9 @@ "State": { "shape": "DiscovererState" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" @@ -1614,6 +1629,9 @@ "State": { "shape": "DiscovererState" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" @@ -2635,6 +2653,9 @@ "members": { "Description": { "shape": "__stringMin0Max256" + }, + "CrossAccount": { + "shape": "__boolean" } } }, @@ -2648,6 +2669,9 @@ "shape": "__string", "location": "uri", "locationName": "discovererId" + }, + "CrossAccount": { + "shape": "__boolean" } }, "required": [ @@ -2672,6 +2696,9 @@ "State": { "shape": "DiscovererState" }, + "CrossAccount": { + "shape": "__boolean" + }, "Tags": { "shape": "Tags", "locationName": "tags" diff --git a/models/apis/schemas/2019-12-02/docs-2.json b/models/apis/schemas/2019-12-02/docs-2.json index ed40ce3b97a..f9b80b89f25 100644 --- a/models/apis/schemas/2019-12-02/docs-2.json +++ b/models/apis/schemas/2019-12-02/docs-2.json @@ -279,7 +279,11 @@ "__boolean": { "base": null, "refs": { - "LockServiceLinkedRoleOutput$CanBeDeleted": null + "LockServiceLinkedRoleOutput$CanBeDeleted": null, + "CreateDiscovererInput$CrossAccount": "Support discovery of schemas in events sent to the bus from another account. (default: true)
", + "UpdateDiscovererInput$CrossAccount": "Support discovery of schemas in events sent to the bus from another account. (default: true)
", + "DiscovererOutput$CrossAccount": "The Status if the discoverer will discover schemas from events sent from another account.
", + "DiscovererSummary$CrossAccount": "The Status if the discoverer will discover schemas from events sent from another account.
" } }, "__integerMin1Max29000": { diff --git a/models/apis/securityhub/2018-10-26/api-2.json b/models/apis/securityhub/2018-10-26/api-2.json index ba46f84c4bb..4319c24f144 100644 --- a/models/apis/securityhub/2018-10-26/api-2.json +++ b/models/apis/securityhub/2018-10-26/api-2.json @@ -920,6 +920,17 @@ "type":"list", "member":{"shape":"ActionTarget"} }, + "Adjustment":{ + "type":"structure", + "members":{ + "Metric":{"shape":"NonEmptyString"}, + "Reason":{"shape":"NonEmptyString"} + } + }, + "AdjustmentList":{ + "type":"list", + "member":{"shape":"Adjustment"} + }, "AdminAccount":{ "type":"structure", "members":{ @@ -1108,6 +1119,59 @@ "CreatedTime":{"shape":"NonEmptyString"} } }, + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails":{ + "type":"structure", + "members":{ + "DeviceName":{"shape":"NonEmptyString"}, + "Ebs":{"shape":"AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails"}, + "NoDevice":{"shape":"Boolean"}, + "VirtualName":{"shape":"NonEmptyString"} + } + }, + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails":{ + "type":"structure", + "members":{ + "DeleteOnTermination":{"shape":"Boolean"}, + "Encrypted":{"shape":"Boolean"}, + "Iops":{"shape":"Integer"}, + "SnapshotId":{"shape":"NonEmptyString"}, + "VolumeSize":{"shape":"Integer"}, + "VolumeType":{"shape":"NonEmptyString"} + } + }, + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsList":{ + "type":"list", + "member":{"shape":"AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails"} + }, + "AwsAutoScalingLaunchConfigurationDetails":{ + "type":"structure", + "members":{ + "AssociatePublicIpAddress":{"shape":"Boolean"}, + "BlockDeviceMappings":{"shape":"AwsAutoScalingLaunchConfigurationBlockDeviceMappingsList"}, + "ClassicLinkVpcId":{"shape":"NonEmptyString"}, + "ClassicLinkVpcSecurityGroups":{"shape":"NonEmptyStringList"}, + "CreatedTime":{"shape":"NonEmptyString"}, + "EbsOptimized":{"shape":"Boolean"}, + "IamInstanceProfile":{"shape":"NonEmptyString"}, + "ImageId":{"shape":"NonEmptyString"}, + "InstanceMonitoring":{"shape":"AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails"}, + "InstanceType":{"shape":"NonEmptyString"}, + "KernelId":{"shape":"NonEmptyString"}, + "KeyName":{"shape":"NonEmptyString"}, + "LaunchConfigurationName":{"shape":"NonEmptyString"}, + "PlacementTenancy":{"shape":"NonEmptyString"}, + "RamdiskId":{"shape":"NonEmptyString"}, + "SecurityGroups":{"shape":"NonEmptyStringList"}, + "SpotPrice":{"shape":"NonEmptyString"}, + "UserData":{"shape":"NonEmptyString"} + } + }, + "AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"} + } + }, "AwsCertificateManagerCertificateDetails":{ "type":"structure", "members":{ @@ -1794,6 +1858,91 @@ "State":{"shape":"NonEmptyString"} } }, + "AwsEc2VpnConnectionDetails":{ + "type":"structure", + "members":{ + "VpnConnectionId":{"shape":"NonEmptyString"}, + "State":{"shape":"NonEmptyString"}, + "CustomerGatewayId":{"shape":"NonEmptyString"}, + "CustomerGatewayConfiguration":{"shape":"NonEmptyString"}, + "Type":{"shape":"NonEmptyString"}, + "VpnGatewayId":{"shape":"NonEmptyString"}, + "Category":{"shape":"NonEmptyString"}, + "VgwTelemetry":{"shape":"AwsEc2VpnConnectionVgwTelemetryList"}, + "Options":{"shape":"AwsEc2VpnConnectionOptionsDetails"}, + "Routes":{"shape":"AwsEc2VpnConnectionRoutesList"}, + "TransitGatewayId":{"shape":"NonEmptyString"} + } + }, + "AwsEc2VpnConnectionOptionsDetails":{ + "type":"structure", + "members":{ + "StaticRoutesOnly":{"shape":"Boolean"}, + "TunnelOptions":{"shape":"AwsEc2VpnConnectionOptionsTunnelOptionsList"} + } + }, + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails":{ + "type":"structure", + "members":{ + "DpdTimeoutSeconds":{"shape":"Integer"}, + "IkeVersions":{"shape":"NonEmptyStringList"}, + "OutsideIpAddress":{"shape":"NonEmptyString"}, + "Phase1DhGroupNumbers":{"shape":"IntegerList"}, + "Phase1EncryptionAlgorithms":{"shape":"NonEmptyStringList"}, + "Phase1IntegrityAlgorithms":{"shape":"NonEmptyStringList"}, + "Phase1LifetimeSeconds":{"shape":"Integer"}, + "Phase2DhGroupNumbers":{"shape":"IntegerList"}, + "Phase2EncryptionAlgorithms":{"shape":"NonEmptyStringList"}, + "Phase2IntegrityAlgorithms":{"shape":"NonEmptyStringList"}, + "Phase2LifetimeSeconds":{"shape":"Integer"}, + "PreSharedKey":{"shape":"NonEmptyString"}, + "RekeyFuzzPercentage":{"shape":"Integer"}, + "RekeyMarginTimeSeconds":{"shape":"Integer"}, + "ReplayWindowSize":{"shape":"Integer"}, + "TunnelInsideCidr":{"shape":"NonEmptyString"} + } + }, + "AwsEc2VpnConnectionOptionsTunnelOptionsList":{ + "type":"list", + "member":{"shape":"AwsEc2VpnConnectionOptionsTunnelOptionsDetails"} + }, + "AwsEc2VpnConnectionRoutesDetails":{ + "type":"structure", + "members":{ + "DestinationCidrBlock":{"shape":"NonEmptyString"}, + "State":{"shape":"NonEmptyString"} + } + }, + "AwsEc2VpnConnectionRoutesList":{ + "type":"list", + "member":{"shape":"AwsEc2VpnConnectionRoutesDetails"} + }, + "AwsEc2VpnConnectionVgwTelemetryDetails":{ + "type":"structure", + "members":{ + "AcceptedRouteCount":{"shape":"Integer"}, + "CertificateArn":{"shape":"NonEmptyString"}, + "LastStatusChange":{"shape":"NonEmptyString"}, + "OutsideIpAddress":{"shape":"NonEmptyString"}, + "Status":{"shape":"NonEmptyString"}, + "StatusMessage":{"shape":"NonEmptyString"} + } + }, + "AwsEc2VpnConnectionVgwTelemetryList":{ + "type":"list", + "member":{"shape":"AwsEc2VpnConnectionVgwTelemetryDetails"} + }, + "AwsEcrContainerImageDetails":{ + "type":"structure", + "members":{ + "RegistryId":{"shape":"NonEmptyString"}, + "RepositoryName":{"shape":"NonEmptyString"}, + "Architecture":{"shape":"NonEmptyString"}, + "ImageDigest":{"shape":"NonEmptyString"}, + "ImageTags":{"shape":"NonEmptyStringList"}, + "ImagePublishedAt":{"shape":"NonEmptyString"} + } + }, "AwsEcsClusterClusterSettingsDetails":{ "type":"structure", "members":{ @@ -2852,7 +3001,8 @@ "KeyManager":{"shape":"NonEmptyString"}, "KeyState":{"shape":"NonEmptyString"}, "Origin":{"shape":"NonEmptyString"}, - "Description":{"shape":"NonEmptyString"} + "Description":{"shape":"NonEmptyString"}, + "KeyRotationStatus":{"shape":"Boolean"} } }, "AwsLambdaFunctionCode":{ @@ -3603,9 +3753,73 @@ "CreatedAt":{"shape":"NonEmptyString"}, "ServerSideEncryptionConfiguration":{"shape":"AwsS3BucketServerSideEncryptionConfiguration"}, "BucketLifecycleConfiguration":{"shape":"AwsS3BucketBucketLifecycleConfigurationDetails"}, - "PublicAccessBlockConfiguration":{"shape":"AwsS3AccountPublicAccessBlockDetails"} + "PublicAccessBlockConfiguration":{"shape":"AwsS3AccountPublicAccessBlockDetails"}, + "AccessControlList":{"shape":"NonEmptyString"}, + "BucketLoggingConfiguration":{"shape":"AwsS3BucketLoggingConfiguration"}, + "BucketWebsiteConfiguration":{"shape":"AwsS3BucketWebsiteConfiguration"}, + "BucketNotificationConfiguration":{"shape":"AwsS3BucketNotificationConfiguration"} + } + }, + "AwsS3BucketLoggingConfiguration":{ + "type":"structure", + "members":{ + "DestinationBucketName":{"shape":"NonEmptyString"}, + "LogFilePrefix":{"shape":"NonEmptyString"} + } + }, + "AwsS3BucketNotificationConfiguration":{ + "type":"structure", + "members":{ + "Configurations":{"shape":"AwsS3BucketNotificationConfigurationDetails"} } }, + "AwsS3BucketNotificationConfigurationDetail":{ + "type":"structure", + "members":{ + "Events":{"shape":"AwsS3BucketNotificationConfigurationEvents"}, + "Filter":{"shape":"AwsS3BucketNotificationConfigurationFilter"}, + "Destination":{"shape":"NonEmptyString"}, + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsS3BucketNotificationConfigurationDetails":{ + "type":"list", + "member":{"shape":"AwsS3BucketNotificationConfigurationDetail"} + }, + "AwsS3BucketNotificationConfigurationEvents":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, + "AwsS3BucketNotificationConfigurationFilter":{ + "type":"structure", + "members":{ + "S3KeyFilter":{"shape":"AwsS3BucketNotificationConfigurationS3KeyFilter"} + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilter":{ + "type":"structure", + "members":{ + "FilterRules":{"shape":"AwsS3BucketNotificationConfigurationS3KeyFilterRules"} + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilterRule":{ + "type":"structure", + "members":{ + "Name":{"shape":"AwsS3BucketNotificationConfigurationS3KeyFilterRuleName"}, + "Value":{"shape":"NonEmptyString"} + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilterRuleName":{ + "type":"string", + "enum":[ + "Prefix", + "Suffix" + ] + }, + "AwsS3BucketNotificationConfigurationS3KeyFilterRules":{ + "type":"list", + "member":{"shape":"AwsS3BucketNotificationConfigurationS3KeyFilterRule"} + }, "AwsS3BucketServerSideEncryptionByDefault":{ "type":"structure", "members":{ @@ -3629,6 +3843,50 @@ "type":"list", "member":{"shape":"AwsS3BucketServerSideEncryptionRule"} }, + "AwsS3BucketWebsiteConfiguration":{ + "type":"structure", + "members":{ + "ErrorDocument":{"shape":"NonEmptyString"}, + "IndexDocumentSuffix":{"shape":"NonEmptyString"}, + "RedirectAllRequestsTo":{"shape":"AwsS3BucketWebsiteConfigurationRedirectTo"}, + "RoutingRules":{"shape":"AwsS3BucketWebsiteConfigurationRoutingRules"} + } + }, + "AwsS3BucketWebsiteConfigurationRedirectTo":{ + "type":"structure", + "members":{ + "Hostname":{"shape":"NonEmptyString"}, + "Protocol":{"shape":"NonEmptyString"} + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRule":{ + "type":"structure", + "members":{ + "Condition":{"shape":"AwsS3BucketWebsiteConfigurationRoutingRuleCondition"}, + "Redirect":{"shape":"AwsS3BucketWebsiteConfigurationRoutingRuleRedirect"} + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRuleCondition":{ + "type":"structure", + "members":{ + "HttpErrorCodeReturnedEquals":{"shape":"NonEmptyString"}, + "KeyPrefixEquals":{"shape":"NonEmptyString"} + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRuleRedirect":{ + "type":"structure", + "members":{ + "Hostname":{"shape":"NonEmptyString"}, + "HttpRedirectCode":{"shape":"NonEmptyString"}, + "Protocol":{"shape":"NonEmptyString"}, + "ReplaceKeyPrefixWith":{"shape":"NonEmptyString"}, + "ReplaceKeyWith":{"shape":"NonEmptyString"} + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRules":{ + "type":"list", + "member":{"shape":"AwsS3BucketWebsiteConfigurationRoutingRule"} + }, "AwsS3ObjectDetails":{ "type":"structure", "members":{ @@ -4209,7 +4467,9 @@ "members":{ "Version":{"shape":"NonEmptyString"}, "BaseScore":{"shape":"Double"}, - "BaseVector":{"shape":"NonEmptyString"} + "BaseVector":{"shape":"NonEmptyString"}, + "Source":{"shape":"NonEmptyString"}, + "Adjustments":{"shape":"AdjustmentList"} } }, "CvssList":{ @@ -4775,6 +5035,10 @@ } }, "Integer":{"type":"integer"}, + "IntegerList":{ + "type":"list", + "member":{"shape":"Integer"} + }, "IntegrationType":{ "type":"string", "enum":[ @@ -5468,7 +5732,10 @@ "Container":{"shape":"ContainerDetails"}, "Other":{"shape":"FieldMap"}, "AwsRdsEventSubscription":{"shape":"AwsRdsEventSubscriptionDetails"}, - "AwsEcsService":{"shape":"AwsEcsServiceDetails"} + "AwsEcsService":{"shape":"AwsEcsServiceDetails"}, + "AwsAutoScalingLaunchConfiguration":{"shape":"AwsAutoScalingLaunchConfigurationDetails"}, + "AwsEc2VpnConnection":{"shape":"AwsEc2VpnConnectionDetails"}, + "AwsEcrContainerImage":{"shape":"AwsEcrContainerImageDetails"} } }, "ResourceList":{ @@ -5567,7 +5834,9 @@ "Version":{"shape":"NonEmptyString"}, "Epoch":{"shape":"NonEmptyString"}, "Release":{"shape":"NonEmptyString"}, - "Architecture":{"shape":"NonEmptyString"} + "Architecture":{"shape":"NonEmptyString"}, + "PackageManager":{"shape":"NonEmptyString"}, + "FilePath":{"shape":"NonEmptyString"} } }, "SoftwarePackageList":{ diff --git a/models/apis/securityhub/2018-10-26/docs-2.json b/models/apis/securityhub/2018-10-26/docs-2.json index 8fd3a8d7787..88201672baf 100644 --- a/models/apis/securityhub/2018-10-26/docs-2.json +++ b/models/apis/securityhub/2018-10-26/docs-2.json @@ -157,6 +157,18 @@ "DescribeActionTargetsResponse$ActionTargets": "A list of ActionTarget
objects. Each object includes the ActionTargetArn
, Description
, and Name
of a custom action target available in Security Hub.
An adjustment to the CVSS metric.
", + "refs": { + "AdjustmentList$member": null + } + }, + "AdjustmentList": { + "base": null, + "refs": { + "Cvss$Adjustments": "Adjustments to the CVSS metrics.
" + } + }, "AdminAccount": { "base": "Represents a Security Hub administrator account designated by an organization management account.
", "refs": { @@ -280,6 +292,36 @@ "ResourceDetails$AwsAutoScalingAutoScalingGroup": "Details for an autoscaling group.
" } }, + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails": { + "base": "A block device for the instance.
", + "refs": { + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsList$member": null + } + }, + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails": { + "base": "Parameters that are used to automatically set up EBS volumes when an instance is launched.
", + "refs": { + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails$Ebs": "Parameters that are used to automatically set up Amazon EBS volumes when an instance is launched.
" + } + }, + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsList": { + "base": null, + "refs": { + "AwsAutoScalingLaunchConfigurationDetails$BlockDeviceMappings": "Specifies the block devices for the instance.
" + } + }, + "AwsAutoScalingLaunchConfigurationDetails": { + "base": "Details about a launch configuration.
", + "refs": { + "ResourceDetails$AwsAutoScalingLaunchConfiguration": "Provides details about a launch configuration.
" + } + }, + "AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails": { + "base": "Information about the type of monitoring for instances in the group.
", + "refs": { + "AwsAutoScalingLaunchConfigurationDetails$InstanceMonitoring": "Indicates the type of monitoring for instances in the group.
" + } + }, "AwsCertificateManagerCertificateDetails": { "base": "Provides details about an Certificate Manager certificate.
", "refs": { @@ -803,6 +845,60 @@ "ResourceDetails$AwsEc2Vpc": "Details for an EC2 VPC.
" } }, + "AwsEc2VpnConnectionDetails": { + "base": "Details about an Amazon EC2 VPN connection.
", + "refs": { + "ResourceDetails$AwsEc2VpnConnection": "Details about an EC2 VPN connection.
" + } + }, + "AwsEc2VpnConnectionOptionsDetails": { + "base": "VPN connection options.
", + "refs": { + "AwsEc2VpnConnectionDetails$Options": "The VPN connection options.
" + } + }, + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails": { + "base": "The VPN tunnel options.
", + "refs": { + "AwsEc2VpnConnectionOptionsTunnelOptionsList$member": null + } + }, + "AwsEc2VpnConnectionOptionsTunnelOptionsList": { + "base": null, + "refs": { + "AwsEc2VpnConnectionOptionsDetails$TunnelOptions": "The VPN tunnel options.
" + } + }, + "AwsEc2VpnConnectionRoutesDetails": { + "base": "A static routes associated with the VPN connection.
", + "refs": { + "AwsEc2VpnConnectionRoutesList$member": null + } + }, + "AwsEc2VpnConnectionRoutesList": { + "base": null, + "refs": { + "AwsEc2VpnConnectionDetails$Routes": "The static routes that are associated with the VPN connection.
" + } + }, + "AwsEc2VpnConnectionVgwTelemetryDetails": { + "base": "Information about the VPN tunnel.
", + "refs": { + "AwsEc2VpnConnectionVgwTelemetryList$member": null + } + }, + "AwsEc2VpnConnectionVgwTelemetryList": { + "base": null, + "refs": { + "AwsEc2VpnConnectionDetails$VgwTelemetry": "Information about the VPN tunnel.
" + } + }, + "AwsEcrContainerImageDetails": { + "base": "Information about an Amazon ECR image.
", + "refs": { + "ResourceDetails$AwsEcrContainerImage": "information about an Amazon ECR image.
" + } + }, "AwsEcsClusterClusterSettingsDetails": { "base": "Indicates whether to enable CloudWatch Container Insights for the ECS cluster.
", "refs": { @@ -1414,7 +1510,7 @@ "AwsElbLoadBalancerDetails": { "base": "Contains details about a Classic Load Balancer.
", "refs": { - "ResourceDetails$AwsElbLoadBalancer": "contains details about a Classic Load Balancer.
" + "ResourceDetails$AwsElbLoadBalancer": "Contains details about a Classic Load Balancer.
" } }, "AwsElbLoadBalancerHealthCheck": { @@ -1626,7 +1722,7 @@ } }, "AwsKmsKeyDetails": { - "base": "Contains metadata about a customer master key (CMK).
", + "base": "Contains metadata about an KMS key.
", "refs": { "ResourceDetails$AwsKmsKey": "Details about an KMS key.
" } @@ -2123,6 +2219,66 @@ "ResourceDetails$AwsS3Bucket": "Details about an S3 bucket related to a finding.
" } }, + "AwsS3BucketLoggingConfiguration": { + "base": "Information about logging for the S3 bucket
", + "refs": { + "AwsS3BucketDetails$BucketLoggingConfiguration": "The logging configuration for the S3 bucket.
" + } + }, + "AwsS3BucketNotificationConfiguration": { + "base": "The notification configuration for the S3 bucket.
", + "refs": { + "AwsS3BucketDetails$BucketNotificationConfiguration": "The notification configuration for the S3 bucket.
" + } + }, + "AwsS3BucketNotificationConfigurationDetail": { + "base": "Details for an S3 bucket notification configuration.
", + "refs": { + "AwsS3BucketNotificationConfigurationDetails$member": null + } + }, + "AwsS3BucketNotificationConfigurationDetails": { + "base": null, + "refs": { + "AwsS3BucketNotificationConfiguration$Configurations": "Configurations for S3 bucket notifications.
" + } + }, + "AwsS3BucketNotificationConfigurationEvents": { + "base": null, + "refs": { + "AwsS3BucketNotificationConfigurationDetail$Events": "The list of events that trigger a notification.
" + } + }, + "AwsS3BucketNotificationConfigurationFilter": { + "base": "Filtering information for the notifications. The filtering is based on Amazon S3 key names.
", + "refs": { + "AwsS3BucketNotificationConfigurationDetail$Filter": "The filters that determine which S3 buckets generate notifications.
" + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilter": { + "base": "Details for an Amazon S3 filter.
", + "refs": { + "AwsS3BucketNotificationConfigurationFilter$S3KeyFilter": "Details for an Amazon S3 filter.
" + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilterRule": { + "base": "Details for a filter rule.
", + "refs": { + "AwsS3BucketNotificationConfigurationS3KeyFilterRules$member": null + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilterRuleName": { + "base": null, + "refs": { + "AwsS3BucketNotificationConfigurationS3KeyFilterRule$Name": "Indicates whether the filter is based on the prefix or suffix of the Amazon S3 key.
" + } + }, + "AwsS3BucketNotificationConfigurationS3KeyFilterRules": { + "base": null, + "refs": { + "AwsS3BucketNotificationConfigurationS3KeyFilter$FilterRules": "The filter rules for the filter.
" + } + }, "AwsS3BucketServerSideEncryptionByDefault": { "base": "Specifies the default server-side encryption to apply to new objects in the bucket.
", "refs": { @@ -2147,6 +2303,42 @@ "AwsS3BucketServerSideEncryptionConfiguration$Rules": "The encryption rules that are applied to the S3 bucket.
" } }, + "AwsS3BucketWebsiteConfiguration": { + "base": "Website parameters for the S3 bucket.
", + "refs": { + "AwsS3BucketDetails$BucketWebsiteConfiguration": "The website configuration parameters for the S3 bucket.
" + } + }, + "AwsS3BucketWebsiteConfigurationRedirectTo": { + "base": "The redirect behavior for requests to the website.
", + "refs": { + "AwsS3BucketWebsiteConfiguration$RedirectAllRequestsTo": "The redirect behavior for requests to the website.
" + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRule": { + "base": "A rule for redirecting requests to the website.
", + "refs": { + "AwsS3BucketWebsiteConfigurationRoutingRules$member": null + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRuleCondition": { + "base": "The condition that must be met in order to apply the routing rule.
", + "refs": { + "AwsS3BucketWebsiteConfigurationRoutingRule$Condition": "Provides the condition that must be met in order to apply the routing rule.
" + } + }, + "AwsS3BucketWebsiteConfigurationRoutingRuleRedirect": { + "base": "The rules to redirect the request if the condition in Condition
is met.
Provides the rules to redirect the request if the condition in Condition
is met.
The rules for applying redirects for requests to the website.
" + } + }, "AwsS3ObjectDetails": { "base": "Details about an Amazon S3 object.
", "refs": { @@ -2335,6 +2527,12 @@ "AwsApiGatewayV2RouteSettings$DataTraceEnabled": "Indicates whether data trace logging is enabled. Data trace logging affects the log entries that are pushed to CloudWatch Logs. Supported only for WebSocket APIs.
", "AwsApiGatewayV2StageDetails$AutoDeploy": "Indicates whether updates to an API automatically trigger a new deployment.
", "AwsApiGatewayV2StageDetails$ApiGatewayManaged": "Indicates whether the stage is managed by API Gateway.
", + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails$NoDevice": "Whether to suppress the device that is included in the block device mapping of the Amazon Machine Image (AMI).
If NoDevice
is true
, then you cannot specify Ebs
.>
Whether to delete the volume when the instance is terminated.
", + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails$Encrypted": "Whether to encrypt the volume.
", + "AwsAutoScalingLaunchConfigurationDetails$AssociatePublicIpAddress": "For Auto Scaling groups that run in a VPC, specifies whether to assign a public IP address to the group's instances.
", + "AwsAutoScalingLaunchConfigurationDetails$EbsOptimized": "Whether the launch configuration is optimized for Amazon EBS I/O.
", + "AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails$Enabled": "If set to true
, then instances in the group launch with detailed monitoring.
If set to false
, then instances in the group launch with basic monitoring.
With this field, you can enable or disable the selected distribution.
", "AwsCloudFrontDistributionLogging$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs.
", "AwsCloudTrailTrailDetails$HasCustomEventSelectors": "Indicates whether the trail has custom event selectors.
", @@ -2356,6 +2554,7 @@ "AwsEc2SubnetDetails$MapPublicIpOnLaunch": "Whether instances in this subnet receive a public IP address.
", "AwsEc2VolumeAttachment$DeleteOnTermination": "Whether the EBS volume is deleted when the EC2 instance is terminated.
", "AwsEc2VolumeDetails$Encrypted": "Whether the volume is encrypted.
", + "AwsEc2VpnConnectionOptionsDetails$StaticRoutesOnly": "Whether the VPN connection uses static routes only.
", "AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails$CloudWatchEncryptionEnabled": "Whether to enable encryption on the CloudWatch logs.
", "AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails$S3EncryptionEnabled": "Whether to encrypt the logs that are sent to the S3 bucket.
", "AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails$Enable": "Whether to enable the deployment circuit breaker logic for the service.
", @@ -2386,6 +2585,7 @@ "AwsIamAccessKeySessionContextAttributes$MfaAuthenticated": "Indicates whether the session used multi-factor authentication (MFA).
", "AwsIamPolicyDetails$IsAttachable": "Whether the policy can be attached to a user, group, or role.
", "AwsIamPolicyVersion$IsDefaultVersion": "Whether the version is the default version.
", + "AwsKmsKeyDetails$KeyRotationStatus": "Whether the key has key rotation enabled.
", "AwsRdsDbClusterDetails$MultiAz": "Whether the DB cluster has instances in multiple Availability Zones.
", "AwsRdsDbClusterDetails$StorageEncrypted": "Whether the DB cluster is encrypted.
", "AwsRdsDbClusterDetails$DeletionProtection": "Whether the DB cluster has deletion protection enabled.
", @@ -2806,7 +3006,7 @@ "AwsApiGatewayCanarySettings$PercentTraffic": "The percentage of traffic that is diverted to a canary deployment.
", "AwsApiGatewayMethodSettings$ThrottlingRateLimit": "The throttling rate limit for the method.
", "AwsApiGatewayV2RouteSettings$ThrottlingRateLimit": "The throttling rate limit.
", - "AwsKmsKeyDetails$CreationDate": "Indicates when the CMK was created.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
Indicates when the KMS key was created.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The number of megabytes per second being transferred from the backup storage. Returns the average rate for a completed backup.
This field is only updated when you restore to DC2 and DS2 node types.
", "Cvss$BaseScore": "The base CVSS score.
", "GeoLocation$Lon": "The longitude of the location.
", @@ -3025,6 +3225,8 @@ "AwsApiGatewayRestApiDetails$MinimumCompressionSize": "The minimum size in bytes of a payload before compression is enabled.
If null
, then compression is disabled.
If 0, then all payloads are compressed.
", "AwsApiGatewayV2RouteSettings$ThrottlingBurstLimit": "The throttling burst limit.
", "AwsAutoScalingAutoScalingGroupDetails$HealthCheckGracePeriod": "The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before it checks the health status of an EC2 instance that has come into service.
", + "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails$Iops": "The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
Only supported for gp3
or io1
volumes. Required for io1
volumes. Not used with standard
, gp2
, st1
, or sc1
volumes.
The volume size, in GiBs. The following are the supported volumes sizes for each volume type:
gp2 and gp3: 1-16,384
io1: 4-16,384
st1 and sc1: 125-16,384
standard: 1-1,024
You must specify either SnapshotId
or VolumeSize
. If you specify both SnapshotId
and VolumeSize
, the volume size must be equal or greater than the size of the snapshot.
The number of status codes that can cause a failover.
", "AwsCloudFrontDistributionOriginGroupFailoverStatusCodesItemList$member": null, "AwsCodeBuildProjectSource$GitCloneDepth": "Information about the Git clone depth for the build project.
", @@ -3041,6 +3243,13 @@ "AwsEc2SecurityGroupIpPermission$ToPort": "The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
", "AwsEc2SubnetDetails$AvailableIpAddressCount": "The number of available IPV4 addresses in the subnet. Does not include addresses for stopped instances.
", "AwsEc2VolumeDetails$Size": "The size of the volume, in GiBs.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$DpdTimeoutSeconds": "The number of seconds after which a Dead Peer Detection (DPD) timeout occurs.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase1LifetimeSeconds": "The lifetime for phase 1 of the IKE negotiation, in seconds.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase2LifetimeSeconds": "The lifetime for phase 2 of the IKE negotiation, in seconds.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$RekeyFuzzPercentage": "The percentage of the rekey window, which is determined by RekeyMarginTimeSeconds
during which the rekey time is randomly selected.
The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$ReplayWindowSize": "The number of packets in an IKE replay window.
", + "AwsEc2VpnConnectionVgwTelemetryDetails$AcceptedRouteCount": "The number of accepted routes.
", "AwsEcsClusterDefaultCapacityProviderStrategyDetails$Base": "The minimum number of tasks to run on the specified capacity provider.
", "AwsEcsClusterDefaultCapacityProviderStrategyDetails$Weight": "The relative percentage of the total number of tasks launched that should use the capacity provider.
", "AwsEcsServiceCapacityProviderStrategyDetails$Base": "The minimum number of tasks to run on the capacity provider. Only one strategy item can specify a value for Base
.
The value must be between 0 and 100000.
", @@ -3150,6 +3359,7 @@ "IcmpTypeCode$Code": "The ICMP code for which to deny or allow access. To deny or allow all codes, use the value -1.
", "IcmpTypeCode$Type": "The ICMP type for which to deny or allow access. To deny or allow all types, use the value -1.
", "InsightResultValue$Count": "The number of findings returned for each GroupByAttributeValue
.
The Autonomous System Number (ASN) of the internet provider
", "Network$SourcePort": "The source port of network-related information about a finding.
", "Network$DestinationPort": "The destination port of network-related information about a finding.
", @@ -3168,6 +3378,13 @@ "Severity$Normalized": "Deprecated. The normalized severity of a finding. This attribute is being deprecated. Instead of providing Normalized
, provide Label
.
If you provide Label
and do not provide Normalized
, then Normalized
is set automatically as follows.
INFORMATIONAL
- 0
LOW
- 1
MEDIUM
- 40
HIGH
- 70
CRITICAL
- 90
The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase2DhGroupNumbers": "The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.
" + } + }, "IntegrationType": { "base": null, "refs": { @@ -3509,6 +3726,8 @@ "ActionTarget$ActionTargetArn": "The ARN for the target action.
", "ActionTarget$Name": "The name of the action target.
", "ActionTarget$Description": "The description of the target action.
", + "Adjustment$Metric": "The metric to adjust.
", + "Adjustment$Reason": "The reason for the adjustment.
", "AdminAccount$AccountId": "The Amazon Web Services account identifier of the Security Hub administrator account.
", "ArnList$member": null, "AvailabilityZone$ZoneName": "The name of the Availability Zone.
", @@ -3562,6 +3781,22 @@ "AwsAutoScalingAutoScalingGroupDetails$LaunchConfigurationName": "The name of the launch configuration.
", "AwsAutoScalingAutoScalingGroupDetails$HealthCheckType": "The service to use for the health checks.
", "AwsAutoScalingAutoScalingGroupDetails$CreatedTime": "Indicates when the auto scaling group was created.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The device name that is exposed to the EC2 instance. For example, /dev/sdh
or xvdh
.
The name of the virtual device (for example, ephemeral0
).
You can provide either VirtualName
or Ebs
, but not both.
The snapshot ID of the volume to use.
You must specify either VolumeSize
or SnapshotId
.
The volume type.
", + "AwsAutoScalingLaunchConfigurationDetails$ClassicLinkVpcId": "The identifier of a ClassicLink-enabled VPC that EC2-Classic instances are linked to.
", + "AwsAutoScalingLaunchConfigurationDetails$CreatedTime": "The creation date and time for the launch configuration.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The name or the ARN of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
", + "AwsAutoScalingLaunchConfigurationDetails$ImageId": "The identifier of the Amazon Machine Image (AMI) that is used to launch EC2 instances.
", + "AwsAutoScalingLaunchConfigurationDetails$InstanceType": "The instance type for the instances.
", + "AwsAutoScalingLaunchConfigurationDetails$KernelId": "The identifier of the kernel associated with the AMI.
", + "AwsAutoScalingLaunchConfigurationDetails$KeyName": "The name of the key pair.
", + "AwsAutoScalingLaunchConfigurationDetails$LaunchConfigurationName": "The name of the launch configuration.
", + "AwsAutoScalingLaunchConfigurationDetails$PlacementTenancy": "The tenancy of the instance. An instance with dedicated
tenancy runs on isolated, single-tenant hardware and can only be launched into a VPC.
The identifier of the RAM disk associated with the AMI.
", + "AwsAutoScalingLaunchConfigurationDetails$SpotPrice": "The maximum hourly price to be paid for any Spot Instance that is launched to fulfill the request.
", + "AwsAutoScalingLaunchConfigurationDetails$UserData": "The user data to make available to the launched EC2 instances. Must be base64-encoded text.
", "AwsCertificateManagerCertificateDetails$CertificateAuthorityArn": "The ARN of the private certificate authority (CA) that will be used to issue the certificate.
", "AwsCertificateManagerCertificateDetails$CreatedAt": "Indicates when the certificate was requested.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The fully qualified domain name (FQDN), such as www.example.com, that is secured by the certificate.
", @@ -3616,7 +3851,7 @@ "AwsCloudTrailTrailDetails$SnsTopicArn": "The ARN of the SNS topic that is used for notifications of log file delivery.
", "AwsCloudTrailTrailDetails$SnsTopicName": "The name of the SNS topic that is used for notifications of log file delivery.
", "AwsCloudTrailTrailDetails$TrailArn": "The ARN of the trail.
", - "AwsCodeBuildProjectDetails$EncryptionKey": "The KMS customer master key (CMK) used to encrypt the build output artifacts.
You can specify either the ARN of the CMK or, if available, the CMK alias (using the format alias/alias-name).
", + "AwsCodeBuildProjectDetails$EncryptionKey": "The KMS key used to encrypt the build output artifacts.
You can specify either the ARN of the KMS key or, if available, the KMS key alias (using the format alias/alias-name).
", "AwsCodeBuildProjectDetails$Name": "The name of the build project.
", "AwsCodeBuildProjectDetails$ServiceRole": "The ARN of the IAM role that enables CodeBuild to interact with dependent Amazon Web Services services on behalf of the Amazon Web Services account.
", "AwsCodeBuildProjectEnvironment$Certificate": "The certificate to use with this build project.
", @@ -3648,7 +3883,7 @@ "AwsDynamoDbTableProjection$ProjectionType": "The types of attributes that are projected into the index.
", "AwsDynamoDbTableProvisionedThroughput$LastDecreaseDateTime": "Indicates when the provisioned throughput was last decreased.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
Indicates when the provisioned throughput was last increased.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The identifier of the KMS customer master key (CMK) that will be used for KMS encryption for the replica.
", + "AwsDynamoDbTableReplica$KmsMasterKeyId": "The identifier of the KMS key that will be used for KMS encryption for the replica.
", "AwsDynamoDbTableReplica$RegionName": "The name of the Region where the replica is located.
", "AwsDynamoDbTableReplica$ReplicaStatus": "The current status of the replica.
", "AwsDynamoDbTableReplica$ReplicaStatusDescription": "Detailed information about the replica status.
", @@ -3659,7 +3894,7 @@ "AwsDynamoDbTableSseDescription$InaccessibleEncryptionDateTime": "If the key is inaccessible, the date and time when DynamoDB detected that the key was inaccessible.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The status of the server-side encryption.
", "AwsDynamoDbTableSseDescription$SseType": "The type of server-side encryption.
", - "AwsDynamoDbTableSseDescription$KmsMasterKeyArn": "The ARN of the KMS customer master key (CMK) that is used for the KMS encryption.
", + "AwsDynamoDbTableSseDescription$KmsMasterKeyArn": "The ARN of the KMS key that is used for the KMS encryption.
", "AwsDynamoDbTableStreamSpecification$StreamViewType": "Determines the information that is written to the table.
", "AwsEc2EipDetails$InstanceId": "The identifier of the EC2 instance.
", "AwsEc2EipDetails$PublicIp": "A public IP address that is associated with the EC2 instance.
", @@ -3730,9 +3965,32 @@ "AwsEc2VolumeDetails$CreateTime": "Indicates when the volume was created.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The snapshot from which the volume was created.
", "AwsEc2VolumeDetails$Status": "The volume state.
", - "AwsEc2VolumeDetails$KmsKeyId": "The ARN of the KMS customer master key (CMK) that was used to protect the volume encryption key for the volume.
", + "AwsEc2VolumeDetails$KmsKeyId": "The ARN of the KMS key that was used to protect the volume encryption key for the volume.
", "AwsEc2VpcDetails$DhcpOptionsId": "The identifier of the set of Dynamic Host Configuration Protocol (DHCP) options that are associated with the VPC. If the default options are associated with the VPC, then this is default.
", "AwsEc2VpcDetails$State": "The current state of the VPC.
", + "AwsEc2VpnConnectionDetails$VpnConnectionId": "The identifier of the VPN connection.
", + "AwsEc2VpnConnectionDetails$State": "The current state of the VPN connection.
", + "AwsEc2VpnConnectionDetails$CustomerGatewayId": "The identifier of the customer gateway that is at your end of the VPN connection.
", + "AwsEc2VpnConnectionDetails$CustomerGatewayConfiguration": "The configuration information for the VPN connection's customer gateway, in the native XML format.
", + "AwsEc2VpnConnectionDetails$Type": "The type of VPN connection.
", + "AwsEc2VpnConnectionDetails$VpnGatewayId": "The identifier of the virtual private gateway that is at the Amazon Web Services side of the VPN connection.
", + "AwsEc2VpnConnectionDetails$Category": "The category of the VPN connection. VPN
indicates an Amazon Web Services VPN connection. VPN-Classic
indicates an Amazon Web Services Classic VPN connection.
The identifier of the transit gateway that is associated with the VPN connection.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$OutsideIpAddress": "The external IP address of the VPN tunnel.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$PreSharedKey": "The preshared key to establish initial authentication between the virtual private gateway and the customer gateway.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$TunnelInsideCidr": "The range of inside IPv4 addresses for the tunnel.
", + "AwsEc2VpnConnectionRoutesDetails$DestinationCidrBlock": "The CIDR block associated with the local subnet of the customer data center.
", + "AwsEc2VpnConnectionRoutesDetails$State": "The current state of the static route.
", + "AwsEc2VpnConnectionVgwTelemetryDetails$CertificateArn": "The ARN of the VPN tunnel endpoint certificate.
", + "AwsEc2VpnConnectionVgwTelemetryDetails$LastStatusChange": "The date and time of the last change in status.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The Internet-routable IP address of the virtual private gateway's outside interface.
", + "AwsEc2VpnConnectionVgwTelemetryDetails$Status": "The status of the VPN tunnel.
", + "AwsEc2VpnConnectionVgwTelemetryDetails$StatusMessage": "If an error occurs, a description of the error.
", + "AwsEcrContainerImageDetails$RegistryId": "The Amazon Web Services account identifier that is associated with the registry that the image belongs to.
", + "AwsEcrContainerImageDetails$RepositoryName": "The name of the repository that the image belongs to.
", + "AwsEcrContainerImageDetails$Architecture": "The architecture of the image.
", + "AwsEcrContainerImageDetails$ImageDigest": "The sha256 digest of the image manifest.
", + "AwsEcrContainerImageDetails$ImagePublishedAt": "The date and time when the image was pushed to the repository.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The name of the setting.
", "AwsEcsClusterClusterSettingsDetails$Value": "The value of the setting.
", "AwsEcsClusterConfigurationExecuteCommandConfigurationDetails$KmsKeyId": "The identifier of the KMS key that is used to encrypt the data between the local client and the container.
", @@ -3935,11 +4193,11 @@ "AwsIamUserDetails$UserId": "The unique identifier for the user.
", "AwsIamUserDetails$UserName": "The name of the user.
", "AwsIamUserPolicy$PolicyName": "The name of the policy.
", - "AwsKmsKeyDetails$AWSAccountId": "The twelve-digit account ID of the Amazon Web Services account that owns the CMK.
", - "AwsKmsKeyDetails$KeyId": "The globally unique identifier for the CMK.
", - "AwsKmsKeyDetails$KeyManager": "The manager of the CMK. CMKs in your Amazon Web Services account are either customer managed or Amazon Web Services managed.
", - "AwsKmsKeyDetails$KeyState": "The state of the CMK.
", - "AwsKmsKeyDetails$Origin": "The source of the CMK's key material.
When this value is AWS_KMS
, KMS created the key material.
When this value is EXTERNAL
, the key material was imported from your existing key management infrastructure or the CMK lacks key material.
When this value is AWS_CLOUDHSM
, the key material was created in the CloudHSM cluster associated with a custom key store.
The twelve-digit account ID of the Amazon Web Services account that owns the KMS key.
", + "AwsKmsKeyDetails$KeyId": "The globally unique identifier for the KMS key.
", + "AwsKmsKeyDetails$KeyManager": "The manager of the KMS key. KMS keys in your Amazon Web Services account are either customer managed or Amazon Web Services managed.
", + "AwsKmsKeyDetails$KeyState": "The state of the KMS key.
", + "AwsKmsKeyDetails$Origin": "The source of the KMS key material.
When this value is AWS_KMS
, KMS created the key material.
When this value is EXTERNAL
, the key material was imported from your existing key management infrastructure or the KMS key lacks key material.
When this value is AWS_CLOUDHSM
, the key material was created in the CloudHSM cluster associated with a custom key store.
A description of the key.
", "AwsLambdaFunctionCode$S3Bucket": "An Amazon S3 bucket in the same Amazon Web Services Region as your function. The bucket can be in a different Amazon Web Services account.
", "AwsLambdaFunctionCode$S3Key": "The Amazon S3 key of the deployment package.
", @@ -3949,7 +4207,7 @@ "AwsLambdaFunctionDetails$CodeSha256": "The SHA256 hash of the function's deployment package.
", "AwsLambdaFunctionDetails$FunctionName": "The name of the function.
", "AwsLambdaFunctionDetails$Handler": "The function that Lambda calls to begin executing your function.
", - "AwsLambdaFunctionDetails$KmsKeyArn": "The KMS key that is used to encrypt the function's environment variables. This key is only returned if you've configured a customer managed CMK.
", + "AwsLambdaFunctionDetails$KmsKeyArn": "The KMS key that is used to encrypt the function's environment variables. This key is only returned if you've configured a customer managed customer managed key.
", "AwsLambdaFunctionDetails$LastModified": "Indicates when the function was last updated.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
For Lambda@Edge functions, the ARN of the master function.
", "AwsLambdaFunctionDetails$RevisionId": "The latest updated revision of the function or alias.
", @@ -4161,22 +4419,40 @@ "AwsS3BucketDetails$OwnerId": "The canonical user ID of the owner of the S3 bucket.
", "AwsS3BucketDetails$OwnerName": "The display name of the owner of the S3 bucket.
", "AwsS3BucketDetails$CreatedAt": "Indicates when the S3 bucket was created.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The access control list for the S3 bucket.
", + "AwsS3BucketLoggingConfiguration$DestinationBucketName": "The name of the S3 bucket where log files for the S3 bucket are stored.
", + "AwsS3BucketLoggingConfiguration$LogFilePrefix": "The prefix added to log files for the S3 bucket.
", + "AwsS3BucketNotificationConfigurationDetail$Destination": "The ARN of the Lambda function, Amazon SQS queue, or Amazon SNS topic that generates the notification.
", + "AwsS3BucketNotificationConfigurationDetail$Type": "Indicates the type of notification. Notifications can be generated using Lambda functions, Amazon SQS queues or Amazon SNS topics.
", + "AwsS3BucketNotificationConfigurationEvents$member": null, + "AwsS3BucketNotificationConfigurationS3KeyFilterRule$Value": "The filter value.
", "AwsS3BucketServerSideEncryptionByDefault$SSEAlgorithm": "Server-side encryption algorithm to use for the default encryption.
", - "AwsS3BucketServerSideEncryptionByDefault$KMSMasterKeyID": "KMS customer master key (CMK) ID to use for the default encryption.
", + "AwsS3BucketServerSideEncryptionByDefault$KMSMasterKeyID": "KMS key ID to use for the default encryption.
", + "AwsS3BucketWebsiteConfiguration$ErrorDocument": "The name of the error document for the website.
", + "AwsS3BucketWebsiteConfiguration$IndexDocumentSuffix": "The name of the index document for the website.
", + "AwsS3BucketWebsiteConfigurationRedirectTo$Hostname": "The name of the host to redirect requests to.
", + "AwsS3BucketWebsiteConfigurationRedirectTo$Protocol": "The protocol to use when redirecting requests. By default, uses the same protocol as the original request.
", + "AwsS3BucketWebsiteConfigurationRoutingRuleCondition$HttpErrorCodeReturnedEquals": "Indicates to redirect the request if the HTTP error code matches this value.
", + "AwsS3BucketWebsiteConfigurationRoutingRuleCondition$KeyPrefixEquals": "Indicates to redirect the request if the key prefix matches this value.
", + "AwsS3BucketWebsiteConfigurationRoutingRuleRedirect$Hostname": "The host name to use in the redirect request.
", + "AwsS3BucketWebsiteConfigurationRoutingRuleRedirect$HttpRedirectCode": "The HTTP redirect code to use in the response.
", + "AwsS3BucketWebsiteConfigurationRoutingRuleRedirect$Protocol": "The protocol to use to redirect the request. By default, uses the protocol from the original request.
", + "AwsS3BucketWebsiteConfigurationRoutingRuleRedirect$ReplaceKeyPrefixWith": "The object key prefix to use in the redirect request.
Cannot be provided if ReplaceKeyWith
is present.
The specific object key to use in the redirect request.
Cannot be provided if ReplaceKeyPrefixWith
is present.
Indicates when the object was last modified.
Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z
.
The opaque identifier assigned by a web server to a specific version of a resource found at a URL.
", "AwsS3ObjectDetails$VersionId": "The version of the object.
", "AwsS3ObjectDetails$ContentType": "A standard MIME type describing the format of the object data.
", "AwsS3ObjectDetails$ServerSideEncryption": "If the object is stored using server-side encryption, the value of the server-side encryption algorithm used when storing this object in Amazon S3.
", - "AwsS3ObjectDetails$SSEKMSKeyId": "The identifier of the KMS symmetric customer managed customer master key (CMK) that was used for the object.
", - "AwsSecretsManagerSecretDetails$KmsKeyId": "The ARN, Key ID, or alias of the KMS customer master key (CMK) used to encrypt the SecretString
or SecretBinary
values for versions of this secret.
The identifier of the KMS symmetric customer managed key that was used for the object.
", + "AwsSecretsManagerSecretDetails$KmsKeyId": "The ARN, Key ID, or alias of the KMS key used to encrypt the SecretString
or SecretBinary
values for versions of this secret.
The ARN of the Lambda function that rotates the secret.
", "AwsSecretsManagerSecretDetails$Name": "The name of the secret.
", "AwsSecretsManagerSecretDetails$Description": "The user-provided description of the secret.
", "AwsSecurityFinding$SchemaVersion": "The schema version that a finding is formatted for.
", "AwsSecurityFinding$Id": "The security findings provider-specific identifier for a finding.
", "AwsSecurityFinding$ProductArn": "The ARN generated by Security Hub that uniquely identifies a product that generates findings. This can be the ARN for a third-party product that is integrated with Security Hub, or the ARN for a custom integration.
", - "AwsSecurityFinding$ProductName": "The name of the product that generated the finding.
Security Hub populates this attribute automatically for each finding. You cannot update it using BatchImportFindings
or BatchUpdateFindings
. The exception to this is when you use a custom integration.
When you use the Security Hub console to filter findings by product name, you use this attribute.
When you use the Security Hub API to filter findings by product name, you use the aws/securityhub/ProductyName
attribute under ProductFields
.
Security Hub does not synchronize those two attributes.
", + "AwsSecurityFinding$ProductName": "The name of the product that generated the finding.
Security Hub populates this attribute automatically for each finding. You cannot update it using BatchImportFindings
or BatchUpdateFindings
. The exception to this is when you use a custom integration.
When you use the Security Hub console to filter findings by product name, you use this attribute.
When you use the Security Hub API to filter findings by product name, you use the aws/securityhub/ProductName
attribute under ProductFields
.
Security Hub does not synchronize those two attributes.
", "AwsSecurityFinding$CompanyName": "The name of the company for the product that generated the finding.
Security Hub populates this attribute automatically for each finding. You cannot be updated using BatchImportFindings
or BatchUpdateFindings
. The exception to this is when you use a custom integration.
When you use the Security Hub console to filter findings by company name, you use this attribute.
When you use the Security Hub API to filter findings by company name, you use the aws/securityhub/CompanyName
attribute under ProductFields
.
Security Hub does not synchronize those two attributes.
", "AwsSecurityFinding$Region": "The Region from which the finding was generated.
Security Hub populates this attribute automatically for each finding. You cannot update it using BatchImportFindings
or BatchUpdateFindings
.
The identifier for the solution-specific component (a discrete unit of logic) that generated a finding. In various security-findings providers' solutions, this generator can be called a rule, a check, a detector, a plugin, etc.
", @@ -4190,12 +4466,12 @@ "AwsSecurityFinding$SourceUrl": "A URL that links to a page about the current finding in the security-findings provider's solution.
", "AwsSecurityFindingIdentifier$Id": "The identifier of the finding that was specified by the finding provider.
", "AwsSecurityFindingIdentifier$ProductArn": "The ARN generated by Security Hub that uniquely identifies a product that generates findings. This can be the ARN for a third-party product that is integrated with Security Hub, or the ARN for a custom integration.
", - "AwsSnsTopicDetails$KmsMasterKeyId": "The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK.
", + "AwsSnsTopicDetails$KmsMasterKeyId": "The ID of an Amazon Web Services managed key for Amazon SNS or a customer managed key.
", "AwsSnsTopicDetails$TopicName": "The name of the topic.
", "AwsSnsTopicDetails$Owner": "The subscription's owner.
", "AwsSnsTopicSubscription$Endpoint": "The subscription's endpoint (format depends on the protocol).
", "AwsSnsTopicSubscription$Protocol": "The subscription's protocol.
", - "AwsSqsQueueDetails$KmsMasterKeyId": "The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SQS or a custom CMK.
", + "AwsSqsQueueDetails$KmsMasterKeyId": "The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS key.
", "AwsSqsQueueDetails$QueueName": "The name of the new queue.
", "AwsSqsQueueDetails$DeadLetterTargetArn": "The ARN of the dead-letter queue to which Amazon SQS moves messages after the value of maxReceiveCount
is exceeded.
The current patch compliance status.
The possible status values are:
COMPLIANT
NON_COMPLIANT
UNSPECIFIED_DATA
he name of the custom identifier that detected the sensitive data.
", "Cvss$Version": "The version of CVSS for the CVSS score.
", "Cvss$BaseVector": "The base scoring vector for the CVSS score.
", + "Cvss$Source": "The origin of the original CVSS score and vector.
", "DataClassificationDetails$DetailedResultsLocation": "The path to the folder or file that contains the sensitive data.
", "DateFilter$Start": "A start date for the date filter.
", "DateFilter$End": "An end date for the date filter.
", @@ -4332,7 +4609,7 @@ "Product$ProductName": "The name of the product.
", "Product$CompanyName": "The name of the company that provides the product.
", "Product$Description": "A description of the product.
", - "Product$MarketplaceUrl": "For integrations with Amazon Web Services services, the Amazon Web Services Console URL from which to activate the service.
For integrations with third-party products, the Marketplace URL from which to subscribe to or purchase the product.
", + "Product$MarketplaceUrl": "For integrations with Amazon Web Services services, the Amazon Web Services Console URL from which to activate the service.
For integrations with third-party products, the Amazon Web Services Marketplace URL from which to subscribe to or purchase the product.
", "Product$ActivationUrl": "The URL to the service or product documentation about the integration with Security Hub, including how to activate the integration.
", "Product$ProductSubscriptionResourcePolicy": "The resource policy associated with the product.
", "ProductSubscriptionArnList$member": null, @@ -4360,6 +4637,8 @@ "SoftwarePackage$Epoch": "The epoch of the software package.
", "SoftwarePackage$Release": "The release of the software package.
", "SoftwarePackage$Architecture": "The architecture used for the software package.
", + "SoftwarePackage$PackageManager": "The source of the package.
", + "SoftwarePackage$FilePath": "The file system path to the package manager inventory file.
", "SortCriterion$Field": "The finding attribute used to sort findings.
", "Standard$StandardsArn": "The ARN of a standard.
", "Standard$Name": "The name of the standard.
", @@ -4409,12 +4688,20 @@ "refs": { "AwsApiGatewayEndpointConfiguration$Types": "A list of endpoint types for the REST API.
For an edge-optimized API, the endpoint type is EDGE
. For a Regional API, the endpoint type is REGIONAL
. For a private API, the endpoint type is PRIVATE
.
The list of binary media types supported by the REST API.
", + "AwsAutoScalingLaunchConfigurationDetails$ClassicLinkVpcSecurityGroups": "The identifiers of one or more security groups for the VPC that is specified in ClassicLinkVPCId
.
The security groups to assign to the instances in the Auto Scaling group.
", "AwsCodeBuildProjectVpcConfig$Subnets": "A list of one or more subnet IDs in your VPC.
", "AwsCodeBuildProjectVpcConfig$SecurityGroupIds": "A list of one or more security group IDs in your VPC.
", "AwsCorsConfiguration$AllowOrigins": "The allowed origins for CORS requests.
", "AwsCorsConfiguration$ExposeHeaders": "The exposed headers for CORS requests.
", "AwsCorsConfiguration$AllowMethods": "The allowed methods for CORS requests.
", "AwsCorsConfiguration$AllowHeaders": "The allowed headers for CORS requests.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$IkeVersions": "The Internet Key Exchange (IKE) versions that are permitted for the VPN tunnel.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase1EncryptionAlgorithms": "The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase1IntegrityAlgorithms": "The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase2EncryptionAlgorithms": "The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations.
", + "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase2IntegrityAlgorithms": "The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations.
", + "AwsEcrContainerImageDetails$ImageTags": "The list of tags that are associated with the image.
", "AwsEcsClusterDetails$CapacityProviders": "The short name of one or more capacity providers to associate with the cluster.
", "AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails$SecurityGroups": "The IDs of the security groups associated with the task or service.
You can provide up to five security groups.
", "AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails$Subnets": "The IDs of the subnets associated with the task or service.
You can provide up to 16 subnets.
", @@ -5196,8 +5483,8 @@ "WorkflowStatus": { "base": null, "refs": { - "Workflow$Status": "The status of the investigation into the finding. The allowed values are the following.
NEW
- The initial state of a finding, before it is reviewed.
Security Hub also resets the workflow status from NOTIFIED
or RESOLVED
to NEW
in the following cases:
RecordState
changes from ARCHIVED
to ACTIVE
.
ComplianceStatus
changes from PASSED
to either WARNING
, FAILED
, or NOT_AVAILABLE
.
NOTIFIED
- Indicates that you notified the resource owner about the security issue. Used when the initial reviewer is not the resource owner, and needs intervention from the resource owner.
SUPPRESSED
- The finding will not be reviewed again and will not be acted upon.
RESOLVED
- The finding was reviewed and remediated and is now considered resolved.
The status of the investigation into the finding. The allowed values are the following.
NEW
- The initial state of a finding, before it is reviewed.
Security Hub also resets WorkFlowStatus
from NOTIFIED
or RESOLVED
to NEW
in the following cases:
The record state changes from ARCHIVED
to ACTIVE
.
The compliance status changes from PASSED
to either WARNING
, FAILED
, or NOT_AVAILABLE
.
NOTIFIED
- Indicates that you notified the resource owner about the security issue. Used when the initial reviewer is not the resource owner, and needs intervention from the resource owner.
RESOLVED
- The finding was reviewed and remediated and is now considered resolved.
SUPPRESSED
- The finding will not be reviewed again and will not be acted upon.
The status of the investigation into the finding. The workflow status is specific to an individual finding. It does not affect the generation of new findings. For example, setting the workflow status to SUPPRESSED
or RESOLVED
does not prevent a new finding for the same issue.
The allowed values are the following.
NEW
- The initial state of a finding, before it is reviewed.
Security Hub also resets the workflow status from NOTIFIED
or RESOLVED
to NEW
in the following cases:
RecordState
changes from ARCHIVED
to ACTIVE
.
ComplianceStatus
changes from PASSED
to either WARNING
, FAILED
, or NOT_AVAILABLE
.
NOTIFIED
- Indicates that you notified the resource owner about the security issue. Used when the initial reviewer is not the resource owner, and needs intervention from the resource owner.
SUPPRESSED
- Indicates that you reviewed the finding and do not believe that any action is needed. The finding is no longer updated.
RESOLVED
- The finding was reviewed and remediated and is now considered resolved.
The status of the investigation into the finding. The workflow status is specific to an individual finding. It does not affect the generation of new findings. For example, setting the workflow status to SUPPRESSED
or RESOLVED
does not prevent a new finding for the same issue.
The allowed values are the following.
NEW
- The initial state of a finding, before it is reviewed.
Security Hub also resets WorkFlowStatus
from NOTIFIED
or RESOLVED
to NEW
in the following cases:
The record state changes from ARCHIVED
to ACTIVE
.
The compliance status changes from PASSED
to either WARNING
, FAILED
, or NOT_AVAILABLE
.
NOTIFIED
- Indicates that you notified the resource owner about the security issue. Used when the initial reviewer is not the resource owner, and needs intervention from the resource owner.
RESOLVED
- The finding was reviewed and remediated and is now considered resolved.
SUPPRESSED
- Indicates that you reviewed the finding and do not believe that any action is needed. The finding is no longer updated.
Used by administrators to choose which groups in the directory should have access to upload and download files over the enabled protocols using Amazon Web Services Transfer Family. For example, a Microsoft Active Directory might contain 50,000 users, but only a small fraction might need the ability to transfer files to the server. An administrator can use CreateAccess
to limit the access to the correct set of users who need this ability.
Instantiates an auto-scaling virtual server based on the selected file transfer protocol in Amazon Web Services. When you make updates to your file transfer protocol-enabled server or when you work with users, use the service-generated ServerId
property that is assigned to the newly created server.
Creates a user and associates them with an existing file transfer protocol-enabled server. You can only create and associate users with servers that have the IdentityProviderType
set to SERVICE_MANAGED
. Using parameters for CreateUser
, you can specify the user name, set the home directory, store the user's public key, and assign the user's Amazon Web Services Identity and Access Management (IAM) role. You can also optionally add a scope-down policy, and assign metadata with tags that can be used to group and search for users.
Creates a user and associates them with an existing file transfer protocol-enabled server. You can only create and associate users with servers that have the IdentityProviderType
set to SERVICE_MANAGED
. Using parameters for CreateUser
, you can specify the user name, set the home directory, store the user's public key, and assign the user's Amazon Web Services Identity and Access Management (IAM) role. You can also optionally add a session policy, and assign metadata with tags that can be used to group and search for users.
Allows you to create a workflow with specified steps and step details the workflow invokes after file transfer completes. After creating a workflow, you can associate the workflow created with any transfer servers by specifying the workflow-details
field in CreateServer
and UpdateServer
operations.
Allows you to delete the access specified in the ServerID
and ExternalID
parameters.
Deletes the file transfer protocol-enabled server that you specify.
No response returns from this operation.
", - "DeleteSshPublicKey": "Deletes a user's Secure Shell (SSH) public key.
No response is returned from this operation.
", + "DeleteSshPublicKey": "Deletes a user's Secure Shell (SSH) public key.
", "DeleteUser": "Deletes the user belonging to a file transfer protocol-enabled server you specify.
No response returns from this operation.
When you delete a user from a server, the user's information is lost.
Deletes the specified workflow.
", "DescribeAccess": "Describes the access that is assigned to the specific file transfer protocol-enabled server, as identified by its ServerId
property and its ExternalID
.
The response from this call returns the properties of the access that is associated with the ServerId
value that was specified.
You can use DescribeExecution
to check the details of the execution of the specified workflow.
Describes the security policy that is attached to your file transfer protocol-enabled server. The response contains a description of the security policy's properties. For more information about security policies, see Working with security policies.
", "DescribeServer": "Describes a file transfer protocol-enabled server that you specify by passing the ServerId
parameter.
The response contains a description of a server's properties. When you set EndpointType
to VPC, the response will contain the EndpointDetails
.
Describes the user assigned to the specific file transfer protocol-enabled server, as identified by its ServerId
property.
The response from this call returns the properties of the user associated with the ServerId
value that was specified.
Describes the specified workflow.
", "ImportSshPublicKey": "Adds a Secure Shell (SSH) public key to a user account identified by a UserName
value assigned to the specific file transfer protocol-enabled server, identified by ServerId
.
The response returns the UserName
value, the ServerId
value, and the name of the SshPublicKeyId
.
Lists the details for all the accesses you have on your server.
", + "ListExecutions": "Lists all executions for the specified workflow.
", "ListSecurityPolicies": "Lists the security policies that are attached to your file transfer protocol-enabled servers.
", "ListServers": "Lists the file transfer protocol-enabled servers that are associated with your Amazon Web Services account.
", "ListTagsForResource": "Lists all of the tags associated with the Amazon Resource Name (ARN) that you specify. The resource can be a user, server, or role.
", "ListUsers": "Lists the users for a file transfer protocol-enabled server that you specify by passing the ServerId
parameter.
Lists all of your workflows.
", + "SendWorkflowStepState": "Sends a callback for asynchronous custom steps.
The ExecutionId
, WorkflowId
, and Token
are passed to the target resource during execution of a custom step of a workflow. You must include those with their callback as well as providing a status.
Changes the state of a file transfer protocol-enabled server from OFFLINE
to ONLINE
. It has no impact on a server that is already ONLINE
. An ONLINE
server can accept and process file transfer jobs.
The state of STARTING
indicates that the server is in an intermediate state, either not fully able to respond, or not fully online. The values of START_FAILED
can indicate an error condition.
No response is returned from this call.
", "StopServer": "Changes the state of a file transfer protocol-enabled server from ONLINE
to OFFLINE
. An OFFLINE
server cannot accept and process file transfer jobs. Information tied to your server, such as server and user properties, are not affected by stopping your server.
Stopping the server will not reduce or impact your file transfer protocol endpoint billing; you must delete the server to stop being billed.
The state of STOPPING
indicates that the server is in an intermediate state, either not fully able to respond, or not fully offline. The values of STOP_FAILED
can indicate an error condition.
No response is returned from this call.
", "TagResource": "Attaches a key-value pair to a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities.
There is no response returned from this call.
", - "TestIdentityProvider": "If the IdentityProviderType
of a file transfer protocol-enabled server is AWS_DIRECTORY_SERVICE
or API_Gateway
, tests whether your identity provider is set up successfully. We highly recommend that you call this operation to test your authentication method as soon as you create your server. By doing so, you can troubleshoot issues with the identity provider integration to ensure that your users can successfully use the service.
If the IdentityProviderType
of a file transfer protocol-enabled server is AWS_DIRECTORY_SERVICE
or API_Gateway
, tests whether your identity provider is set up successfully. We highly recommend that you call this operation to test your authentication method as soon as you create your server. By doing so, you can troubleshoot issues with the identity provider integration to ensure that your users can successfully use the service.
The ServerId
and UserName
parameters are required. The ServerProtocol
, SourceIp
, and UserPassword
are all optional.
You cannot use TestIdentityProvider
if the IdentityProviderType
of your server is SERVICE_MANAGED
.
If you provide any incorrect values for any parameters, the Response
field is empty.
If you provide a server ID for a server that uses service-managed users, you get an error:
An error occurred (InvalidRequestException) when calling the TestIdentityProvider operation: s-server-ID not configured for external auth
If you enter a Server ID for the --server-id
parameter that does not identify an actual Transfer server, you receive the following error:
An error occurred (ResourceNotFoundException) when calling the TestIdentityProvider operation: Unknown server
Detaches a key-value pair from a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities.
No response is returned from this call.
", "UpdateAccess": "Allows you to update parameters for the access specified in the ServerID
and ExternalID
parameters.
Updates the file transfer protocol-enabled server's properties after that server has been created.
The UpdateServer
call returns the ServerId
of the server you updated.
Specifies the unique Amazon Resource Name (ARN) of the server.
", "DescribedUser$Arn": "Specifies the unique Amazon Resource Name (ARN) for the user that was requested to be described.
", + "DescribedWorkflow$Arn": "Specifies the unique Amazon Resource Name (ARN) for the workflow.
", "ListTagsForResourceRequest$Arn": "Requests the tags associated with a particular Amazon Resource Name (ARN). An ARN is an identifier for a specific Amazon Web Services resource, such as a server, user, or role.
", "ListTagsForResourceResponse$Arn": "The ARN you specified to list the tags of.
", "ListedServer$Arn": "Specifies the unique Amazon Resource Name (ARN) for a server to be listed.
", "ListedUser$Arn": "Provides the unique Amazon Resource Name (ARN) for the user that you want to learn about.
", + "ListedWorkflow$Arn": "Specifies the unique Amazon Resource Name (ARN) for the workflow.
", "TagResourceRequest$Arn": "An Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a server, user, or role.
", "UntagResourceRequest$Arn": "The value of the resource that will have the tag removed. An Amazon Resource Name (ARN) is an identifier for a specific Amazon Web Services resource, such as a server, user, or role.
" } }, + "CallbackToken": { + "base": null, + "refs": { + "SendWorkflowStepStateRequest$Token": "Used to distinguish between multiple callbacks for multiple Lambda steps within the same execution.
" + } + }, "Certificate": { "base": null, "refs": { @@ -68,10 +83,16 @@ } }, "ConflictException": { - "base": "This exception is thrown when the UpdatServer
is called for a file transfer protocol-enabled server that has VPC as the endpoint type and the server's VpcEndpointID
is not in the available state.
This exception is thrown when the UpdateServer
is called for a file transfer protocol-enabled server that has VPC as the endpoint type and the server's VpcEndpointID
is not in the available state.
Each step type has its own StepDetails
structure.
Details for a step that performs a file copy.
Consists of the following values:
A description
An S3 or EFS location for the destination of the file copy.
A flag that indicates whether or not to overwrite an existing file of the same name. The default is FALSE
.
Each step type has its own StepDetails
structure.
Details for a step that invokes a lambda function.
Consists of the lambda function name, target, and timeout (in seconds).
" + } + }, + "CustomStepStatus": { + "base": null, + "refs": { + "SendWorkflowStepStateRequest$Status": "Indicates whether the specified step succeeded or failed.
" + } + }, + "CustomStepTarget": { + "base": null, + "refs": { + "CustomStepDetails$Target": "The ARN for the lambda function that is being called.
" + } + }, + "CustomStepTimeoutSeconds": { + "base": null, + "refs": { + "CustomStepDetails$TimeoutSeconds": "Timeout, in seconds, for the step.
" + } + }, "DateImported": { "base": null, "refs": { @@ -123,11 +178,22 @@ "refs": { } }, + "DeleteStepDetails": { + "base": "The name of the step, used to identify the step that is being deleted.
", + "refs": { + "WorkflowStep$DeleteStepDetails": "You need to specify the name of the file to be deleted.
" + } + }, "DeleteUserRequest": { "base": null, "refs": { } }, + "DeleteWorkflowRequest": { + "base": null, + "refs": { + } + }, "DescribeAccessRequest": { "base": null, "refs": { @@ -138,6 +204,16 @@ "refs": { } }, + "DescribeExecutionRequest": { + "base": null, + "refs": { + } + }, + "DescribeExecutionResponse": { + "base": null, + "refs": { + } + }, "DescribeSecurityPolicyRequest": { "base": null, "refs": { @@ -168,12 +244,28 @@ "refs": { } }, + "DescribeWorkflowRequest": { + "base": null, + "refs": { + } + }, + "DescribeWorkflowResponse": { + "base": null, + "refs": { + } + }, "DescribedAccess": { "base": "Describes the properties of the access that was specified.
", "refs": { "DescribeAccessResponse$Access": "The external ID of the server that the access is attached to.
" } }, + "DescribedExecution": { + "base": "The details for an execution object.
", + "refs": { + "DescribeExecutionResponse$Execution": "The structure that contains the details of the workflow' execution.
" + } + }, "DescribedSecurityPolicy": { "base": "Describes the properties of a security policy that was specified. For more information about security policies, see Working with security policies.
", "refs": { @@ -192,6 +284,12 @@ "DescribeUserResponse$User": "An array containing the properties of the user account for the ServerID
value that you specified.
Describes the properties of the specified workflow
", + "refs": { + "DescribeWorkflowResponse$Workflow": "The structure that contains the details of the workflow.
" + } + }, "DirectoryId": { "base": null, "refs": { @@ -206,6 +304,25 @@ "ListedServer$Domain": "Specifies the domain of the storage system that is used for file transfers.
" } }, + "EfsFileLocation": { + "base": "Specifies the details for the file location for the file being used in the workflow. Only applicable if you are using Amazon EFS for storage.
You need to provide the file system ID and the pathname. The pathname can represent either a path or a file. This is determined by whether or not you end the path value with the forward slash (/) character. If the final character is \"/\", then your file is copied to the folder, and its name does not change. If, rather, the final character is alphanumeric, your uploaded file is renamed to the path value. In this case, if a file with that name already exists, it is overwritten.
For example, if your path is shared-files/bob/
, your uploaded files are copied to the shared-files/bob/
, folder. If your path is shared-files/today
, each uploaded file is copied to the shared-files
folder and named today
: each upload overwrites the previous version of the bob
file.
Specifies the Amazon EFS ID and the path for the file being used.
", + "InputFileLocation$EfsFileLocation": "Specifies the details for the Amazon EFS file being copied.
" + } + }, + "EfsFileSystemId": { + "base": null, + "refs": { + "EfsFileLocation$FileSystemId": "The ID of the file system, assigned by Amazon EFS.
" + } + }, + "EfsPath": { + "base": null, + "refs": { + "EfsFileLocation$Path": "The pathname for the folder being used by a workflow.
" + } + }, "EndpointDetails": { "base": "The virtual private cloud (VPC) endpoint settings that are configured for your file transfer protocol-enabled server. With a VPC endpoint, you can restrict access to your server and resources only within your VPC. To control incoming internet traffic, invoke the UpdateServer
API and attach an Elastic IP address to your server's endpoint.
After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT
in your Amazon Web Servicesaccount if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT
in your Amazon Web Servicesaccount on or before May 19, 2021, you will not be affected. After this date, use EndpointType
=VPC
.
For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.
After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT
in your Amazon Web Servicesaccount if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT
in your Amazon Web Servicesaccount on or before May 19, 2021, you will not be affected. After this date, use EndpointType
=VPC
.
For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
It is recommended that you use VPC
as the EndpointType
. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType
set to VPC_ENDPOINT
.
Specifies the error message and type, for an error that occurs during the execution of the workflow.
", + "refs": { + "ExecutionStepResult$Error": "Specifies the details for an error, if it occurred during execution of the specified workfow step.
" + } + }, + "ExecutionErrorMessage": { + "base": null, + "refs": { + "ExecutionError$Message": "Specifies the descriptive message that corresponds to the ErrorType
.
Specifies the error type: currently, the only valid value is PERMISSION_DENIED
, which occurs if your policy does not contain the correct permissions to complete one or more of the steps in the workflow.
A unique identifier for the execution of a workflow.
", + "DescribedExecution$ExecutionId": "A unique identifier for the execution of a workflow.
", + "ListedExecution$ExecutionId": "A unique identifier for the execution of a workflow.
", + "SendWorkflowStepStateRequest$ExecutionId": "A unique identifier for the execution of a workflow.
" + } + }, + "ExecutionResults": { + "base": "Specifies the steps in the workflow, as well as the steps to execute in case of any errors during workflow execution.
", + "refs": { + "DescribedExecution$Results": "A structure that describes the execution results. This includes a list of the steps along with the details of each step, error type and message (if any), and the OnExceptionSteps
structure.
The status is one of the execution. Can be in progress, completed, exception encountered, or handling the exception.
", + "ListedExecution$Status": "The status is one of the execution. Can be in progress, completed, exception encountered, or handling the exception.
" + } + }, + "ExecutionStepResult": { + "base": "Specifies the following details for the step: error (if any), outputs (if any), and the step type.
", + "refs": { + "ExecutionStepResults$member": null + } + }, + "ExecutionStepResults": { + "base": null, + "refs": { + "ExecutionResults$Steps": "Specifies the details for the steps that are in the specified workflow.
", + "ExecutionResults$OnExceptionSteps": "Specifies the steps (actions) to take if any errors are encountered during execution of the workflow.
" + } + }, "ExternalId": { "base": null, "refs": { @@ -236,6 +406,13 @@ "UpdateAccessResponse$ExternalId": "The external ID of the group whose users have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon Web ServicesTransfer Family.
" } }, + "FileLocation": { + "base": "Specifies the Amazon S3 or EFS file details to be used in the step.
", + "refs": { + "DescribedExecution$InitialFileLocation": "A structure that describes the Amazon S3 or EFS file location. This is the file location when the execution begins: if the file is being copied, this is the initial (as opposed to destination) file location.
", + "ListedExecution$InitialFileLocation": "A structure that describes the Amazon S3 or EFS file location. This is the file location when the execution begins: if the file is being copied, this is the initial (as opposed to destination) file location.
" + } + }, "Fips": { "base": null, "refs": { @@ -264,25 +441,25 @@ "HomeDirectoryMappings": { "base": null, "refs": { - "CreateAccessRequest$HomeDirectoryMappings": "Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot
\"). To do this, you can set Entry
to /
and set Target
to the HomeDirectory
parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory (\"chroot
\"). To do this, you can set Entry
to /
and set Target
to the HomeDirectory parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
In most cases, you can use this value instead of the scope-down policy to lock down the associated access to the designated home directory (\"chroot
\"). To do this, you can set Entry
to '/' and set Target
to the HomeDirectory
parameter value.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory (\"chroot
\"). To do this, you can set Entry
to '/' and set Target
to the HomeDirectory parameter value.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot
\"). To do this, you can set Entry
to /
and set Target
to the HomeDirectory
parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot
\"). To do this, you can set Entry
to '/' and set Target
to the HomeDirectory parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the session policy to lock down your user to the designated home directory (\"chroot
\"). To do this, you can set Entry
to /
and set Target
to the HomeDirectory
parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the session policy to lock your user down to the designated home directory (\"chroot
\"). To do this, you can set Entry
to /
and set Target
to the HomeDirectory parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
In most cases, you can use this value instead of the session policy to lock down the associated access to the designated home directory (\"chroot
\"). To do this, you can set Entry
to '/' and set Target
to the HomeDirectory
parameter value.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
In most cases, you can use this value instead of the session policy to lock your user down to the designated home directory (\"chroot
\"). To do this, you can set Entry
to '/' and set Target
to the HomeDirectory parameter value.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the session policy to lock down your user to the designated home directory (\"chroot
\"). To do this, you can set Entry
to /
and set Target
to the HomeDirectory
parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry
and Target
pair, where Entry
shows how the path is made visible and Target
is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it is displayed as is. You also must ensure that your Amazon Web Services Identity and Access Management (IAM) role provides access to paths in Target
. This value can only be set when HomeDirectoryType
is set to LOGICAL.
The following is an Entry
and Target
pair example.
[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]
In most cases, you can use this value instead of the session policy to lock down your user to the designated home directory (\"chroot
\"). To do this, you can set Entry
to '/' and set Target
to the HomeDirectory parameter value.
The following is an Entry
and Target
pair example for chroot
.
[ { \"Entry:\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]
If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api
or efsapi
call instead of s3
or efs
so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/
. Make sure that the end of the key name ends in a /
for it to be considered a folder.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you will need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH
, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL
, you need to provide mappings in the HomeDirectoryMappings
for how you want to make Amazon S3 or EFS paths visible to your users.
Specifies the location for the file being copied. Only applicable for the Copy type of workflow steps.
", + "refs": { + "CopyStepDetails$DestinationFileLocation": null + } + }, "InternalServiceError": { "base": "This exception is thrown when an error occurs in the Amazon Web ServicesTransfer Family service.
", "refs": { @@ -349,6 +532,16 @@ "refs": { } }, + "ListExecutionsRequest": { + "base": null, + "refs": { + } + }, + "ListExecutionsResponse": { + "base": null, + "refs": { + } + }, "ListSecurityPoliciesRequest": { "base": null, "refs": { @@ -389,6 +582,16 @@ "refs": { } }, + "ListWorkflowsRequest": { + "base": null, + "refs": { + } + }, + "ListWorkflowsResponse": { + "base": null, + "refs": { + } + }, "ListedAccess": { "base": "Lists the properties for one or more specified associated accesses.
", "refs": { @@ -401,6 +604,18 @@ "ListAccessesResponse$Accesses": "Returns the accesses and their properties for the ServerId
value that you specify.
Returns properties of the execution that is specified.
", + "refs": { + "ListedExecutions$member": null + } + }, + "ListedExecutions": { + "base": null, + "refs": { + "ListExecutionsResponse$Executions": "Returns the details for each execution.
NextToken: returned from a call to several APIs, you can use pass it to a subsequent command to continue listing additional executions.
StartTime: timestamp indicating when the execution began.
Executions: details of the execution, including the execution ID, initial file location, and Service metadata.
Status: one of the following values: IN_PROGRESS
, COMPLETED
, EXCEPTION
, HANDLING_EXEPTION
.
Returns properties of a file transfer protocol-enabled server that was specified.
", "refs": { @@ -425,6 +640,30 @@ "ListUsersResponse$Users": "Returns the user accounts and their properties for the ServerId
value that you specify.
Contains the ID, text description, and Amazon Resource Name (ARN) for the workflow.
", + "refs": { + "ListedWorkflows$member": null + } + }, + "ListedWorkflows": { + "base": null, + "refs": { + "ListWorkflowsResponse$Workflows": "Returns the Arn
, WorkflowId
, and Description
for each workflow.
The name of the CloudWatch logging group for the Amazon Web Services Transfer server to which this workflow belongs.
" + } + }, + "LoggingConfiguration": { + "base": "Consists of the logging role and the log group name.
", + "refs": { + "DescribedExecution$LoggingConfiguration": "The IAM logging role associated with the execution.
" + } + }, "MapEntry": { "base": null, "refs": { @@ -441,10 +680,12 @@ "base": null, "refs": { "ListAccessesRequest$MaxResults": "Specifies the maximum number of access SIDs to return.
", + "ListExecutionsRequest$MaxResults": "Specifies the aximum number of executions to return.
", "ListSecurityPoliciesRequest$MaxResults": "Specifies the number of security policies to return as a response to the ListSecurityPolicies
query.
Specifies the number of servers to return as a response to the ListServers
query.
Specifies the number of tags to return as a response to the ListTagsForResource
request.
Specifies the number of users to return as a response to the ListUsers
request.
Specifies the number of users to return as a response to the ListUsers
request.
Specifies the maximum number of workflows to return.
" } }, "Message": { @@ -464,6 +705,8 @@ "refs": { "ListAccessesRequest$NextToken": "When you can get additional results from the ListAccesses
call, a NextToken
parameter is returned in the output. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional accesses.
When you can get additional results from the ListAccesses
call, a NextToken
parameter is returned in the output. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional accesses.
ListExecutions
returns the NextToken
parameter in the output. You can then pass the NextToken
parameter in a subsequent command to continue listing additional executions.
This is useful for pagination, for instance. If you have 100 executions for a workflow, you might only want to list first 10. If so, callthe API by specifing the max-results
:
aws transfer list-executions --max-results 10
This returns details for the first 10 executions, as well as the pointer (NextToken
) to the eleventh execution. You can now call the API again, suppling the NextToken
value you received:
aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult
This call returns the next 10 executions, the 11th through the 20th. You can then repeat the call until the details for all 100 executions have been returned.
", + "ListExecutionsResponse$NextToken": " ListExecutions
returns the NextToken
parameter in the output. You can then pass the NextToken
parameter in a subsequent command to continue listing additional executions.
When additional results are obtained from the ListSecurityPolicies
command, a NextToken
parameter is returned in the output. You can then pass the NextToken
parameter in a subsequent command to continue listing additional security policies.
When you can get additional results from the ListSecurityPolicies
operation, a NextToken
parameter is returned in the output. In a following command, you can pass in the NextToken
parameter to continue listing security policies.
When additional results are obtained from the ListServers
command, a NextToken
parameter is returned in the output. You can then pass the NextToken
parameter in a subsequent command to continue listing additional servers.
When you request additional results from the ListTagsForResource
operation, a NextToken
parameter is returned in the input. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional tags.
When you can get additional results from the ListTagsForResource
call, a NextToken
parameter is returned in the output. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional tags.
When you can get additional results from the ListUsers
call, a NextToken
parameter is returned in the output. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional users.
When you can get additional results from the ListUsers
call, a NextToken
parameter is returned in the output. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional users.
When you can get additional results from the ListUsers
call, a NextToken
parameter is returned in the output. You can then pass in a subsequent command to the NextToken
parameter to continue listing additional users.
ListWorkflows
returns the NextToken
parameter in the output. You can then pass the NextToken
parameter in a subsequent command to continue listing additional workflows.
ListWorkflows
returns the NextToken
parameter in the output. You can then pass the NextToken
parameter in a subsequent command to continue listing additional workflows.
Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in your CloudWatch logs.
" } }, + "OnUploadWorkflowDetails": { + "base": null, + "refs": { + "WorkflowDetails$OnUpload": "A trigger that starts a workflow: the workflow begins to execute after a file is uploaded.
" + } + }, + "OverwriteExisting": { + "base": null, + "refs": { + "CopyStepDetails$OverwriteExisting": "A flag that indicates whether or not to overwrite an existing file of the same name. The default is FALSE
.
Indicates passive mode, for FTP and FTPS protocols. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer. For example:
aws transfer update-server --protocol-details PassiveIp=0.0.0.0
Replace 0.0.0.0
in the example above with the actual IP address you want to use.
Indicates passive mode, for FTP and FTPS protocols. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer. For example:
aws transfer update-server --protocol-details PassiveIp=0.0.0.0
Replace 0.0.0.0
in the example above with the actual IP address you want to use.
If you change the PassiveIp
value, you must stop and then restart your Transfer server for the change to take effect. For details on using Passive IP (PASV) in a NAT environment, see Configuring your FTPS server behind a firewall or NAT with Amazon Web Services Transfer Family.
A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when domain of ServerId
is S3. Amazon EFS does not use scope-down policies.
For scope-down policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a scope-down policy, see Example scope-down policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when domain of ServerId is S3. EFS does not use scope down policy.
For scope-down policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a scope-down policy, see Example scope-down policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when domain of ServerId
is S3. Amazon EFS does not use scope down policy.
For scope-down policies, Amazon Web ServicesTransfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a scope-down policy, see Example scope-down policy.
For more information, see AssumeRole in the Amazon Web ServicesSecurity Token Service API Reference.
A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when domain of ServerId
is S3. Amazon EFS does not use scope-down policies.
For scope-down policies, Amazon Web ServicesTransfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a scope-down policy, see Creating a scope-down policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when the domain of ServerId
is S3. EFS does not use session policies.
For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a session policy, see Example session policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when the domain of ServerId
is S3. EFS does not use session policies.
For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a session policy, see Example session policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when the domain of ServerId
is S3. EFS does not use session policies.
For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a session policy, see Example session policy.
For more information, see AssumeRole in the Amazon Web ServicesSecurity Token Service API Reference.
A session policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}
, ${Transfer:HomeDirectory}
, and ${Transfer:HomeBucket}
.
This only applies when the domain of ServerId
is S3. EFS does not use session policies.
For session policies, Amazon Web Services Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy
argument.
For an example of a session policy, see Creating a session policy.
For more information, see AssumeRole in the Amazon Web Services Security Token Service API Reference.
Specifies the full POSIX identity, including user ID (Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users' access to your Amazon EFS file systems. The POSIX permissions that are set on files and directories in Amazon EFS determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.
Specifies the full POSIX identity, including user ID (Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users' access to your Amazon Elastic File System (Amazon EFS) file systems. The POSIX permissions that are set on files and directories in your file system determine the level of access your users get when transferring files into and out of your Amazon EFS file systems.
Specifies the full POSIX identity, including user ID (Uid
), group ID (Gid
), and any secondary groups IDs (SecondaryGids
), that controls your users' access to your Amazon Elastic File Systems (Amazon EFS). The POSIX permissions that are set on files and directories in your file system determines the level of access your users get when transferring files into and out of your Amazon EFS file systems.
Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in your CloudWatch logs.
", "CreateUserRequest$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
", "DescribedAccess$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
", + "DescribedExecution$ExecutionRole": "The IAM role associated with the execution.
", "DescribedServer$LoggingRole": "Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in your CloudWatch logs.
", "DescribedUser$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
", "IdentityProviderDetails$InvocationRole": "Provides the type of InvocationRole
used to authenticate the user account.
Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
", "ListedServer$LoggingRole": "Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in your CloudWatch logs.
", "ListedUser$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
The IAM role that controls your users' access to your Amazon S3 bucket for servers with Domain=S3
, or your EFS file system for servers with Domain=EFS
.
The policies attached to this role determine the level of access you want to provide your users when transferring files into and out of your S3 buckets or EFS file systems.
Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in your CloudWatch logs.
", "UpdateAccessRequest$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
", - "UpdateUserRequest$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
" + "UpdateUserRequest$Role": "Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.
", + "WorkflowDetail$ExecutionRole": "Includes the necessary permissions for S3, EFS, and Lambda operations that Transfer can assume, so that all workflow steps can operate on the required resources
" + } + }, + "S3Bucket": { + "base": null, + "refs": { + "S3FileLocation$Bucket": "Specifies the S3 bucket that contains the file being used.
", + "S3InputFileLocation$Bucket": "Specifies the S3 bucket that contains the file being copied.
" + } + }, + "S3Etag": { + "base": null, + "refs": { + "S3FileLocation$Etag": "The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object, not its metadata.
" + } + }, + "S3FileLocation": { + "base": "Specifies the details for the file location for the file being used in the workflow. Only applicable if you are using S3 storage.
You need to provide the bucket and key. The key can represent either a path or a file. This is determined by whether or not you end the key value with the forward slash (/) character. If the final character is \"/\", then your file is copied to the folder, and its name does not change. If, rather, the final character is alphanumeric, your uploaded file is renamed to the path value. In this case, if a file with that name already exists, it is overwritten.
For example, if your path is shared-files/bob/
, your uploaded files are copied to the shared-files/bob/
, folder. If your path is shared-files/today
, each uploaded file is copied to the shared-files
folder and named today
: each upload overwrites the previous version of the bob file.
Specifies the S3 details for the file being used, such as bucket, Etag, and so forth.
" + } + }, + "S3InputFileLocation": { + "base": "Specifies the details for the S3 file being copied.
", + "refs": { + "InputFileLocation$S3FileLocation": "Specifies the details for the S3 file being copied.
" + } + }, + "S3Key": { + "base": null, + "refs": { + "S3FileLocation$Key": "The name assigned to the file when it was created in S3. You use the object key to retrieve the object.
", + "S3InputFileLocation$Key": "The name assigned to the file when it was created in S3. You use the object key to retrieve the object.
" + } + }, + "S3Tag": { + "base": "Specifies the key-value pair that are assigned to a file during the execution of a Tagging step.
", + "refs": { + "S3Tags$member": null + } + }, + "S3TagKey": { + "base": null, + "refs": { + "S3Tag$Key": "The name assigned to the tag that you create.
" + } + }, + "S3TagValue": { + "base": null, + "refs": { + "S3Tag$Value": "The value that corresponds to the key.
" + } + }, + "S3Tags": { + "base": null, + "refs": { + "TagStepDetails$Tags": "Array that contains from 1 to 10 key/value pairs.
" + } + }, + "S3VersionId": { + "base": null, + "refs": { + "S3FileLocation$VersionId": "Specifies the file version.
" } }, "SecondaryGids": { @@ -641,6 +964,16 @@ "DescribedSecurityPolicy$TlsCiphers": "Specifies the enabled Transport Layer Security (TLS) cipher encryption algorithms in the security policy that is attached to the server.
" } }, + "SendWorkflowStepStateRequest": { + "base": null, + "refs": { + } + }, + "SendWorkflowStepStateResponse": { + "base": null, + "refs": { + } + }, "ServerId": { "base": null, "refs": { @@ -674,7 +1007,8 @@ "UpdateServerRequest$ServerId": "A system-assigned unique identifier for a server instance that the user account is assigned to.
", "UpdateServerResponse$ServerId": "A system-assigned unique identifier for a server that the user account is assigned to.
", "UpdateUserRequest$ServerId": "A system-assigned unique identifier for a server instance that the user account is assigned to.
", - "UpdateUserResponse$ServerId": "A system-assigned unique identifier for a server instance that the user account is assigned to.
" + "UpdateUserResponse$ServerId": "A system-assigned unique identifier for a server instance that the user account is assigned to.
", + "UserDetails$ServerId": "The system-assigned unique identifier for a Transfer server instance.
" } }, "ServiceErrorMessage": { @@ -684,11 +1018,24 @@ "ServiceUnavailableException$Message": null } }, + "ServiceMetadata": { + "base": "A container object for the session details associated with a workflow.
", + "refs": { + "DescribedExecution$ServiceMetadata": "A container object for the session details associated with a workflow.
", + "ListedExecution$ServiceMetadata": "A container object for the session details associated with a workflow.
" + } + }, "ServiceUnavailableException": { "base": "The request has failed because the Amazon Web ServicesTransfer Family service is not available.
", "refs": { } }, + "SessionId": { + "base": null, + "refs": { + "UserDetails$SessionId": "The system-assigned unique identifier for a session that corresponds to the workflow.
" + } + }, "SourceIp": { "base": null, "refs": { @@ -747,6 +1094,12 @@ "TestIdentityProviderResponse$StatusCode": "The HTTP status code that is the response from your API Gateway.
" } }, + "StepResultOutputsJson": { + "base": null, + "refs": { + "ExecutionStepResult$Outputs": "The values for the key/value pair applied as a tag to the file. Only applicable if the step type is TAG
.
Each step type has its own StepDetails
structure.
The key/value pairs used to tag a file during the execution of a workflow step.
", + "refs": { + "WorkflowStep$TagStepDetails": "Details for a step that creates one or more tags.
You specify one or more tags: each tag contains a key/value pair.
" + } + }, "TagValue": { "base": null, "refs": { @@ -799,8 +1158,10 @@ "refs": { "CreateServerRequest$Tags": "Key-value pairs that can be used to group and search for servers.
", "CreateUserRequest$Tags": "Key-value pairs that can be used to group and search for users. Tags are metadata attached to users for any purpose.
", + "CreateWorkflowRequest$Tags": "Key-value pairs that can be used to group and search for workflows. Tags are metadata attached to workflows for any purpose.
", "DescribedServer$Tags": "Specifies the key-value pairs that you can use to search for and group servers that were assigned to the server that was described.
", "DescribedUser$Tags": "Specifies the key-value pairs for the user requested. Tag can be used to search for and group users for a variety of purposes.
", + "DescribedWorkflow$Tags": "Key-value pairs that can be used to group and search for workflows. Tags are metadata attached to workflows for any purpose.
", "ListTagsForResourceResponse$Tags": "Key-value pairs that are assigned to a resource, usually for the purpose of grouping and searching for items. Tags are metadata that you define.
", "TagResourceRequest$Tags": "Key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to user accounts for any purpose.
" } @@ -869,10 +1230,16 @@ "ListedServer$UserCount": "Specifies the number of users that are assigned to a server you specified with the ServerId
.
Specifies the user name, server ID, and session ID for a workflow.
", + "refs": { + "ServiceMetadata$UserDetails": "The Server ID (ServerId
), Session ID (SessionId
) and user (UserName
) make up the UserDetails
.
A unique string that identifies a user and is associated with a as specified by the ServerId
. This user name must be a minimum of 3 and a maximum of 100 characters long. The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user name can't start with a hyphen, period, or at sign.
A unique string that identifies a user and is associated with a ServerId
. This user name must be a minimum of 3 and a maximum of 100 characters long. The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user name can't start with a hyphen, period, or at sign.
A unique string that identifies a user account associated with a server.
", "DeleteSshPublicKeyRequest$UserName": "A unique string that identifies a user whose public key is being deleted.
", "DeleteUserRequest$UserName": "A unique string that identifies a user that is being deleted from a server.
", @@ -883,7 +1250,8 @@ "ListedUser$UserName": "Specifies the name of the user whose ARN was specified. User names are used for authentication purposes.
", "TestIdentityProviderRequest$UserName": "The name of the user account to be tested.
", "UpdateUserRequest$UserName": "A unique string that identifies a user and is associated with a server as specified by the ServerId
. This user name must be a minimum of 3 and a maximum of 100 characters long. The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen '-', period '.', and at sign '@'. The user name can't start with a hyphen, period, or at sign.
The unique identifier for a user that is assigned to a server instance that was specified in the request.
" + "UpdateUserResponse$UserName": "The unique identifier for a user that is assigned to a server instance that was specified in the request.
", + "UserDetails$UserName": "A unique string that identifies a user account associated with a server.
" } }, "UserPassword": { @@ -903,6 +1271,75 @@ "refs": { "EndpointDetails$VpcId": "The VPC ID of the VPC in which a server's endpoint will be hosted.
This property can only be set when EndpointType
is set to VPC
.
A textual description for the workflow.
", + "DescribedWorkflow$Description": "Specifies the text description for the workflow.
", + "ListedWorkflow$Description": "Specifies the text description for the workflow.
" + } + }, + "WorkflowDetail": { + "base": "Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.
", + "refs": { + "OnUploadWorkflowDetails$member": null + } + }, + "WorkflowDetails": { + "base": "Container for the WorkflowDetail
data type. It is used by actions that trigger a workflow to begin execution.
Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.
", + "DescribedServer$WorkflowDetails": "Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.
", + "UpdateServerRequest$WorkflowDetails": "Specifies the workflow ID for the workflow to assign and the execution role used for executing the workflow.
" + } + }, + "WorkflowId": { + "base": null, + "refs": { + "CreateWorkflowResponse$WorkflowId": "A unique identifier for the workflow.
", + "DeleteWorkflowRequest$WorkflowId": "A unique identifier for the workflow.
", + "DescribeExecutionRequest$WorkflowId": "A unique identifier for the workflow.
", + "DescribeExecutionResponse$WorkflowId": "A unique identifier for the workflow.
", + "DescribeWorkflowRequest$WorkflowId": "A unique identifier for the workflow.
", + "DescribedWorkflow$WorkflowId": "A unique identifier for the workflow.
", + "ListExecutionsRequest$WorkflowId": "A unique identifier for the workflow.
", + "ListExecutionsResponse$WorkflowId": "A unique identifier for the workflow.
", + "ListedWorkflow$WorkflowId": "A unique identifier for the workflow.
", + "SendWorkflowStepStateRequest$WorkflowId": "A unique identifier for the workflow.
", + "WorkflowDetail$WorkflowId": "A unique identifier for the workflow.
" + } + }, + "WorkflowStep": { + "base": "The basic building block of a workflow.
", + "refs": { + "WorkflowSteps$member": null + } + }, + "WorkflowStepName": { + "base": null, + "refs": { + "CopyStepDetails$Name": "The name of the step, used as an identifier.
", + "CustomStepDetails$Name": "The name of the step, used as an identifier.
", + "DeleteStepDetails$Name": "The name of the step, used as an identifier.
", + "TagStepDetails$Name": "The name of the step, used as an identifier.
" + } + }, + "WorkflowStepType": { + "base": null, + "refs": { + "ExecutionStepResult$StepType": "One of the available step types.
Copy: copy the file to another location
Custom: custom step with a lambda target
Delete: delete the file
Tag: add a tag to the file
Currently, the following step types are supported.
Copy: copy the file to another location
Custom: custom step with a lambda target
Delete: delete the file
Tag: add a tag to the file
Specifies the details for the steps that are in the specified workflow.
The TYPE
specifies which of the following actions is being taken for this step.
Copy: copy the file to another location
Custom: custom step with a lambda target
Delete: delete the file
Tag: add a tag to the file
For file location, you specify either the S3 bucket and key, or the EFS filesystem ID and path.
", + "CreateWorkflowRequest$OnExceptionSteps": "Specifies the steps (actions) to take if any errors are encountered during execution of the workflow.
", + "DescribedWorkflow$Steps": "Specifies the details for the steps that are in the specified workflow.
", + "DescribedWorkflow$OnExceptionSteps": "Specifies the steps (actions) to take if any errors are encountered during execution of the workflow.
" + } } } } diff --git a/models/apis/transfer/2018-11-05/paginators-1.json b/models/apis/transfer/2018-11-05/paginators-1.json index 06eb326bacc..c839e62e986 100644 --- a/models/apis/transfer/2018-11-05/paginators-1.json +++ b/models/apis/transfer/2018-11-05/paginators-1.json @@ -5,6 +5,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListExecutions": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListSecurityPolicies": { "input_token": "NextToken", "output_token": "NextToken", @@ -24,6 +29,11 @@ "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults" + }, + "ListWorkflows": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" } } } diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index cb4ad746417..560a972b4b9 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -251,11 +251,17 @@ "airflow" : { "endpoints" : { "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, "us-west-2" : { } @@ -1063,9 +1069,11 @@ }, "cloud9" : { "endpoints" : { + "af-south-1" : { }, "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, @@ -5107,6 +5115,7 @@ }, "polly" : { "endpoints" : { + "af-south-1" : { }, "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, @@ -5634,6 +5643,7 @@ "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, diff --git a/service/accessanalyzer/api.go b/service/accessanalyzer/api.go index 35ae2424e4e..ef8ca9bcc0b 100644 --- a/service/accessanalyzer/api.go +++ b/service/accessanalyzer/api.go @@ -239,8 +239,8 @@ func (c *AccessAnalyzer) CreateAccessPreviewRequest(input *CreateAccessPreviewIn // CreateAccessPreview API operation for Access Analyzer. // -// Creates an access preview that allows you to preview Access Analyzer findings -// for your resource before deploying resource permissions. +// Creates an access preview that allows you to preview IAM Access Analyzer +// findings for your resource before deploying resource permissions. // // 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 @@ -437,7 +437,7 @@ func (c *AccessAnalyzer) CreateArchiveRuleRequest(input *CreateArchiveRuleInput) // rule. // // To learn about filter keys that you can use to create an archive rule, see -// Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) +// IAM Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -536,7 +536,7 @@ func (c *AccessAnalyzer) DeleteAnalyzerRequest(input *DeleteAnalyzerInput) (req // DeleteAnalyzer API operation for Access Analyzer. // -// Deletes the specified analyzer. When you delete an analyzer, Access Analyzer +// Deletes the specified analyzer. When you delete an analyzer, IAM Access Analyzer // is disabled for the account or organization in the current or specific Region. // All findings that were generated by the analyzer are deleted. You cannot // undo this action. @@ -998,7 +998,7 @@ func (c *AccessAnalyzer) GetArchiveRuleRequest(input *GetArchiveRuleInput) (req // Retrieves information about an archive rule. // // To learn about filter keys that you can use to create an archive rule, see -// Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) +// IAM Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2022,7 +2022,7 @@ func (c *AccessAnalyzer) ListFindingsRequest(input *ListFindingsInput) (req *req // Retrieves a list of findings generated by the specified analyzer. // // To learn about filter keys that you can use to retrieve a list of findings, -// see Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) +// see IAM Access Analyzer filter keys (https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3217,7 +3217,7 @@ type AccessPreviewFinding struct { Action []*string `locationName:"action" type:"list"` // Provides context on how the access preview finding compares to existing access - // identified in Access Analyzer. + // identified in IAM Access Analyzer. // // * New - The finding is for newly-introduced access. // @@ -3245,8 +3245,8 @@ type AccessPreviewFinding struct { // An error. Error *string `locationName:"error" type:"string"` - // The existing ID of the finding in Access Analyzer, provided only for existing - // findings. + // The existing ID of the finding in IAM Access Analyzer, provided only for + // existing findings. ExistingFindingId *string `locationName:"existingFindingId" type:"string"` // The existing status of the finding, provided only for existing findings. @@ -3270,8 +3270,9 @@ type AccessPreviewFinding struct { // associated with the access preview. Resource *string `locationName:"resource" type:"string"` - // The AWS account ID that owns the resource. For most AWS resources, the owning - // account is the account in which the resource was created. + // The Amazon Web Services account ID that owns the resource. For most Amazon + // Web Services resources, the owning account is the account in which the resource + // was created. // // ResourceOwnerAccount is a required field ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` @@ -3508,7 +3509,7 @@ func (s *AccessPreviewSummary) SetStatusReason(v *AccessPreviewStatusReason) *Ac type AclGrantee struct { _ struct{} `type:"structure"` - // The value specified is the canonical user ID of an AWS account. + // The value specified is the canonical user ID of an Amazon Web Services account. Id *string `locationName:"id" type:"string"` // Used for granting permissions to a predefined group. @@ -3569,7 +3570,7 @@ type AnalyzedResource struct { // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` - // The AWS account ID that owns the resource. + // The Amazon Web Services account ID that owns the resource. // // ResourceOwnerAccount is a required field ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` @@ -3677,7 +3678,7 @@ type AnalyzedResourceSummary struct { // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` - // The AWS account ID that owns the resource. + // The Amazon Web Services account ID that owns the resource. // // ResourceOwnerAccount is a required field ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` @@ -3743,10 +3744,10 @@ type AnalyzerSummary struct { // The status of the analyzer. An Active analyzer successfully monitors supported // resources and generates new findings. The analyzer is Disabled when a user - // action, such as removing trusted access for AWS IAM Access Analyzer from - // AWS Organizations, causes the analyzer to stop generating new findings. The - // status is Creating when the analyzer creation is in progress and Failed when - // the analyzer creation has failed. + // action, such as removing trusted access for Identity and Access Management + // Access Analyzer from Organizations, causes the analyzer to stop generating + // new findings. The status is Creating when the analyzer creation is in progress + // and Failed when the analyzer creation has failed. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"AnalyzerStatus"` @@ -3755,7 +3756,7 @@ type AnalyzerSummary struct { // For example, if the creation for the analyzer fails, a Failed status is returned. // For an analyzer with organization as the type, this failure can be due to // an issue with creating the service-linked roles required in the member accounts - // of the AWS organization. + // of the Amazon Web Services organization. StatusReason *StatusReason `locationName:"statusReason" type:"structure"` // The tags added to the analyzer. @@ -4031,19 +4032,19 @@ func (s CancelPolicyGenerationOutput) GoString() string { type CloudTrailDetails struct { _ struct{} `type:"structure"` - // The ARN of the service role that Access Analyzer uses to access your CloudTrail - // trail and service last accessed information. + // The ARN of the service role that IAM Access Analyzer uses to access your + // CloudTrail trail and service last accessed information. // // AccessRole is a required field AccessRole *string `locationName:"accessRole" type:"string" required:"true"` - // The end of the time range for which Access Analyzer reviews your CloudTrail + // The end of the time range for which IAM Access Analyzer reviews your CloudTrail // events. Events with a timestamp after this time are not considered to generate // a policy. If this is not included in the request, the default value is the // current time. EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` - // The start of the time range for which Access Analyzer reviews your CloudTrail + // The start of the time range for which IAM Access Analyzer reviews your CloudTrail // events. Events with a timestamp before this time are not considered to generate // a policy. // @@ -4123,7 +4124,7 @@ func (s *CloudTrailDetails) SetTrails(v []*Trail) *CloudTrailDetails { type CloudTrailProperties struct { _ struct{} `type:"structure"` - // The end of the time range for which Access Analyzer reviews your CloudTrail + // The end of the time range for which IAM Access Analyzer reviews your CloudTrail // events. Events with a timestamp after this time are not considered to generate // a policy. If this is not included in the request, the default value is the // current time. @@ -4131,7 +4132,7 @@ type CloudTrailProperties struct { // EndTime is a required field EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` - // The start of the time range for which Access Analyzer reviews your CloudTrail + // The start of the time range for which IAM Access Analyzer reviews your CloudTrail // events. Events with a timestamp before this time are not considered to generate // a policy. // @@ -4190,7 +4191,7 @@ type Configuration struct { // The access control configuration is for a Secrets Manager secret. SecretsManagerSecret *SecretsManagerSecretConfiguration `locationName:"secretsManagerSecret" type:"structure"` - // The access control configuration is for an SQS queue. + // The access control configuration is for an Amazon SQS queue. SqsQueue *SqsQueueConfiguration `locationName:"sqsQueue" type:"structure"` } @@ -4905,7 +4906,7 @@ type Finding struct { // The resource that an external principal has access to. Resource *string `locationName:"resource" type:"string"` - // The AWS account ID that owns the resource. + // The Amazon Web Services account ID that owns the resource. // // ResourceOwnerAccount is a required field ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` @@ -5066,7 +5067,8 @@ func (s *FindingSource) SetType(v string) *FindingSource { type FindingSourceDetail struct { _ struct{} `type:"structure"` - // The ARN of the access point that generated the finding. + // The ARN of the access point that generated the finding. The ARN format depends + // on whether the ARN represents an access point or a multi-region access point. AccessPointArn *string `locationName:"accessPointArn" type:"string"` } @@ -5128,7 +5130,7 @@ type FindingSummary struct { // The resource that the external principal has access to. Resource *string `locationName:"resource" type:"string"` - // The AWS account ID that owns the resource. + // The Amazon Web Services account ID that owns the resource. // // ResourceOwnerAccount is a required field ResourceOwnerAccount *string `locationName:"resourceOwnerAccount" type:"string" required:"true"` @@ -5283,8 +5285,8 @@ type GeneratedPolicyProperties struct { CloudTrailProperties *CloudTrailProperties `locationName:"cloudTrailProperties" type:"structure"` // This value is set to true if the generated policy contains all possible actions - // for a service that Access Analyzer identified from the CloudTrail trail that - // you specified, and false otherwise. + // for a service that IAM Access Analyzer identified from the CloudTrail trail + // that you specified, and false otherwise. IsComplete *bool `locationName:"isComplete" type:"boolean"` // The ARN of the IAM entity (user or role) for which you are generating a policy. @@ -5498,7 +5500,7 @@ func (s *GetAnalyzedResourceInput) SetResourceArn(v string) *GetAnalyzedResource type GetAnalyzedResourceOutput struct { _ struct{} `type:"structure"` - // An AnalyzedResource object that contains information that Access Analyzer + // An AnalyzedResource object that contains information that IAM Access Analyzer // found when it analyzed the resource. Resource *AnalyzedResource `locationName:"resource" type:"structure"` } @@ -5767,8 +5769,8 @@ type GetGeneratedPolicyInput struct { // The level of detail that you want to generate. You can specify whether to // generate service-level policies. // - // Access Analyzer uses iam:servicelastaccessed to identify services that have - // been used recently to create this service-level template. + // IAM Access Analyzer uses iam:servicelastaccessed to identify services that + // have been used recently to create this service-level template. IncludeServiceLevelTemplate *bool `location:"querystring" locationName:"includeServiceLevelTemplate" type:"boolean"` // The JobId that is returned by the StartPolicyGeneration operation. The JobId @@ -6018,7 +6020,8 @@ func (s *InternalServerException) RequestID() string { return s.RespMetadata.RequestID } -// This configuration sets the Amazon S3 access point network origin to Internet. +// This configuration sets the network origin for the Amazon S3 access point +// or multi-region access point to Internet. type InternetConfiguration struct { _ struct{} `type:"structure"` } @@ -6040,7 +6043,7 @@ type JobDetails struct { // A timestamp of when the job was completed. CompletedOn *time.Time `locationName:"completedOn" type:"timestamp" timestampFormat:"iso8601"` - // Contains the details about the policy generation error. + // The job error for the policy generation request. JobError *JobError `locationName:"jobError" type:"structure"` // The JobId that is returned by the StartPolicyGeneration operation. The JobId @@ -6155,8 +6158,9 @@ type KmsGrantConfiguration struct { // GranteePrincipal is a required field GranteePrincipal *string `locationName:"granteePrincipal" type:"string" required:"true"` - // The AWS account under which the grant was issued. The account is used to - // propose KMS grants issued by accounts other than the owner of the key. + // The Amazon Web Services account under which the grant was issued. The account + // is used to propose KMS grants issued by accounts other than the owner of + // the key. // // IssuingAccount is a required field IssuingAccount *string `locationName:"issuingAccount" type:"string" required:"true"` @@ -7150,19 +7154,21 @@ func (s *Location) SetSpan(v *Span) *Location { } // The proposed InternetConfiguration or VpcConfiguration to apply to the Amazon -// S3 Access point. You can make the access point accessible from the internet, -// or you can specify that all requests made through that access point must -// originate from a specific virtual private cloud (VPC). You can specify only -// one type of network configuration. For more information, see Creating access -// points (https://docs.aws.amazon.com/AmazonS3/latest/dev/creating-access-points.html). +// S3 access point. VpcConfiguration does not apply to multi-region access points. +// You can make the access point accessible from the internet, or you can specify +// that all requests made through that access point must originate from a specific +// virtual private cloud (VPC). You can specify only one type of network configuration. +// For more information, see Creating access points (https://docs.aws.amazon.com/AmazonS3/latest/dev/creating-access-points.html). type NetworkOriginConfiguration struct { _ struct{} `type:"structure"` - // The configuration for the Amazon S3 access point with an Internet origin. + // The configuration for the Amazon S3 access point or multi-region access point + // with an Internet origin. InternetConfiguration *InternetConfiguration `locationName:"internetConfiguration" type:"structure"` // The proposed virtual private cloud (VPC) configuration for the Amazon S3 - // access point. For more information, see VpcConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_VpcConfiguration.html). + // access point. VPC configuration does not apply to multi-region access points. + // For more information, see VpcConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_VpcConfiguration.html). VpcConfiguration *VpcConfiguration `locationName:"vpcConfiguration" type:"structure"` } @@ -7478,29 +7484,31 @@ func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } -// The configuration for an Amazon S3 access point for the bucket. You can propose -// up to 10 access points per bucket. If the proposed Amazon S3 access point -// configuration is for an existing bucket, the access preview uses the proposed -// access point configuration in place of the existing access points. To propose -// an access point without a policy, you can provide an empty string as the -// access point policy. For more information, see Creating access points (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonS3/latest/dev/creating-access-points.html). +// The configuration for an Amazon S3 access point or multi-region access point +// for the bucket. You can propose up to 10 access points or multi-region access +// points per bucket. If the proposed Amazon S3 access point configuration is +// for an existing bucket, the access preview uses the proposed access point +// configuration in place of the existing access points. To propose an access +// point without a policy, you can provide an empty string as the access point +// policy. For more information, see Creating access points (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonS3/latest/dev/creating-access-points.html). // For more information about access point policy limits, see Access points // restrictions and limitations (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points-restrictions-limitations.html). type S3AccessPointConfiguration struct { _ struct{} `type:"structure"` - // The access point policy. + // The access point or multi-region access point policy. AccessPointPolicy *string `locationName:"accessPointPolicy" type:"string"` // The proposed Internet and VpcConfiguration to apply to this Amazon S3 access - // point. If the access preview is for a new resource and neither is specified, - // the access preview uses Internet for the network origin. If the access preview - // is for an existing resource and neither is specified, the access preview - // uses the exiting network origin. + // point. VpcConfiguration does not apply to multi-region access points. If + // the access preview is for a new resource and neither is specified, the access + // preview uses Internet for the network origin. If the access preview is for + // an existing resource and neither is specified, the access preview uses the + // exiting network origin. NetworkOrigin *NetworkOriginConfiguration `locationName:"networkOrigin" type:"structure"` // The proposed S3PublicAccessBlock configuration to apply to this Amazon S3 - // Access Point. + // access point or multi-region access point. PublicAccessBlock *S3PublicAccessBlockConfiguration `locationName:"publicAccessBlock" type:"structure"` } @@ -7609,18 +7617,19 @@ func (s *S3BucketAclGrantConfiguration) SetPermission(v string) *S3BucketAclGran // Proposed access control configuration for an Amazon S3 bucket. You can propose // a configuration for a new Amazon S3 bucket or an existing Amazon S3 bucket // that you own by specifying the Amazon S3 bucket policy, bucket ACLs, bucket -// BPA settings, and Amazon S3 access points attached to the bucket. If the -// configuration is for an existing Amazon S3 bucket and you do not specify -// the Amazon S3 bucket policy, the access preview uses the existing policy -// attached to the bucket. If the access preview is for a new resource and you -// do not specify the Amazon S3 bucket policy, the access preview assumes a -// bucket without a policy. To propose deletion of an existing bucket policy, -// you can specify an empty string. For more information about bucket policy -// limits, see Bucket Policy Examples (https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html). +// BPA settings, Amazon S3 access points, and multi-region access points attached +// to the bucket. If the configuration is for an existing Amazon S3 bucket and +// you do not specify the Amazon S3 bucket policy, the access preview uses the +// existing policy attached to the bucket. If the access preview is for a new +// resource and you do not specify the Amazon S3 bucket policy, the access preview +// assumes a bucket without a policy. To propose deletion of an existing bucket +// policy, you can specify an empty string. For more information about bucket +// policy limits, see Bucket Policy Examples (https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html). type S3BucketConfiguration struct { _ struct{} `type:"structure"` - // The configuration of Amazon S3 access points for the bucket. + // The configuration of Amazon S3 access points or multi-region access points + // for the bucket. You can propose up to 10 new access points per bucket. AccessPoints map[string]*S3AccessPointConfiguration `locationName:"accessPoints" type:"map"` // The proposed list of ACL grants for the Amazon S3 bucket. You can propose @@ -7711,9 +7720,9 @@ func (s *S3BucketConfiguration) SetBucketPublicAccessBlock(v *S3PublicAccessBloc // is not specified, the access preview uses the existing setting. If the proposed // configuration is for a new bucket and the configuration is not specified, // the access preview uses false. If the proposed configuration is for a new -// access point and the access point BPA configuration is not specified, the -// access preview uses true. For more information, see PublicAccessBlockConfiguration -// (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html). +// access point or multi-region access point and the access point BPA configuration +// is not specified, the access preview uses true. For more information, see +// PublicAccessBlockConfiguration (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html). type S3PublicAccessBlockConfiguration struct { _ struct{} `type:"structure"` @@ -7779,14 +7788,14 @@ func (s *S3PublicAccessBlockConfiguration) SetRestrictPublicBuckets(v bool) *S3P // the access preview assumes a secret without a policy. To propose deletion // of an existing policy, you can specify an empty string. If the proposed configuration // is for a new secret and you do not specify the KMS key ID, the access preview -// uses the default CMK of the AWS account. If you specify an empty string for -// the KMS key ID, the access preview uses the default CMK of the AWS account. -// For more information about secret policy limits, see Quotas for AWS Secrets -// Manager. (https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_limits.html). +// uses the default CMK of the Amazon Web Services account. If you specify an +// empty string for the KMS key ID, the access preview uses the default CMK +// of the Amazon Web Services account. For more information about secret policy +// limits, see Quotas for Secrets Manager. (https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_limits.html). type SecretsManagerSecretConfiguration struct { _ struct{} `type:"structure"` - // The proposed ARN, key ID, or alias of the AWS KMS customer master key (CMK). + // The proposed ARN, key ID, or alias of the KMS customer master key (CMK). KmsKeyId *string `locationName:"kmsKeyId" type:"string"` // The proposed resource policy defining who can access or manage the secret. @@ -7952,19 +7961,20 @@ func (s *Span) SetStart(v *Position) *Span { return s } -// The proposed access control configuration for an SQS queue. You can propose -// a configuration for a new SQS queue or an existing SQS queue that you own -// by specifying the SQS policy. If the configuration is for an existing SQS -// queue and you do not specify the SQS policy, the access preview uses the -// existing SQS policy for the queue. If the access preview is for a new resource -// and you do not specify the policy, the access preview assumes an SQS queue -// without a policy. To propose deletion of an existing SQS queue policy, you -// can specify an empty string for the SQS policy. For more information about -// SQS policy limits, see Quotas related to policies (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-policies.html). +// The proposed access control configuration for an Amazon SQS queue. You can +// propose a configuration for a new Amazon SQS queue or an existing Amazon +// SQS queue that you own by specifying the Amazon SQS policy. If the configuration +// is for an existing Amazon SQS queue and you do not specify the Amazon SQS +// policy, the access preview uses the existing Amazon SQS policy for the queue. +// If the access preview is for a new resource and you do not specify the policy, +// the access preview assumes an Amazon SQS queue without a policy. To propose +// deletion of an existing Amazon SQS queue policy, you can specify an empty +// string for the Amazon SQS policy. For more information about Amazon SQS policy +// limits, see Quotas related to policies (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-policies.html). type SqsQueueConfiguration struct { _ struct{} `type:"structure"` - // The proposed resource policy for the SQS queue. + // The proposed resource policy for the Amazon SQS queue. QueuePolicy *string `locationName:"queuePolicy" type:"string"` } @@ -7994,7 +8004,7 @@ type StartPolicyGenerationInput struct { // the original successful request and they have no additional effect. // // If you do not specify a client token, one is automatically generated by the - // AWS SDK. + // Amazon Web Services SDK. ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` // A CloudTrailDetails object that contains details about a Trail that you want @@ -8158,7 +8168,7 @@ func (s StartResourceScanOutput) GoString() string { // if the creation for the analyzer fails, a Failed status is returned. For // an analyzer with organization as the type, this failure can be due to an // issue with creating the service-linked roles required in the member accounts -// of the AWS organization. +// of the Amazon Web Services organization. type StatusReason struct { _ struct{} `type:"structure"` @@ -8356,7 +8366,7 @@ func (s *ThrottlingException) RequestID() string { type Trail struct { _ struct{} `type:"structure"` - // Possible values are true or false. If set to true, Access Analyzer retrieves + // Possible values are true or false. If set to true, IAM Access Analyzer retrieves // CloudTrail data from all regions to analyze and generate a policy. AllRegions *bool `locationName:"allRegions" type:"boolean"` @@ -8415,7 +8425,7 @@ func (s *Trail) SetRegions(v []*string) *Trail { type TrailProperties struct { _ struct{} `type:"structure"` - // Possible values are true or false. If set to true, Access Analyzer retrieves + // Possible values are true or false. If set to true, IAM Access Analyzer retrieves // CloudTrail data from all regions to analyze and generate a policy. AllRegions *bool `locationName:"allRegions" type:"boolean"` @@ -8835,13 +8845,13 @@ type ValidatePolicyInput struct { // The type of policy to validate. Identity policies grant permissions to IAM // principals. Identity policies include managed and inline policies for IAM // roles, users, and groups. They also include service-control policies (SCPs) - // that are attached to an AWS organization, organizational unit (OU), or an - // account. + // that are attached to an Amazon Web Services organization, organizational + // unit (OU), or an account. // - // Resource policies grant permissions on AWS resources. Resource policies include - // trust policies for IAM roles and bucket policies for S3 buckets. You can - // provide a generic input such as identity policy or resource policy or a specific - // input such as managed policy or S3 bucket policy. + // Resource policies grant permissions on Amazon Web Services resources. Resource + // policies include trust policies for IAM roles and bucket policies for Amazon + // S3 buckets. You can provide a generic input such as identity policy or resource + // policy or a specific input such as managed policy or Amazon S3 bucket policy. // // PolicyType is a required field PolicyType *string `locationName:"policyType" type:"string" required:"true" enum:"PolicyType"` @@ -8906,8 +8916,8 @@ func (s *ValidatePolicyInput) SetPolicyType(v string) *ValidatePolicyInput { type ValidatePolicyOutput struct { _ struct{} `type:"structure"` - // The list of findings in a policy returned by Access Analyzer based on its - // suite of policy checks. + // The list of findings in a policy returned by IAM Access Analyzer based on + // its suite of policy checks. // // Findings is a required field Findings []*ValidatePolicyFinding `locationName:"findings" type:"list" required:"true"` @@ -9040,7 +9050,8 @@ func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { } // The proposed virtual private cloud (VPC) configuration for the Amazon S3 -// access point. For more information, see VpcConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_VpcConfiguration.html). +// access point. VPC configuration does not apply to multi-region access points. +// For more information, see VpcConfiguration (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_VpcConfiguration.html). type VpcConfiguration struct { _ struct{} `type:"structure"` diff --git a/service/accessanalyzer/doc.go b/service/accessanalyzer/doc.go index fc31a492d56..d38117ef832 100644 --- a/service/accessanalyzer/doc.go +++ b/service/accessanalyzer/doc.go @@ -3,19 +3,20 @@ // Package accessanalyzer provides the client and types for making API // requests to Access Analyzer. // -// AWS IAM Access Analyzer helps identify potential resource-access risks by -// enabling you to identify any policies that grant access to an external principal. -// It does this by using logic-based reasoning to analyze resource-based policies -// in your AWS environment. An external principal can be another AWS account, -// a root user, an IAM user or role, a federated user, an AWS service, or an -// anonymous user. You can also use Access Analyzer to preview and validate -// public and cross-account access to your resources before deploying permissions -// changes. This guide describes the AWS IAM Access Analyzer operations that -// you can call programmatically. For general information about Access Analyzer, -// see AWS IAM Access Analyzer (https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) +// Identity and Access Management Access Analyzer helps identify potential resource-access +// risks by enabling you to identify any policies that grant access to an external +// principal. It does this by using logic-based reasoning to analyze resource-based +// policies in your Amazon Web Services environment. An external principal can +// be another Amazon Web Services account, a root user, an IAM user or role, +// a federated user, an Amazon Web Services service, or an anonymous user. You +// can also use IAM Access Analyzer to preview and validate public and cross-account +// access to your resources before deploying permissions changes. This guide +// describes the Identity and Access Management Access Analyzer operations that +// you can call programmatically. For general information about IAM Access Analyzer, +// see Identity and Access Management Access Analyzer (https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) // in the IAM User Guide. // -// To start using Access Analyzer, you first need to create an analyzer. +// To start using IAM Access Analyzer, you first need to create an analyzer. // // See https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01 for more information on this service. // diff --git a/service/acmpca/api.go b/service/acmpca/api.go index f7841b3a6a2..788cc7041a8 100644 --- a/service/acmpca/api.go +++ b/service/acmpca/api.go @@ -58,15 +58,17 @@ func (c *ACMPCA) CreateCertificateAuthorityRequest(input *CreateCertificateAutho // CreateCertificateAuthority API operation for AWS Certificate Manager Private Certificate Authority. // // Creates a root or subordinate private certificate authority (CA). You must -// specify the CA configuration, the certificate revocation list (CRL) configuration, -// the CA type, and an optional idempotency token to avoid accidental creation -// of multiple CAs. The CA configuration specifies the name of the algorithm -// and key size to be used to create the CA private key, the type of signing -// algorithm that the CA uses, and X.500 subject information. The CRL configuration -// specifies the CRL expiration period in days (the validity period of the CRL), -// the Amazon S3 bucket that will contain the CRL, and a CNAME alias for the -// S3 bucket that is included in certificates issued by the CA. If successful, -// this action returns the Amazon Resource Name (ARN) of the CA. +// specify the CA configuration, an optional configuration for Online Certificate +// Status Protocol (OCSP) and/or a certificate revocation list (CRL), the CA +// type, and an optional idempotency token to avoid accidental creation of multiple +// CAs. The CA configuration specifies the name of the algorithm and key size +// to be used to create the CA private key, the type of signing algorithm that +// the CA uses, and X.500 subject information. The OCSP configuration can optionally +// specify a custom URL for the OCSP responder. The CRL configuration specifies +// the CRL expiration period in days (the validity period of the CRL), the Amazon +// S3 bucket that will contain the CRL, and a CNAME alias for the S3 bucket +// that is included in certificates issued by the CA. If successful, this action +// returns the Amazon Resource Name (ARN) of the CA. // // ACM Private CA assets that are stored in Amazon S3 can be protected with // encryption. For more information, see Encrypting Your CRLs (https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaCreateCa.html#crl-encryption). @@ -3117,8 +3119,9 @@ type CertificateAuthority struct { // action. RestorableUntil *time.Time `type:"timestamp"` - // Information about the certificate revocation list (CRL) created and maintained - // by your private CA. + // Information about the Online Certificate Status Protocol (OCSP) configuration + // or certificate revocation list (CRL) created and maintained by your private + // CA. RevocationConfiguration *RevocationConfiguration `type:"structure"` // Serial number of your private CA. @@ -3578,12 +3581,12 @@ type CreateCertificateAuthorityInput struct { // be created in this region with the specified security standard." KeyStorageSecurityStandard *string `type:"string" enum:"KeyStorageSecurityStandard"` - // Contains a Boolean value that you can use to enable a certification revocation - // list (CRL) for the CA, the name of the S3 bucket to which ACM Private CA - // will write the CRL, and an optional CNAME alias that you can use to hide - // the name of your bucket in the CRL Distribution Points extension of your - // CA certificate. For more information, see the CrlConfiguration (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_CrlConfiguration.html) - // structure. + // Contains information to enable Online Certificate Status Protocol (OCSP) + // support, to enable a certificate revocation list (CRL), to enable both, or + // to enable neither. The default is for both certificate validation mechanisms + // to be disabled. For more information, see the OcspConfiguration (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_OcspConfiguration.html) + // and CrlConfiguration (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_CrlConfiguration.html) + // types. RevocationConfiguration *RevocationConfiguration `type:"structure"` // Key-value pairs that will be attached to the new private CA. You can associate @@ -3830,6 +3833,10 @@ func (s CreatePermissionOutput) GoString() string { // Only time valid certificates are listed in the CRL. Expired certificates // are not included. // +// A CRL is typically updated approximately 30 minutes after a certificate is +// revoked. If for any reason a CRL update fails, ACM Private CA makes further +// attempts every 15 minutes. +// // CRLs contain the following fields: // // * Version: The current version number defined in RFC 5280 is V2. The integer @@ -3863,6 +3870,9 @@ func (s CreatePermissionOutput) GoString() string { // can use the following OpenSSL command to list a CRL. // // openssl crl -inform DER -text -in crl_path -noout +// +// For more information, see Planning a certificate revocation list (CRL) (https://docs.aws.amazon.com/acm-pca/latest/userguide/crl-planning.html) +// in the AWS Certificate Manager Private Certificate Authority (PCA) User Guide type CrlConfiguration struct { _ struct{} `type:"structure"` @@ -3888,7 +3898,7 @@ type CrlConfiguration struct { // for the CustomCname argument, the name of your S3 bucket is placed into the // CRL Distribution Points extension of the issued certificate. You can change // the name of your bucket by calling the UpdateCertificateAuthority (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_UpdateCertificateAuthority.html) - // action. You must specify a bucket policy (https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaCreateCa.html#s3-policies) + // operation. You must specify a bucket policy (https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaCreateCa.html#s3-policies) // that allows ACM Private CA to write the CRL to your bucket. S3BucketName *string `min:"3" type:"string"` @@ -6412,6 +6422,69 @@ func (s *MalformedCertificateException) RequestID() string { return s.RespMetadata.RequestID } +// Contains information to enable and configure Online Certificate Status Protocol +// (OCSP) for validating certificate revocation status. +// +// When you revoke a certificate, OCSP responses may take up to 60 minutes to +// reflect the new status. +type OcspConfiguration struct { + _ struct{} `type:"structure"` + + // Flag enabling use of the Online Certificate Status Protocol (OCSP) for validating + // certificate revocation status. + // + // Enabled is a required field + Enabled *bool `type:"boolean" required:"true"` + + // By default, ACM Private CA injects an AWS domain into certificates being + // validated by the Online Certificate Status Protocol (OCSP). A customer can + // alternatively use this object to define a CNAME specifying a customized OCSP + // domain. + // + // Note: The value of the CNAME must not include a protocol prefix such as "http://" + // or "https://". + // + // For more information, see Customizing Online Certificate Status Protocol + // (OCSP) (https://docs.aws.amazon.com/acm-pca/latest/userguide/ocsp-customize.html) + // in the AWS Certificate Manager Private Certificate Authority (PCA) User Guide. + OcspCustomCname *string `type:"string"` +} + +// String returns the string representation +func (s OcspConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OcspConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OcspConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OcspConfiguration"} + if s.Enabled == nil { + invalidParams.Add(request.NewErrParamRequired("Enabled")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabled sets the Enabled field's value. +func (s *OcspConfiguration) SetEnabled(v bool) *OcspConfiguration { + s.Enabled = &v + return s +} + +// SetOcspCustomCname sets the OcspCustomCname field's value. +func (s *OcspConfiguration) SetOcspCustomCname(v string) *OcspConfiguration { + s.OcspCustomCname = &v + return s +} + // Defines a custom ASN.1 X.400 GeneralName using an object identifier (OID) // and value. The OID must satisfy the regular expression shown below. For more // information, see NIST's definition of Object Identifier (OID) (https://csrc.nist.gov/glossary/term/Object_Identifier). @@ -7133,15 +7206,26 @@ func (s RestoreCertificateAuthorityOutput) GoString() string { // Certificate revocation information used by the CreateCertificateAuthority // (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_CreateCertificateAuthority.html) // and UpdateCertificateAuthority (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_UpdateCertificateAuthority.html) -// actions. Your private certificate authority (CA) can create and maintain -// a certificate revocation list (CRL). A CRL contains information about certificates -// revoked by your CA. For more information, see RevokeCertificate (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_RevokeCertificate.html). +// actions. Your private certificate authority (CA) can configure Online Certificate +// Status Protocol (OCSP) support and/or maintain a certificate revocation list +// (CRL). OCSP returns validation information about certificates as requested +// by clients, and a CRL contains an updated list of certificates revoked by +// your CA. For more information, see RevokeCertificate (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_RevokeCertificate.html) +// and Setting up a certificate revocation method (https://docs.aws.amazon.com/acm-pca/latest/userguide/revocation-setup.html) +// in the AWS Certificate Manager Private Certificate Authority (PCA) User Guide. type RevocationConfiguration struct { _ struct{} `type:"structure"` // Configuration of the certificate revocation list (CRL), if any, maintained - // by your private CA. + // by your private CA. A CRL is typically updated approximately 30 minutes after + // a certificate is revoked. If for any reason a CRL update fails, ACM Private + // CA makes further attempts every 15 minutes. CrlConfiguration *CrlConfiguration `type:"structure"` + + // Configuration of Online Certificate Status Protocol (OCSP) support, if any, + // maintained by your private CA. When you revoke a certificate, OCSP responses + // may take up to 60 minutes to reflect the new status. + OcspConfiguration *OcspConfiguration `type:"structure"` } // String returns the string representation @@ -7162,6 +7246,11 @@ func (s *RevocationConfiguration) Validate() error { invalidParams.AddNested("CrlConfiguration", err.(request.ErrInvalidParams)) } } + if s.OcspConfiguration != nil { + if err := s.OcspConfiguration.Validate(); err != nil { + invalidParams.AddNested("OcspConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -7175,6 +7264,12 @@ func (s *RevocationConfiguration) SetCrlConfiguration(v *CrlConfiguration) *Revo return s } +// SetOcspConfiguration sets the OcspConfiguration field's value. +func (s *RevocationConfiguration) SetOcspConfiguration(v *OcspConfiguration) *RevocationConfiguration { + s.OcspConfiguration = v + return s +} + type RevokeCertificateInput struct { _ struct{} `type:"structure"` @@ -7568,7 +7663,12 @@ type UpdateCertificateAuthorityInput struct { // CertificateAuthorityArn is a required field CertificateAuthorityArn *string `min:"5" type:"string" required:"true"` - // Revocation information for your private CA. + // Contains information to enable Online Certificate Status Protocol (OCSP) + // support, to enable a certificate revocation list (CRL), to enable both, or + // to enable neither. If this parameter is not supplied, existing capibilites + // remain unchanged. For more information, see the OcspConfiguration (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_OcspConfiguration.html) + // and CrlConfiguration (https://docs.aws.amazon.com/acm-pca/latest/APIReference/API_CrlConfiguration.html) + // types. RevocationConfiguration *RevocationConfiguration `type:"structure"` // Status of your private CA. diff --git a/service/acmpca/doc.go b/service/acmpca/doc.go index 99e3fd918ca..0291defe5e0 100644 --- a/service/acmpca/doc.go +++ b/service/acmpca/doc.go @@ -12,10 +12,17 @@ // an API that's tailored to the programming language or platform that you're // using. For more information, see AWS SDKs (https://aws.amazon.com/tools/#SDKs). // -// Each ACM Private CA API action has a quota that determines the number of -// times the action can be called per second. For more information, see API -// Rate Quotas in ACM Private CA (https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaLimits.html#PcaLimits-api) -// in the ACM Private CA user guide. +// Each ACM Private CA API operation has a quota that determines the number +// of times the operation can be called per second. ACM Private CA throttles +// API requests at different rates depending on the operation. Throttling means +// that ACM Private CA rejects an otherwise valid request because the request +// exceeds the operation's quota for the number of requests per second. When +// a request is throttled, ACM Private CA returns a ThrottlingException (https://docs.aws.amazon.com/acm-pca/latest/APIReference/CommonErrors.html) +// error. ACM Private CA does not guarantee a minimum request rate for APIs. +// +// To see an up-to-date list of your ACM Private CA quotas, or to request a +// quota increase, log into your AWS account and visit the Service Quotas (https://console.aws.amazon.com/servicequotas/) +// console. // // See https://docs.aws.amazon.com/goto/WebAPI/acm-pca-2017-08-22 for more information on this service. // diff --git a/service/ebs/api.go b/service/ebs/api.go index 9cdc944f941..8fb938998b0 100644 --- a/service/ebs/api.go +++ b/service/ebs/api.go @@ -1976,7 +1976,7 @@ type StartSnapshotInput struct { // If no value is specified, the timeout defaults to 60 minutes. Timeout *int64 `min:"10" type:"integer"` - // The size of the volume, in GiB. The maximum size is 16384 GiB (16 TiB). + // The size of the volume, in GiB. The maximum size is 65536 GiB (64 TiB). // // VolumeSize is a required field VolumeSize *int64 `min:"1" type:"long" required:"true"` diff --git a/service/efs/api.go b/service/efs/api.go index a2fc98ba950..d3201d901b9 100644 --- a/service/efs/api.go +++ b/service/efs/api.go @@ -93,11 +93,11 @@ func (c *EFS) CreateAccessPointRequest(input *CreateAccessPointInput) (req *requ // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * AccessPointLimitExceeded -// Returned if the AWS account has already created the maximum number of access -// points allowed per file system. +// Returned if the Amazon Web Services account has already created the maximum +// number of access points allowed per file system. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreateAccessPoint func (c *EFS) CreateAccessPoint(input *CreateAccessPointInput) (*CreateAccessPointOutput, error) { @@ -168,8 +168,8 @@ func (c *EFS) CreateFileSystemRequest(input *CreateFileSystemInput) (req *reques // Creates a new, empty file system. The operation requires a creation token // in the request that Amazon EFS uses to ensure idempotent creation (calling // the operation with same creation token has no effect). If a file system does -// not currently exist that is owned by the caller's AWS account with the specified -// creation token, this operation does the following: +// not currently exist that is owned by the caller's Amazon Web Services account +// with the specified creation token, this operation does the following: // // * Creates a new, empty file system. The file system will have an Amazon // EFS assigned ID, and an initial lifecycle state creating. @@ -239,8 +239,8 @@ func (c *EFS) CreateFileSystemRequest(input *CreateFileSystemInput) (req *reques // the creation token you provided. // // * FileSystemLimitExceeded -// Returned if the AWS account has already created the maximum number of file -// systems allowed per account. +// Returned if the Amazon Web Services account has already created the maximum +// number of file systems allowed per account. // // * InsufficientThroughputCapacity // Returned if there's not enough capacity to provision additional throughput. @@ -439,7 +439,7 @@ func (c *EFS) CreateMountTargetRequest(input *CreateMountTargetInput) (req *requ // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * IncorrectFileSystemLifeCycleState // Returned if the file system's lifecycle state is not "available". @@ -461,9 +461,9 @@ func (c *EFS) CreateMountTargetRequest(input *CreateMountTargetInput) (req *requ // // * NetworkInterfaceLimitExceeded // The calling account has reached the limit for elastic network interfaces -// for the specific AWS Region. The client should try to delete some elastic -// network interfaces or get the account limit raised. For more information, -// see Amazon VPC Limits (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) +// for the specific Amazon Web Services Region. The client should try to delete +// some elastic network interfaces or get the account limit raised. For more +// information, see Amazon VPC Limits (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) // in the Amazon VPC User Guide (see the Network interfaces per VPC entry in // the table). // @@ -586,7 +586,7 @@ func (c *EFS) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, o // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreateTags // @@ -684,7 +684,7 @@ func (c *EFS) DeleteAccessPointRequest(input *DeleteAccessPointInput) (req *requ // // * AccessPointNotFound // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteAccessPoint func (c *EFS) DeleteAccessPoint(input *DeleteAccessPointInput) (*DeleteAccessPointOutput, error) { @@ -787,7 +787,7 @@ func (c *EFS) DeleteFileSystemRequest(input *DeleteFileSystemInput) (req *reques // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * FileSystemInUse // Returned if a file system has mount targets. @@ -880,7 +880,7 @@ func (c *EFS) DeleteFileSystemPolicyRequest(input *DeleteFileSystemPolicyInput) // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * IncorrectFileSystemLifeCycleState // Returned if the file system's lifecycle state is not "available". @@ -999,7 +999,7 @@ func (c *EFS) DeleteMountTargetRequest(input *DeleteMountTargetInput) (req *requ // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's -// account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteMountTarget func (c *EFS) DeleteMountTarget(input *DeleteMountTargetInput) (*DeleteMountTargetOutput, error) { @@ -1080,8 +1080,8 @@ func (c *EFS) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, o // Deletes the specified tags from a file system. If the DeleteTags request // includes a tag key that doesn't exist, Amazon EFS ignores it and doesn't // cause an error. For more information about tags and related restrictions, -// see Tag Restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) -// in the AWS Billing and Cost Management User Guide. +// see Tag restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) +// in the Billing and Cost Management User Guide. // // This operation requires permissions for the elasticfilesystem:DeleteTags // action. @@ -1103,7 +1103,7 @@ func (c *EFS) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, o // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteTags // @@ -1206,11 +1206,11 @@ func (c *EFS) DescribeAccessPointsRequest(input *DescribeAccessPointsInput) (req // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * AccessPointNotFound // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeAccessPoints func (c *EFS) DescribeAccessPoints(input *DescribeAccessPointsInput) (*DescribeAccessPointsOutput, error) { @@ -1330,6 +1330,10 @@ func (c *EFS) DescribeAccountPreferencesRequest(input *DescribeAccountPreference // DescribeAccountPreferences API operation for Amazon Elastic File System. // +// Returns the account preferences settings for the Amazon Web Services account +// associated with the user making the request, in the current Amazon Web Services +// Region. For more information, see Managing Amazon EFS resource IDs (efs/latest/ug/manage-efs-resource-ids.html). +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1423,7 +1427,7 @@ func (c *EFS) DescribeBackupPolicyRequest(input *DescribeBackupPolicyInput) (req // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * InternalServerError // Returned if an error occurred on the server side. @@ -1433,8 +1437,8 @@ func (c *EFS) DescribeBackupPolicyRequest(input *DescribeBackupPolicyInput) (req // system specified. // // * ValidationException -// Returned if the AWS Backup service is not available in the Region in which -// the request was made. +// Returned if the Backup service is not available in the Amazon Web Services +// Region in which the request was made. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeBackupPolicy func (c *EFS) DescribeBackupPolicy(input *DescribeBackupPolicyInput) (*DescribeBackupPolicyOutput, error) { @@ -1520,7 +1524,7 @@ func (c *EFS) DescribeFileSystemPolicyRequest(input *DescribeFileSystemPolicyInp // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * PolicyNotFound // Returned if the default file system policy is in effect for the EFS file @@ -1600,8 +1604,9 @@ func (c *EFS) DescribeFileSystemsRequest(input *DescribeFileSystemsInput) (req * // // Returns the description of a specific Amazon EFS file system if either the // file system CreationToken or the FileSystemId is provided. Otherwise, it -// returns descriptions of all file systems owned by the caller's AWS account -// in the AWS Region of the endpoint that you're calling. +// returns descriptions of all file systems owned by the caller's Amazon Web +// Services account in the Amazon Web Services Region of the endpoint that you're +// calling. // // When retrieving all file system descriptions, you can optionally specify // the MaxItems parameter to limit the number of descriptions in a response. @@ -1640,7 +1645,7 @@ func (c *EFS) DescribeFileSystemsRequest(input *DescribeFileSystemsInput) (req * // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeFileSystems func (c *EFS) DescribeFileSystems(input *DescribeFileSystemsInput) (*DescribeFileSystemsOutput, error) { @@ -1766,6 +1771,9 @@ func (c *EFS) DescribeLifecycleConfigurationRequest(input *DescribeLifecycleConf // storage class. For a file system without a LifecycleConfiguration object, // the call returns an empty array in the response. // +// When EFS Intelligent Tiering is enabled, TransitionToPrimaryStorageClass +// has a value of AFTER_1_ACCESS. +// // This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration // operation. // @@ -1786,7 +1794,7 @@ func (c *EFS) DescribeLifecycleConfigurationRequest(input *DescribeLifecycleConf // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeLifecycleConfiguration func (c *EFS) DescribeLifecycleConfiguration(input *DescribeLifecycleConfigurationInput) (*DescribeLifecycleConfigurationOutput, error) { @@ -1883,7 +1891,7 @@ func (c *EFS) DescribeMountTargetSecurityGroupsRequest(input *DescribeMountTarge // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's -// account. +// Amazon Web Services account. // // * IncorrectMountTargetState // Returned if the mount target is not in the correct state for the operation. @@ -1979,15 +1987,15 @@ func (c *EFS) DescribeMountTargetsRequest(input *DescribeMountTargetsInput) (req // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's -// account. +// Amazon Web Services account. // // * AccessPointNotFound // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeMountTargets func (c *EFS) DescribeMountTargets(input *DescribeMountTargetsInput) (*DescribeMountTargetsOutput, error) { @@ -2094,7 +2102,7 @@ func (c *EFS) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Reques // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeTags // @@ -2251,11 +2259,11 @@ func (c *EFS) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req * // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * AccessPointNotFound // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/ListTagsForResource func (c *EFS) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { @@ -2410,7 +2418,7 @@ func (c *EFS) ModifyMountTargetSecurityGroupsRequest(input *ModifyMountTargetSec // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's -// account. +// Amazon Web Services account. // // * IncorrectMountTargetState // Returned if the mount target is not in the correct state for the operation. @@ -2489,6 +2497,13 @@ func (c *EFS) PutAccountPreferencesRequest(input *PutAccountPreferencesInput) (r // PutAccountPreferences API operation for Amazon Elastic File System. // +// Use this operation to set the account preference in the current Amazon Web +// Services Region to use either long 17 character (63 bit) or short 8 character +// (32 bit) IDs for new EFS file systems and mount targets created. All existing +// resource IDs are not affected by any changes you make. You can set the ID +// preference during the opt-in period as EFS transitions to long resource IDs. +// For more information, see Managing Amazon EFS resource IDs (efs/latest/ug/manage-efs-resource-ids.html). +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2583,7 +2598,7 @@ func (c *EFS) PutBackupPolicyRequest(input *PutBackupPolicyInput) (req *request. // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * IncorrectFileSystemLifeCycleState // Returned if the file system's lifecycle state is not "available". @@ -2592,8 +2607,8 @@ func (c *EFS) PutBackupPolicyRequest(input *PutBackupPolicyInput) (req *request. // Returned if an error occurred on the server side. // // * ValidationException -// Returned if the AWS Backup service is not available in the Region in which -// the request was made. +// Returned if the Backup service is not available in the Amazon Web Services +// Region in which the request was made. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutBackupPolicy func (c *EFS) PutBackupPolicy(input *PutBackupPolicyInput) (*PutBackupPolicyOutput, error) { @@ -2688,7 +2703,7 @@ func (c *EFS) PutFileSystemPolicyRequest(input *PutFileSystemPolicyInput) (req * // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * InvalidPolicyException // Returned if the FileSystemPolicy is is malformed or contains an error such @@ -2767,8 +2782,10 @@ func (c *EFS) PutLifecycleConfigurationRequest(input *PutLifecycleConfigurationI // Enables lifecycle management by creating a new LifecycleConfiguration object. // A LifecycleConfiguration object defines when files in an Amazon EFS file // system are automatically transitioned to the lower-cost EFS Infrequent Access -// (IA) storage class. A LifecycleConfiguration applies to all files in a file -// system. +// (IA) storage class. To enable EFS Intelligent Tiering, set the value of TransitionToPrimaryStorageClass +// to AFTER_1_ACCESS. For more information, see EFS Lifecycle Management (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). +// +// A LifecycleConfiguration applies to all files in a file system. // // Each Amazon EFS file system supports one lifecycle configuration, which applies // to all files in the file system. If a LifecycleConfiguration object already @@ -2790,8 +2807,8 @@ func (c *EFS) PutLifecycleConfigurationRequest(input *PutLifecycleConfigurationI // operation. // // To apply a LifecycleConfiguration object to an encrypted file system, you -// need the same AWS Key Management Service (AWS KMS) permissions as when you -// created the encrypted file system. +// need the same Key Management Service permissions as when you created the +// encrypted file system. // // 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 @@ -2810,7 +2827,7 @@ func (c *EFS) PutLifecycleConfigurationRequest(input *PutLifecycleConfigurationI // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * IncorrectFileSystemLifeCycleState // Returned if the file system's lifecycle state is not "available". @@ -2905,11 +2922,11 @@ func (c *EFS) TagResourceRequest(input *TagResourceInput) (req *request.Request, // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * AccessPointNotFound // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/TagResource func (c *EFS) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { @@ -3001,11 +3018,11 @@ func (c *EFS) UntagResourceRequest(input *UntagResourceInput) (req *request.Requ // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * AccessPointNotFound // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UntagResource func (c *EFS) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { @@ -3090,7 +3107,7 @@ func (c *EFS) UpdateFileSystemRequest(input *UpdateFileSystemInput) (req *reques // // * FileSystemNotFound // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. // // * IncorrectFileSystemLifeCycleState // Returned if the file system's lifecycle state is not "available". @@ -3220,7 +3237,7 @@ type AccessPointDescription struct { // The name of the access point. This is the value of the Name tag. Name *string `type:"string"` - // Identified the AWS account that owns the access point resource. + // Identified the Amazon Web Services account that owns the access point resource. OwnerId *string `type:"string"` // The full POSIX identity, including the user ID, group ID, and secondary group @@ -3306,8 +3323,8 @@ func (s *AccessPointDescription) SetTags(v []*Tag) *AccessPointDescription { return s } -// Returned if the AWS account has already created the maximum number of access -// points allowed per file system. +// Returned if the Amazon Web Services account has already created the maximum +// number of access points allowed per file system. type AccessPointLimitExceeded struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -3367,7 +3384,7 @@ func (s *AccessPointLimitExceeded) RequestID() string { } // Returned if the specified AccessPointId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. type AccessPointNotFound struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -3626,7 +3643,10 @@ type CreateAccessPointInput struct { // directory does not exist, attempts to mount using the access point will fail. RootDirectory *RootDirectory `type:"structure"` - // Creates tags associated with the access point. Each tag is a key-value pair. + // Creates tags associated with the access point. Each tag is a key-value pair, + // each key must be unique. For more information, see Tagging Amazon Web Services + // resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // in the Amazon Web Services General Reference Guide. Tags []*Tag `type:"list"` } @@ -3728,7 +3748,7 @@ type CreateAccessPointOutput struct { // The name of the access point. This is the value of the Name tag. Name *string `type:"string"` - // Identified the AWS account that owns the access point resource. + // Identified the Amazon Web Services account that owns the access point resource. OwnerId *string `type:"string"` // The full POSIX identity, including the user ID, group ID, and secondary group @@ -3818,13 +3838,13 @@ type CreateFileSystemInput struct { _ struct{} `type:"structure"` // Used to create a file system that uses One Zone storage classes. It specifies - // the AWS Availability Zone in which to create the file system. Use the format - // us-east-1a to specify the Availability Zone. For more information about One - // Zone storage classes, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) + // the Amazon Web Services Availability Zone in which to create the file system. + // Use the format us-east-1a to specify the Availability Zone. For more information + // about One Zone storage classes, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) // in the Amazon EFS User Guide. // - // One Zone storage classes are not available in all Availability Zones in AWS - // Regions where Amazon EFS is available. + // One Zone storage classes are not available in all Availability Zones in Amazon + // Web Services Regions where Amazon EFS is available. AvailabilityZoneName *string `min:"1" type:"string"` // Specifies whether automatic backups are enabled on the file system that you @@ -3836,7 +3856,8 @@ type CreateFileSystemInput struct { // Default is false. However, if you specify an AvailabilityZoneName, the default // is true. // - // AWS Backup is not available in all AWS Regions where Amazon EFS is available. + // Backup is not available in all Amazon Web Services Regionswhere Amazon EFS + // is available. Backup *bool `type:"boolean"` // A string of up to 64 ASCII characters. Amazon EFS uses this to ensure idempotent @@ -3845,12 +3866,12 @@ type CreateFileSystemInput struct { // A Boolean value that, if true, creates an encrypted file system. When creating // an encrypted file system, you have the option of specifying CreateFileSystemRequest$KmsKeyId - // for an existing AWS Key Management Service (AWS KMS) customer master key - // (CMK). If you don't specify a CMK, then the default CMK for Amazon EFS, /aws/elasticfilesystem, + // for an existing Key Management Service (KMS customer master key (CMK). If + // you don't specify a CMK, then the default CMK for Amazon EFS, /aws/elasticfilesystem, // is used to protect the encrypted file system. Encrypted *bool `type:"boolean"` - // The ID of the AWS KMS CMK that you want to use to protect the encrypted file + // The ID of the KMS CMK that you want to use to protect the encrypted file // system. This parameter is only required if you want to use a non-default // KMS key. If this parameter is not specified, the default CMK for Amazon EFS // is used. This ID can be in one of the following formats: @@ -3883,14 +3904,16 @@ type CreateFileSystemInput struct { // The throughput, measured in MiB/s, that you want to provision for a file // system that you're creating. Valid values are 1-1024. Required if ThroughputMode // is set to provisioned. The upper limit for throughput is 1024 MiB/s. To increase - // this limit, contact AWS Support. For more information, see Amazon EFS quotas - // that you can increase (https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits) + // this limit, contact Amazon Web Services Support. For more information, see + // Amazon EFS quotas that you can increase (https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits) // in the Amazon EFS User Guide. ProvisionedThroughputInMibps *float64 `min:"1" type:"double"` - // A value that specifies to create one or more tags associated with the file - // system. Each tag is a user-defined key-value pair. Name your file system - // on creation by including a "Key":"Name","Value":"{value}" key-value pair. + // Use to create one or more tags associated with the file system. Each tag + // is a user-defined key-value pair. Name your file system on creation by including + // a "Key":"Name","Value":"{value}" key-value pair. Each key must be unique. + // For more information, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + // in the Amazon Web Services General Reference Guide. Tags []*Tag `type:"list"` // Specifies the throughput mode for the file system, either bursting or provisioned. @@ -4703,10 +4726,14 @@ func (s *DescribeAccessPointsOutput) SetNextToken(v string) *DescribeAccessPoint type DescribeAccountPreferencesInput struct { _ struct{} `type:"structure"` - // Max results used for pagination. + // (Optional) When retrieving account preferences, you can optionally specify + // the MaxItems parameter to limit the number of objects returned in a response. + // The default value is 100. MaxResults *int64 `min:"1" type:"integer"` - // Token used for pagination. + // (Optional) You can use NextToken in a subsequent request to fetch the next + // page of Amazon Web Services account preferences if the response payload was + // paginated. NextToken *string `min:"1" type:"string"` } @@ -4751,9 +4778,13 @@ func (s *DescribeAccountPreferencesInput) SetNextToken(v string) *DescribeAccoun type DescribeAccountPreferencesOutput struct { _ struct{} `type:"structure"` - // Token used for pagination. + // Present if there are more records than returned in the response. You can + // use the NextToken in the subsequent request to fetch the additional descriptions. NextToken *string `min:"1" type:"string"` + // Describes the resource ID preference setting for the Amazon Web Services + // account associated with the user making the request, in the current Amazon + // Web Services Region. ResourceIdPreference *ResourceIdPreference `type:"structure"` } @@ -5079,8 +5110,8 @@ func (s *DescribeLifecycleConfigurationInput) SetFileSystemId(v string) *Describ type DescribeLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` - // An array of lifecycle management policies. Currently, EFS supports a maximum - // of one policy per file system. + // An array of lifecycle management policies. EFS supports a maximum of one + // policy per file system. LifecyclePolicies []*LifecyclePolicy `type:"list"` } @@ -5485,13 +5516,13 @@ type FileSystemDescription struct { // The unique and consistent identifier of the Availability Zone in which the // file system's One Zone storage classes exist. For example, use1-az1 is an - // Availability Zone ID for the us-east-1 AWS Region, and it has the same location - // in every AWS account. + // Availability Zone ID for the us-east-1 Amazon Web Services Region, and it + // has the same location in every Amazon Web Services account. AvailabilityZoneId *string `type:"string"` - // Describes the AWS Availability Zone in which the file system is located, - // and is valid only for file systems using One Zone storage classes. For more - // information, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) + // Describes the Amazon Web Services Availability Zone in which the file system + // is located, and is valid only for file systems using One Zone storage classes. + // For more information, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) // in the Amazon EFS User Guide. AvailabilityZoneName *string `min:"1" type:"string"` @@ -5517,8 +5548,8 @@ type FileSystemDescription struct { // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` - // The ID of an AWS Key Management Service (AWS KMS) customer master key (CMK) - // that was used to protect the encrypted file system. + // The ID of an Key Management Service customer master key (CMK) that was used + // to protect the encrypted file system. KmsKeyId *string `type:"string"` // The lifecycle phase of the file system. @@ -5537,8 +5568,9 @@ type FileSystemDescription struct { // NumberOfMountTargets is a required field NumberOfMountTargets *int64 `type:"integer" required:"true"` - // The AWS account that created the file system. If the file system was created - // by an IAM user, the parent account to which the user belongs is the owner. + // The Amazon Web Services account that created the file system. If the file + // system was created by an IAM user, the parent account to which the user belongs + // is the owner. // // OwnerId is a required field OwnerId *string `type:"string" required:"true"` @@ -5747,8 +5779,8 @@ func (s *FileSystemInUse) RequestID() string { return s.RespMetadata.RequestID } -// Returned if the AWS account has already created the maximum number of file -// systems allowed per account. +// Returned if the Amazon Web Services account has already created the maximum +// number of file systems allowed per account. type FileSystemLimitExceeded struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -5808,7 +5840,7 @@ func (s *FileSystemLimitExceeded) RequestID() string { } // Returned if the specified FileSystemId value doesn't exist in the requester's -// AWS account. +// Amazon Web Services account. type FileSystemNotFound struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -6295,10 +6327,14 @@ func (s *IpAddressInUse) RequestID() string { type LifecyclePolicy struct { _ struct{} `type:"structure"` - // A value that describes the period of time that a file is not accessed, after - // which it transitions to the IA storage class. Metadata operations such as - // listing the contents of a directory don't count as file access events. + // Describes the period of time that a file is not accessed, after which it + // transitions to the IA storage class. Metadata operations such as listing + // the contents of a directory don't count as file access events. TransitionToIA *string `type:"string" enum:"TransitionToIARules"` + + // Describes the policy used to transition a file from infequent access storage + // to primary storage. + TransitionToPrimaryStorageClass *string `type:"string" enum:"TransitionToPrimaryStorageClassRules"` } // String returns the string representation @@ -6317,6 +6353,12 @@ func (s *LifecyclePolicy) SetTransitionToIA(v string) *LifecyclePolicy { return s } +// SetTransitionToPrimaryStorageClass sets the TransitionToPrimaryStorageClass field's value. +func (s *LifecyclePolicy) SetTransitionToPrimaryStorageClass(v string) *LifecyclePolicy { + s.TransitionToPrimaryStorageClass = &v + return s +} + type ListTagsForResourceInput struct { _ struct{} `type:"structure"` @@ -6548,13 +6590,14 @@ type MountTargetDescription struct { // The unique and consistent identifier of the Availability Zone that the mount // target resides in. For example, use1-az1 is an AZ ID for the us-east-1 Region - // and it has the same location in every AWS account. + // and it has the same location in every Amazon Web Services account. AvailabilityZoneId *string `type:"string"` // The name of the Availability Zone in which the mount target is located. Availability - // Zones are independently mapped to names for each AWS account. For example, - // the Availability Zone us-east-1a for your AWS account might not be the same - // location as us-east-1a for another AWS account. + // Zones are independently mapped to names for each Amazon Web Services account. + // For example, the Availability Zone us-east-1a for your Amazon Web Services + // account might not be the same location as us-east-1a for another Amazon Web + // Services account. AvailabilityZoneName *string `min:"1" type:"string"` // The ID of the file system for which the mount target is intended. @@ -6579,7 +6622,7 @@ type MountTargetDescription struct { // mount target. NetworkInterfaceId *string `type:"string"` - // AWS account ID that owns the resource. + // Amazon Web Services account ID that owns the resource. OwnerId *string `type:"string"` // The ID of the mount target's subnet. @@ -6662,7 +6705,7 @@ func (s *MountTargetDescription) SetVpcId(v string) *MountTargetDescription { } // Returned if there is no mount target with the specified ID found in the caller's -// account. +// Amazon Web Services account. type MountTargetNotFound struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -6722,9 +6765,9 @@ func (s *MountTargetNotFound) RequestID() string { } // The calling account has reached the limit for elastic network interfaces -// for the specific AWS Region. The client should try to delete some elastic -// network interfaces or get the account limit raised. For more information, -// see Amazon VPC Limits (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) +// for the specific Amazon Web Services Region. The client should try to delete +// some elastic network interfaces or get the account limit raised. For more +// information, see Amazon VPC Limits (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) // in the Amazon VPC User Guide (see the Network interfaces per VPC entry in // the table). type NetworkInterfaceLimitExceeded struct { @@ -6973,8 +7016,9 @@ func (s *PosixUser) SetUid(v int64) *PosixUser { type PutAccountPreferencesInput struct { _ struct{} `type:"structure"` - // A preference indicating a choice to use 63bit/32bit IDs for all applicable - // resources. + // Specifies the EFS resource ID preference to set for the user's Amazon Web + // Services account, in the current Amazon Web Services Region, either LONG_ID + // (17 characters), or SHORT_ID (8 characters). // // ResourceIdType is a required field ResourceIdType *string `type:"string" required:"true" enum:"ResourceIdType"` @@ -7012,6 +7056,8 @@ func (s *PutAccountPreferencesInput) SetResourceIdType(v string) *PutAccountPref type PutAccountPreferencesOutput struct { _ struct{} `type:"structure"` + // Describes the resource type and its ID preference for the user's Amazon Web + // Services account, in the current Amazon Web Services Region. ResourceIdPreference *ResourceIdPreference `type:"structure"` } @@ -7286,8 +7332,8 @@ func (s *PutLifecycleConfigurationInput) SetLifecyclePolicies(v []*LifecyclePoli type PutLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` - // An array of lifecycle management policies. Currently, EFS supports a maximum - // of one policy per file system. + // An array of lifecycle management policies. EFS supports a maximum of one + // policy per file system. LifecyclePolicies []*LifecyclePolicy `type:"list"` } @@ -7307,14 +7353,17 @@ func (s *PutLifecycleConfigurationOutput) SetLifecyclePolicies(v []*LifecyclePol return s } +// Describes the resource type and its ID preference for the user's Amazon Web +// Services account, in the current Amazon Web Services Region. type ResourceIdPreference struct { _ struct{} `type:"structure"` - // A preference indicating a choice to use 63bit/32bit IDs for all applicable - // resources. + // Identifies the EFS resource ID preference, either LONG_ID (17 characters) + // or SHORT_ID (8 characters). ResourceIdType *string `type:"string" enum:"ResourceIdType"` - // EFS resources to which a preference applies to. + // Identifies the Amazon EFS resources to which the ID preference setting applies, + // FILE_SYSTEM and MOUNT_TARGET. Resources []*string `type:"list"` } @@ -8049,13 +8098,13 @@ type UpdateFileSystemOutput struct { // The unique and consistent identifier of the Availability Zone in which the // file system's One Zone storage classes exist. For example, use1-az1 is an - // Availability Zone ID for the us-east-1 AWS Region, and it has the same location - // in every AWS account. + // Availability Zone ID for the us-east-1 Amazon Web Services Region, and it + // has the same location in every Amazon Web Services account. AvailabilityZoneId *string `type:"string"` - // Describes the AWS Availability Zone in which the file system is located, - // and is valid only for file systems using One Zone storage classes. For more - // information, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) + // Describes the Amazon Web Services Availability Zone in which the file system + // is located, and is valid only for file systems using One Zone storage classes. + // For more information, see Using EFS storage classes (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) // in the Amazon EFS User Guide. AvailabilityZoneName *string `min:"1" type:"string"` @@ -8081,8 +8130,8 @@ type UpdateFileSystemOutput struct { // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` - // The ID of an AWS Key Management Service (AWS KMS) customer master key (CMK) - // that was used to protect the encrypted file system. + // The ID of an Key Management Service customer master key (CMK) that was used + // to protect the encrypted file system. KmsKeyId *string `type:"string"` // The lifecycle phase of the file system. @@ -8101,8 +8150,9 @@ type UpdateFileSystemOutput struct { // NumberOfMountTargets is a required field NumberOfMountTargets *int64 `type:"integer" required:"true"` - // The AWS account that created the file system. If the file system was created - // by an IAM user, the parent account to which the user belongs is the owner. + // The Amazon Web Services account that created the file system. If the file + // system was created by an IAM user, the parent account to which the user belongs + // is the owner. // // OwnerId is a required field OwnerId *string `type:"string" required:"true"` @@ -8252,8 +8302,8 @@ func (s *UpdateFileSystemOutput) SetThroughputMode(v string) *UpdateFileSystemOu return s } -// Returned if the AWS Backup service is not available in the Region in which -// the request was made. +// Returned if the Backup service is not available in the Amazon Web Services +// Region in which the request was made. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8462,3 +8512,15 @@ func TransitionToIARules_Values() []string { TransitionToIARulesAfter90Days, } } + +const ( + // TransitionToPrimaryStorageClassRulesAfter1Access is a TransitionToPrimaryStorageClassRules enum value + TransitionToPrimaryStorageClassRulesAfter1Access = "AFTER_1_ACCESS" +) + +// TransitionToPrimaryStorageClassRules_Values returns all elements of the TransitionToPrimaryStorageClassRules enum +func TransitionToPrimaryStorageClassRules_Values() []string { + return []string{ + TransitionToPrimaryStorageClassRulesAfter1Access, + } +} diff --git a/service/efs/doc.go b/service/efs/doc.go index 0b50d1fa10e..a38d28e11b0 100644 --- a/service/efs/doc.go +++ b/service/efs/doc.go @@ -4,10 +4,11 @@ // requests to Amazon Elastic File System. // // Amazon Elastic File System (Amazon EFS) provides simple, scalable file storage -// for use with Amazon EC2 instances in the AWS Cloud. With Amazon EFS, storage -// capacity is elastic, growing and shrinking automatically as you add and remove -// files, so your applications have the storage they need, when they need it. -// For more information, see the Amazon Elastic File System API Reference (https://docs.aws.amazon.com/efs/latest/ug/api-reference.html) +// for use with Amazon EC2 instances in the Amazon Web Services Cloud. With +// Amazon EFS, storage capacity is elastic, growing and shrinking automatically +// as you add and remove files, so your applications have the storage they need, +// when they need it. For more information, see the Amazon Elastic File System +// API Reference (https://docs.aws.amazon.com/efs/latest/ug/api-reference.html) // and the Amazon Elastic File System User Guide (https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html). // // See https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01 for more information on this service. diff --git a/service/efs/errors.go b/service/efs/errors.go index f832be62cfc..817057b2969 100644 --- a/service/efs/errors.go +++ b/service/efs/errors.go @@ -18,15 +18,15 @@ const ( // ErrCodeAccessPointLimitExceeded for service response error code // "AccessPointLimitExceeded". // - // Returned if the AWS account has already created the maximum number of access - // points allowed per file system. + // Returned if the Amazon Web Services account has already created the maximum + // number of access points allowed per file system. ErrCodeAccessPointLimitExceeded = "AccessPointLimitExceeded" // ErrCodeAccessPointNotFound for service response error code // "AccessPointNotFound". // // Returned if the specified AccessPointId value doesn't exist in the requester's - // AWS account. + // Amazon Web Services account. ErrCodeAccessPointNotFound = "AccessPointNotFound" // ErrCodeAvailabilityZonesMismatch for service response error code @@ -68,15 +68,15 @@ const ( // ErrCodeFileSystemLimitExceeded for service response error code // "FileSystemLimitExceeded". // - // Returned if the AWS account has already created the maximum number of file - // systems allowed per account. + // Returned if the Amazon Web Services account has already created the maximum + // number of file systems allowed per account. ErrCodeFileSystemLimitExceeded = "FileSystemLimitExceeded" // ErrCodeFileSystemNotFound for service response error code // "FileSystemNotFound". // // Returned if the specified FileSystemId value doesn't exist in the requester's - // AWS account. + // Amazon Web Services account. ErrCodeFileSystemNotFound = "FileSystemNotFound" // ErrCodeIncorrectFileSystemLifeCycleState for service response error code @@ -133,16 +133,16 @@ const ( // "MountTargetNotFound". // // Returned if there is no mount target with the specified ID found in the caller's - // account. + // Amazon Web Services account. ErrCodeMountTargetNotFound = "MountTargetNotFound" // ErrCodeNetworkInterfaceLimitExceeded for service response error code // "NetworkInterfaceLimitExceeded". // // The calling account has reached the limit for elastic network interfaces - // for the specific AWS Region. The client should try to delete some elastic - // network interfaces or get the account limit raised. For more information, - // see Amazon VPC Limits (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) + // for the specific Amazon Web Services Region. The client should try to delete + // some elastic network interfaces or get the account limit raised. For more + // information, see Amazon VPC Limits (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) // in the Amazon VPC User Guide (see the Network interfaces per VPC entry in // the table). ErrCodeNetworkInterfaceLimitExceeded = "NetworkInterfaceLimitExceeded" @@ -205,8 +205,8 @@ const ( // ErrCodeValidationException for service response error code // "ValidationException". // - // Returned if the AWS Backup service is not available in the Region in which - // the request was made. + // Returned if the Backup service is not available in the Amazon Web Services + // Region in which the request was made. ErrCodeValidationException = "ValidationException" ) diff --git a/service/fsx/api.go b/service/fsx/api.go index 3fbe97a5cb8..bed065a70fd 100644 --- a/service/fsx/api.go +++ b/service/fsx/api.go @@ -58,7 +58,7 @@ func (c *FSx) AssociateFileSystemAliasesRequest(input *AssociateFileSystemAliase // AssociateFileSystemAliases API operation for Amazon FSx. // // Use this action to associate one or more Domain Name Server (DNS) aliases -// with an existing Amazon FSx for Windows File Server file system. A file systen +// with an existing Amazon FSx for Windows File Server file system. A file system // can have a maximum of 50 DNS aliases associated with it at any one time. // If you try to associate a DNS alias that is already associated with the file // system, FSx takes no action on that alias in the request. For more information, @@ -255,25 +255,26 @@ func (c *FSx) CopyBackupRequest(input *CopyBackupInput) (req *request.Request, o // CopyBackup API operation for Amazon FSx. // -// Copies an existing backup within the same AWS account to another Region (cross-Region -// copy) or within the same Region (in-Region copy). You can have up to five -// backup copy requests in progress to a single destination Region per account. +// Copies an existing backup within the same Amazon Web Services account to +// another Amazon Web Services Region (cross-Region copy) or within the same +// Amazon Web Services Region (in-Region copy). You can have up to five backup +// copy requests in progress to a single destination Region per account. // // You can use cross-Region backup copies for cross-region disaster recovery. // You periodically take backups and copy them to another Region so that in // the event of a disaster in the primary Region, you can restore from backup // and recover availability quickly in the other Region. You can make cross-Region -// copies only within your AWS partition. +// copies only within your Amazon Web Services partition. // // You can also use backup copies to clone your file data set to another Region // or within the same Region. // -// You can use the SourceRegion parameter to specify the AWS Region from which -// the backup will be copied. For example, if you make the call from the us-west-1 -// Region and want to copy a backup from the us-east-2 Region, you specify us-east-2 -// in the SourceRegion parameter to make a cross-Region copy. If you don't specify -// a Region, the backup copy is created in the same Region where the request -// is sent from (in-Region copy). +// You can use the SourceRegion parameter to specify the Amazon Web Services +// Region from which the backup will be copied. For example, if you make the +// call from the us-west-1 Region and want to copy a backup from the us-east-2 +// Region, you specify us-east-2 in the SourceRegion parameter to make a cross-Region +// copy. If you don't specify a Region, the backup copy is created in the same +// Region where the request is sent from (in-Region copy). // // For more information on creating backup copies, see Copying backups (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html#copy-backups) // in the Amazon FSx for Windows User Guide and Copying backups (https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-backups-fsx.html#copy-backups) @@ -295,7 +296,7 @@ func (c *FSx) CopyBackupRequest(input *CopyBackupInput) (req *request.Request, o // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // * UnsupportedOperation // The requested operation is not supported for this resource or API. @@ -309,15 +310,14 @@ func (c *FSx) CopyBackupRequest(input *CopyBackupInput) (req *request.Request, o // A generic error indicating a server-side failure. // // * InvalidSourceKmsKey -// The AWS Key Management Service (AWS KMS) key of the source backup is invalid. +// The Key Management Service (KMS) key of the source backup is invalid. // // * InvalidDestinationKmsKey -// The AWS Key Management Service (AWS KMS) key of the destination backup is -// invalid. +// The Key Management Service (KMS) key of the destination backup is invalid. // // * InvalidRegion -// The Region provided for Source Region is invalid or is in a different AWS -// partition. +// The Region provided for Source Region is invalid or is in a different Amazon +// Web Services partition. // // * SourceBackupUnavailable // The request was rejected because the lifecycle status of the source backup @@ -393,22 +393,28 @@ func (c *FSx) CreateBackupRequest(input *CreateBackupInput) (req *request.Reques // CreateBackup API operation for Amazon FSx. // -// Creates a backup of an existing Amazon FSx file system. Creating regular -// backups for your file system is a best practice, enabling you to restore -// a file system from a backup if an issue arises with the original file system. +// Creates a backup of an existing Amazon FSx for Windows File Server or Amazon +// FSx for Lustre file system, or of an Amazon FSx for NetApp ONTAP volume. +// Creating regular backups is a best practice, enabling you to restore a file +// system or volume from a backup if an issue arises with the original file +// system or volume. // // For Amazon FSx for Lustre file systems, you can create a backup only for // file systems with the following configuration: // // * a Persistent deployment type // -// * is not linked to a data respository. +// * is not linked to a data repository. // -// For more information about backing up Amazon FSx for Lustre file systems, -// see Working with FSx for Lustre backups (https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-backups-fsx.html). +// For more information about backups, see the following: // -// For more information about backing up Amazon FSx for Windows file systems, -// see Working with FSx for Windows backups (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html). +// * For Amazon FSx for Lustre, see Working with FSx for Lustre backups (https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-backups-fsx.html). +// +// * For Amazon FSx for Windows, see Working with FSx for Windows backups +// (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html). +// +// * For Amazon FSx for NetApp ONTAP, see Working with FSx for NetApp ONTAP +// backups (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/using-backups.html). // // If a backup with the specified client request token exists, and the parameters // match, this operation returns the description of the existing backup. If @@ -449,6 +455,10 @@ func (c *FSx) CreateBackupRequest(input *CreateBackupInput) (req *request.Reques // * FileSystemNotFound // No Amazon FSx file systems were found based upon supplied parameters. // +// * VolumeNotFound +// No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied +// parameters. +// // * BackupInProgress // Another backup is already under way. Wait for completion before initiating // additional backups of this file system. @@ -460,7 +470,7 @@ func (c *FSx) CreateBackupRequest(input *CreateBackupInput) (req *request.Reques // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // * InternalServerError // A generic error indicating a server-side failure. @@ -566,7 +576,7 @@ func (c *FSx) CreateDataRepositoryTaskRequest(input *CreateDataRepositoryTaskInp // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // * InternalServerError // A generic error indicating a server-side failure. @@ -697,12 +707,7 @@ func (c *FSx) CreateFileSystemRequest(input *CreateFileSystemInput) (req *reques // The path provided for data repository export isn't valid. // // * InvalidNetworkSettings -// One or more network settings specified in the request are invalid. InvalidVpcId -// means that the ID passed for the virtual private cloud (VPC) is invalid. -// InvalidSubnetIds returns the list of IDs for subnets that are either invalid -// or not part of the VPC specified. InvalidSecurityGroupIds returns the list -// of IDs for security groups that are either invalid or not part of the VPC -// specified. +// One or more network settings specified in the request are invalid. // // * InvalidPerUnitStorageThroughput // An invalid value for PerUnitStorageThroughput was provided. Please create @@ -710,7 +715,7 @@ func (c *FSx) CreateFileSystemRequest(input *CreateFileSystemInput) (req *reques // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // * InternalServerError // A generic error indicating a server-side failure. @@ -784,7 +789,8 @@ func (c *FSx) CreateFileSystemFromBackupRequest(input *CreateFileSystemFromBacku // CreateFileSystemFromBackup API operation for Amazon FSx. // -// Creates a new Amazon FSx file system from an existing Amazon FSx backup. +// Creates a new Amazon FSx for Lustre or Amazon FSx for Windows File Server +// file system from an existing Amazon FSx backup. // // If a file system with the specified client request token exists and the parameters // match, this operation returns the description of the file system. If a client @@ -835,12 +841,7 @@ func (c *FSx) CreateFileSystemFromBackupRequest(input *CreateFileSystemFromBacku // always uniquely identify a single request. // // * InvalidNetworkSettings -// One or more network settings specified in the request are invalid. InvalidVpcId -// means that the ID passed for the virtual private cloud (VPC) is invalid. -// InvalidSubnetIds returns the list of IDs for subnets that are either invalid -// or not part of the VPC specified. InvalidSecurityGroupIds returns the list -// of IDs for security groups that are either invalid or not part of the VPC -// specified. +// One or more network settings specified in the request are invalid. // // * InvalidPerUnitStorageThroughput // An invalid value for PerUnitStorageThroughput was provided. Please create @@ -848,7 +849,7 @@ func (c *FSx) CreateFileSystemFromBackupRequest(input *CreateFileSystemFromBacku // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // * BackupNotFound // No Amazon FSx backups were found based upon the supplied parameters. @@ -881,6 +882,314 @@ func (c *FSx) CreateFileSystemFromBackupWithContext(ctx aws.Context, input *Crea return out, req.Send() } +const opCreateStorageVirtualMachine = "CreateStorageVirtualMachine" + +// CreateStorageVirtualMachineRequest generates a "aws/request.Request" representing the +// client's request for the CreateStorageVirtualMachine 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 CreateStorageVirtualMachine for more information on using the CreateStorageVirtualMachine +// 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 CreateStorageVirtualMachineRequest method. +// req, resp := client.CreateStorageVirtualMachineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateStorageVirtualMachine +func (c *FSx) CreateStorageVirtualMachineRequest(input *CreateStorageVirtualMachineInput) (req *request.Request, output *CreateStorageVirtualMachineOutput) { + op := &request.Operation{ + Name: opCreateStorageVirtualMachine, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateStorageVirtualMachineInput{} + } + + output = &CreateStorageVirtualMachineOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateStorageVirtualMachine API operation for Amazon FSx. +// +// Creates a storage virtual machine (SVM) for an Amazon FSx for ONTAP file +// system. +// +// 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 FSx's +// API operation CreateStorageVirtualMachine for usage and error information. +// +// Returned Error Types: +// * ActiveDirectoryError +// An Active Directory error. +// +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * FileSystemNotFound +// No Amazon FSx file systems were found based upon supplied parameters. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * ServiceLimitExceeded +// An error indicating that a particular service limit was exceeded. You can +// increase some service limits by contacting Amazon Web Services Support. +// +// * UnsupportedOperation +// The requested operation is not supported for this resource or API. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateStorageVirtualMachine +func (c *FSx) CreateStorageVirtualMachine(input *CreateStorageVirtualMachineInput) (*CreateStorageVirtualMachineOutput, error) { + req, out := c.CreateStorageVirtualMachineRequest(input) + return out, req.Send() +} + +// CreateStorageVirtualMachineWithContext is the same as CreateStorageVirtualMachine with the addition of +// the ability to pass a context and additional request options. +// +// See CreateStorageVirtualMachine 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 *FSx) CreateStorageVirtualMachineWithContext(ctx aws.Context, input *CreateStorageVirtualMachineInput, opts ...request.Option) (*CreateStorageVirtualMachineOutput, error) { + req, out := c.CreateStorageVirtualMachineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateVolume = "CreateVolume" + +// CreateVolumeRequest generates a "aws/request.Request" representing the +// client's request for the CreateVolume 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 CreateVolume for more information on using the CreateVolume +// 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 CreateVolumeRequest method. +// req, resp := client.CreateVolumeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateVolume +func (c *FSx) CreateVolumeRequest(input *CreateVolumeInput) (req *request.Request, output *CreateVolumeOutput) { + op := &request.Operation{ + Name: opCreateVolume, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateVolumeInput{} + } + + output = &CreateVolumeOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateVolume API operation for Amazon FSx. +// +// Creates an Amazon FSx for NetApp ONTAP storage volume. +// +// 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 FSx's +// API operation CreateVolume for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * FileSystemNotFound +// No Amazon FSx file systems were found based upon supplied parameters. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * MissingVolumeConfiguration +// A volume configuration is required for this operation. +// +// * ServiceLimitExceeded +// An error indicating that a particular service limit was exceeded. You can +// increase some service limits by contacting Amazon Web Services Support. +// +// * StorageVirtualMachineNotFound +// No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. +// +// * UnsupportedOperation +// The requested operation is not supported for this resource or API. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateVolume +func (c *FSx) CreateVolume(input *CreateVolumeInput) (*CreateVolumeOutput, error) { + req, out := c.CreateVolumeRequest(input) + return out, req.Send() +} + +// CreateVolumeWithContext is the same as CreateVolume with the addition of +// the ability to pass a context and additional request options. +// +// See CreateVolume 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 *FSx) CreateVolumeWithContext(ctx aws.Context, input *CreateVolumeInput, opts ...request.Option) (*CreateVolumeOutput, error) { + req, out := c.CreateVolumeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateVolumeFromBackup = "CreateVolumeFromBackup" + +// CreateVolumeFromBackupRequest generates a "aws/request.Request" representing the +// client's request for the CreateVolumeFromBackup 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 CreateVolumeFromBackup for more information on using the CreateVolumeFromBackup +// 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 CreateVolumeFromBackupRequest method. +// req, resp := client.CreateVolumeFromBackupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateVolumeFromBackup +func (c *FSx) CreateVolumeFromBackupRequest(input *CreateVolumeFromBackupInput) (req *request.Request, output *CreateVolumeFromBackupOutput) { + op := &request.Operation{ + Name: opCreateVolumeFromBackup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateVolumeFromBackupInput{} + } + + output = &CreateVolumeFromBackupOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateVolumeFromBackup API operation for Amazon FSx. +// +// Creates a new Amazon FSx for NetApp ONTAP volume from an existing Amazon +// FSx volume backup. +// +// 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 FSx's +// API operation CreateVolumeFromBackup for usage and error information. +// +// Returned Error Types: +// * BackupNotFound +// No Amazon FSx backups were found based upon the supplied parameters. +// +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * FileSystemNotFound +// No Amazon FSx file systems were found based upon supplied parameters. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * MissingVolumeConfiguration +// A volume configuration is required for this operation. +// +// * ServiceLimitExceeded +// An error indicating that a particular service limit was exceeded. You can +// increase some service limits by contacting Amazon Web Services Support. +// +// * StorageVirtualMachineNotFound +// No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateVolumeFromBackup +func (c *FSx) CreateVolumeFromBackup(input *CreateVolumeFromBackupInput) (*CreateVolumeFromBackupOutput, error) { + req, out := c.CreateVolumeFromBackupRequest(input) + return out, req.Send() +} + +// CreateVolumeFromBackupWithContext is the same as CreateVolumeFromBackup with the addition of +// the ability to pass a context and additional request options. +// +// See CreateVolumeFromBackup 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 *FSx) CreateVolumeFromBackupWithContext(ctx aws.Context, input *CreateVolumeFromBackupInput, opts ...request.Option) (*CreateVolumeFromBackupOutput, error) { + req, out := c.CreateVolumeFromBackupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteBackup = "DeleteBackup" // DeleteBackupRequest generates a "aws/request.Request" representing the @@ -1036,6 +1345,10 @@ func (c *FSx) DeleteFileSystemRequest(input *DeleteFileSystemInput) (req *reques // no longer exists, and its data is gone. Any existing automatic backups will // also be deleted. // +// To delete an Amazon FSx for NetApp ONTAP file system, first delete all the +// volumes and SVMs on the file system. Then provide a FileSystemId value to +// the DeleFileSystem operation. +// // By default, when you delete an Amazon FSx for Windows File Server file system, // a final backup is created upon deletion. This final backup is not subject // to the file system's retention policy, and must be manually deleted. @@ -1073,7 +1386,7 @@ func (c *FSx) DeleteFileSystemRequest(input *DeleteFileSystemInput) (req *reques // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // * InternalServerError // A generic error indicating a server-side failure. @@ -1100,59 +1413,246 @@ func (c *FSx) DeleteFileSystemWithContext(ctx aws.Context, input *DeleteFileSyst return out, req.Send() } -const opDescribeBackups = "DescribeBackups" +const opDeleteStorageVirtualMachine = "DeleteStorageVirtualMachine" -// DescribeBackupsRequest generates a "aws/request.Request" representing the -// client's request for the DescribeBackups operation. The "output" return +// DeleteStorageVirtualMachineRequest generates a "aws/request.Request" representing the +// client's request for the DeleteStorageVirtualMachine 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 DescribeBackups for more information on using the DescribeBackups +// See DeleteStorageVirtualMachine for more information on using the DeleteStorageVirtualMachine // 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 DescribeBackupsRequest method. -// req, resp := client.DescribeBackupsRequest(params) +// // Example sending a request using the DeleteStorageVirtualMachineRequest method. +// req, resp := client.DeleteStorageVirtualMachineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeBackups -func (c *FSx) DescribeBackupsRequest(input *DescribeBackupsInput) (req *request.Request, output *DescribeBackupsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DeleteStorageVirtualMachine +func (c *FSx) DeleteStorageVirtualMachineRequest(input *DeleteStorageVirtualMachineInput) (req *request.Request, output *DeleteStorageVirtualMachineOutput) { op := &request.Operation{ - Name: opDescribeBackups, + Name: opDeleteStorageVirtualMachine, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, } if input == nil { - input = &DescribeBackupsInput{} + input = &DeleteStorageVirtualMachineInput{} } - output = &DescribeBackupsOutput{} + output = &DeleteStorageVirtualMachineOutput{} req = c.newRequest(op, input, output) return } -// DescribeBackups API operation for Amazon FSx. +// DeleteStorageVirtualMachine API operation for Amazon FSx. // -// Returns the description of specific Amazon FSx backups, if a BackupIds value +// Deletes an existing Amazon FSx for ONTAP storage virtual machine (SVM). Prior +// to deleting an SVM, you must delete all non-root volumes in the SVM, otherwise +// the operation will fail. +// +// 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 FSx's +// API operation DeleteStorageVirtualMachine for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * StorageVirtualMachineNotFound +// No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DeleteStorageVirtualMachine +func (c *FSx) DeleteStorageVirtualMachine(input *DeleteStorageVirtualMachineInput) (*DeleteStorageVirtualMachineOutput, error) { + req, out := c.DeleteStorageVirtualMachineRequest(input) + return out, req.Send() +} + +// DeleteStorageVirtualMachineWithContext is the same as DeleteStorageVirtualMachine with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteStorageVirtualMachine 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 *FSx) DeleteStorageVirtualMachineWithContext(ctx aws.Context, input *DeleteStorageVirtualMachineInput, opts ...request.Option) (*DeleteStorageVirtualMachineOutput, error) { + req, out := c.DeleteStorageVirtualMachineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteVolume = "DeleteVolume" + +// DeleteVolumeRequest generates a "aws/request.Request" representing the +// client's request for the DeleteVolume 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 DeleteVolume for more information on using the DeleteVolume +// 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 DeleteVolumeRequest method. +// req, resp := client.DeleteVolumeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DeleteVolume +func (c *FSx) DeleteVolumeRequest(input *DeleteVolumeInput) (req *request.Request, output *DeleteVolumeOutput) { + op := &request.Operation{ + Name: opDeleteVolume, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteVolumeInput{} + } + + output = &DeleteVolumeOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteVolume API operation for Amazon FSx. +// +// Deletes an Amazon FSx for NetApp ONTAP volume. When deleting a volume, you +// have the option of creating a final backup. If you create a final backup, +// you have the option to apply Tags to the backup. You need to have fsx:TagResource +// permission in order to apply tags to the backup. +// +// 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 FSx's +// API operation DeleteVolume for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * VolumeNotFound +// No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied +// parameters. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DeleteVolume +func (c *FSx) DeleteVolume(input *DeleteVolumeInput) (*DeleteVolumeOutput, error) { + req, out := c.DeleteVolumeRequest(input) + return out, req.Send() +} + +// DeleteVolumeWithContext is the same as DeleteVolume with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteVolume 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 *FSx) DeleteVolumeWithContext(ctx aws.Context, input *DeleteVolumeInput, opts ...request.Option) (*DeleteVolumeOutput, error) { + req, out := c.DeleteVolumeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeBackups = "DescribeBackups" + +// DescribeBackupsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBackups 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 DescribeBackups for more information on using the DescribeBackups +// 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 DescribeBackupsRequest method. +// req, resp := client.DescribeBackupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeBackups +func (c *FSx) DescribeBackupsRequest(input *DescribeBackupsInput) (req *request.Request, output *DescribeBackupsOutput) { + op := &request.Operation{ + Name: opDescribeBackups, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeBackupsInput{} + } + + output = &DescribeBackupsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeBackups API operation for Amazon FSx. +// +// Returns the description of specific Amazon FSx backups, if a BackupIds value // is provided for that backup. Otherwise, it returns all backups owned by your -// AWS account in the AWS Region of the endpoint that you're calling. +// Amazon Web Services account in the Amazon Web Services Region of the endpoint +// that you're calling. // // When retrieving all backups, you can optionally specify the MaxResults parameter // to limit the number of backups in a response. If more backups remain, Amazon @@ -1167,7 +1667,7 @@ func (c *FSx) DescribeBackupsRequest(input *DescribeBackupsInput) (req *request. // // When using this action, keep the following in mind: // -// * The implementation might return fewer than MaxResults file system descriptions +// * The implementation might return fewer than MaxResults backup descriptions // while still including a NextToken value. // // * The order of backups returned in the response of one DescribeBackups @@ -1188,6 +1688,10 @@ func (c *FSx) DescribeBackupsRequest(input *DescribeBackupsInput) (req *request. // * FileSystemNotFound // No Amazon FSx file systems were found based upon supplied parameters. // +// * VolumeNotFound +// No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied +// parameters. +// // * BackupNotFound // No Amazon FSx backups were found based upon the supplied parameters. // @@ -1322,8 +1826,9 @@ func (c *FSx) DescribeDataRepositoryTasksRequest(input *DescribeDataRepositoryTa // tasks, if one or more TaskIds values are provided in the request, or if filters // are used in the request. You can use filters to narrow the response to include // just tasks for specific file systems, or tasks in a specific lifecycle state. -// Otherwise, it returns all data repository tasks owned by your AWS account -// in the AWS Region of the endpoint that you're calling. +// Otherwise, it returns all data repository tasks owned by your Amazon Web +// Services account in the Amazon Web Services Region of the endpoint that you're +// calling. // // When retrieving all tasks, you can paginate the response by using the optional // MaxResults parameter to limit the number of tasks returned in a response. @@ -1624,8 +2129,8 @@ func (c *FSx) DescribeFileSystemsRequest(input *DescribeFileSystemsInput) (req * // // Returns the description of specific Amazon FSx file systems, if a FileSystemIds // value is provided for that file system. Otherwise, it returns descriptions -// of all file systems owned by your AWS account in the AWS Region of the endpoint -// that you're calling. +// of all file systems owned by your Amazon Web Services account in the Amazon +// Web Services Region of the endpoint that you're calling. // // When retrieving all file system descriptions, you can optionally specify // the MaxResults parameter to limit the number of descriptions in a response. @@ -1738,145 +2243,439 @@ func (c *FSx) DescribeFileSystemsPagesWithContext(ctx aws.Context, input *Descri return p.Err() } -const opDisassociateFileSystemAliases = "DisassociateFileSystemAliases" +const opDescribeStorageVirtualMachines = "DescribeStorageVirtualMachines" -// DisassociateFileSystemAliasesRequest generates a "aws/request.Request" representing the -// client's request for the DisassociateFileSystemAliases operation. The "output" return +// DescribeStorageVirtualMachinesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeStorageVirtualMachines 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 DisassociateFileSystemAliases for more information on using the DisassociateFileSystemAliases +// See DescribeStorageVirtualMachines for more information on using the DescribeStorageVirtualMachines // 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 DisassociateFileSystemAliasesRequest method. -// req, resp := client.DisassociateFileSystemAliasesRequest(params) +// // Example sending a request using the DescribeStorageVirtualMachinesRequest method. +// req, resp := client.DescribeStorageVirtualMachinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DisassociateFileSystemAliases -func (c *FSx) DisassociateFileSystemAliasesRequest(input *DisassociateFileSystemAliasesInput) (req *request.Request, output *DisassociateFileSystemAliasesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeStorageVirtualMachines +func (c *FSx) DescribeStorageVirtualMachinesRequest(input *DescribeStorageVirtualMachinesInput) (req *request.Request, output *DescribeStorageVirtualMachinesOutput) { op := &request.Operation{ - Name: opDisassociateFileSystemAliases, + Name: opDescribeStorageVirtualMachines, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &DisassociateFileSystemAliasesInput{} + input = &DescribeStorageVirtualMachinesInput{} } - output = &DisassociateFileSystemAliasesOutput{} + output = &DescribeStorageVirtualMachinesOutput{} req = c.newRequest(op, input, output) return } -// DisassociateFileSystemAliases API operation for Amazon FSx. -// -// Use this action to disassociate, or remove, one or more Domain Name Service -// (DNS) aliases from an Amazon FSx for Windows File Server file system. If -// you attempt to disassociate a DNS alias that is not associated with the file -// system, Amazon FSx responds with a 400 Bad Request. For more information, -// see Working with DNS Aliases (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-dns-aliases.html). +// DescribeStorageVirtualMachines API operation for Amazon FSx. // -// The system generated response showing the DNS aliases that Amazon FSx is -// attempting to disassociate from the file system. Use the API operation to -// monitor the status of the aliases Amazon FSx is disassociating with the file -// system. +// Describes one or more Amazon FSx for NetApp ONTAP storage virtual machines +// (SVMs). // // 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 FSx's -// API operation DisassociateFileSystemAliases for usage and error information. +// API operation DescribeStorageVirtualMachines for usage and error information. // // Returned Error Types: // * BadRequest // A generic error indicating a failure with a client request. // -// * FileSystemNotFound -// No Amazon FSx file systems were found based upon supplied parameters. -// // * InternalServerError // A generic error indicating a server-side failure. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DisassociateFileSystemAliases -func (c *FSx) DisassociateFileSystemAliases(input *DisassociateFileSystemAliasesInput) (*DisassociateFileSystemAliasesOutput, error) { - req, out := c.DisassociateFileSystemAliasesRequest(input) +// * StorageVirtualMachineNotFound +// No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeStorageVirtualMachines +func (c *FSx) DescribeStorageVirtualMachines(input *DescribeStorageVirtualMachinesInput) (*DescribeStorageVirtualMachinesOutput, error) { + req, out := c.DescribeStorageVirtualMachinesRequest(input) return out, req.Send() } -// DisassociateFileSystemAliasesWithContext is the same as DisassociateFileSystemAliases with the addition of +// DescribeStorageVirtualMachinesWithContext is the same as DescribeStorageVirtualMachines with the addition of // the ability to pass a context and additional request options. // -// See DisassociateFileSystemAliases for details on how to use this API operation. +// See DescribeStorageVirtualMachines 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 *FSx) DisassociateFileSystemAliasesWithContext(ctx aws.Context, input *DisassociateFileSystemAliasesInput, opts ...request.Option) (*DisassociateFileSystemAliasesOutput, error) { - req, out := c.DisassociateFileSystemAliasesRequest(input) +func (c *FSx) DescribeStorageVirtualMachinesWithContext(ctx aws.Context, input *DescribeStorageVirtualMachinesInput, opts ...request.Option) (*DescribeStorageVirtualMachinesOutput, error) { + req, out := c.DescribeStorageVirtualMachinesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListTagsForResource = "ListTagsForResource" +// DescribeStorageVirtualMachinesPages iterates over the pages of a DescribeStorageVirtualMachines operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeStorageVirtualMachines 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 DescribeStorageVirtualMachines operation. +// pageNum := 0 +// err := client.DescribeStorageVirtualMachinesPages(params, +// func(page *fsx.DescribeStorageVirtualMachinesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *FSx) DescribeStorageVirtualMachinesPages(input *DescribeStorageVirtualMachinesInput, fn func(*DescribeStorageVirtualMachinesOutput, bool) bool) error { + return c.DescribeStorageVirtualMachinesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// DescribeStorageVirtualMachinesPagesWithContext same as DescribeStorageVirtualMachinesPages 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 *FSx) DescribeStorageVirtualMachinesPagesWithContext(ctx aws.Context, input *DescribeStorageVirtualMachinesInput, fn func(*DescribeStorageVirtualMachinesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeStorageVirtualMachinesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeStorageVirtualMachinesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeStorageVirtualMachinesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeVolumes = "DescribeVolumes" + +// DescribeVolumesRequest generates a "aws/request.Request" representing the +// client's request for the DescribeVolumes 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 ListTagsForResource for more information on using the ListTagsForResource +// See DescribeVolumes for more information on using the DescribeVolumes // 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 ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the DescribeVolumesRequest method. +// req, resp := client.DescribeVolumesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/ListTagsForResource -func (c *FSx) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeVolumes +func (c *FSx) DescribeVolumesRequest(input *DescribeVolumesInput) (req *request.Request, output *DescribeVolumesOutput) { op := &request.Operation{ - Name: opListTagsForResource, + Name: opDescribeVolumes, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListTagsForResourceInput{} + input = &DescribeVolumesInput{} } - output = &ListTagsForResourceOutput{} + output = &DescribeVolumesOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for Amazon FSx. +// DescribeVolumes API operation for Amazon FSx. // -// Lists tags for an Amazon FSx file systems and backups in the case of Amazon +// Describes one or more Amazon FSx for NetApp ONTAP volumes. +// +// 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 FSx's +// API operation DescribeVolumes for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * VolumeNotFound +// No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied +// parameters. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeVolumes +func (c *FSx) DescribeVolumes(input *DescribeVolumesInput) (*DescribeVolumesOutput, error) { + req, out := c.DescribeVolumesRequest(input) + return out, req.Send() +} + +// DescribeVolumesWithContext is the same as DescribeVolumes with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeVolumes 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 *FSx) DescribeVolumesWithContext(ctx aws.Context, input *DescribeVolumesInput, opts ...request.Option) (*DescribeVolumesOutput, error) { + req, out := c.DescribeVolumesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeVolumesPages iterates over the pages of a DescribeVolumes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeVolumes 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 DescribeVolumes operation. +// pageNum := 0 +// err := client.DescribeVolumesPages(params, +// func(page *fsx.DescribeVolumesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *FSx) DescribeVolumesPages(input *DescribeVolumesInput, fn func(*DescribeVolumesOutput, bool) bool) error { + return c.DescribeVolumesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeVolumesPagesWithContext same as DescribeVolumesPages 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 *FSx) DescribeVolumesPagesWithContext(ctx aws.Context, input *DescribeVolumesInput, fn func(*DescribeVolumesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeVolumesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeVolumesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeVolumesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDisassociateFileSystemAliases = "DisassociateFileSystemAliases" + +// DisassociateFileSystemAliasesRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateFileSystemAliases 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 DisassociateFileSystemAliases for more information on using the DisassociateFileSystemAliases +// 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 DisassociateFileSystemAliasesRequest method. +// req, resp := client.DisassociateFileSystemAliasesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DisassociateFileSystemAliases +func (c *FSx) DisassociateFileSystemAliasesRequest(input *DisassociateFileSystemAliasesInput) (req *request.Request, output *DisassociateFileSystemAliasesOutput) { + op := &request.Operation{ + Name: opDisassociateFileSystemAliases, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisassociateFileSystemAliasesInput{} + } + + output = &DisassociateFileSystemAliasesOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisassociateFileSystemAliases API operation for Amazon FSx. +// +// Use this action to disassociate, or remove, one or more Domain Name Service +// (DNS) aliases from an Amazon FSx for Windows File Server file system. If +// you attempt to disassociate a DNS alias that is not associated with the file +// system, Amazon FSx responds with a 400 Bad Request. For more information, +// see Working with DNS Aliases (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-dns-aliases.html). +// +// The system generated response showing the DNS aliases that Amazon FSx is +// attempting to disassociate from the file system. Use the API operation to +// monitor the status of the aliases Amazon FSx is disassociating with the file +// system. +// +// 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 FSx's +// API operation DisassociateFileSystemAliases for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * FileSystemNotFound +// No Amazon FSx file systems were found based upon supplied parameters. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DisassociateFileSystemAliases +func (c *FSx) DisassociateFileSystemAliases(input *DisassociateFileSystemAliasesInput) (*DisassociateFileSystemAliasesOutput, error) { + req, out := c.DisassociateFileSystemAliasesRequest(input) + return out, req.Send() +} + +// DisassociateFileSystemAliasesWithContext is the same as DisassociateFileSystemAliases with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateFileSystemAliases 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 *FSx) DisassociateFileSystemAliasesWithContext(ctx aws.Context, input *DisassociateFileSystemAliasesInput, opts ...request.Option) (*DisassociateFileSystemAliasesOutput, error) { + req, out := c.DisassociateFileSystemAliasesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource 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 ListTagsForResource for more information on using the ListTagsForResource +// 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 ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/ListTagsForResource +func (c *FSx) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon FSx. +// +// Lists tags for an Amazon FSx file systems and backups in the case of Amazon // FSx for Windows File Server. // // When retrieving all tags, you can optionally specify the MaxResults parameter @@ -1945,6 +2744,58 @@ func (c *FSx) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsFor return out, req.Send() } +// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTagsForResource 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 ListTagsForResource operation. +// pageNum := 0 +// err := client.ListTagsForResourcePages(params, +// func(page *fsx.ListTagsForResourceOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *FSx) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error { + return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages 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 *FSx) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTagsForResourceInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTagsForResourceRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -2209,7 +3060,18 @@ func (c *FSx) UpdateFileSystemRequest(input *UpdateFileSystemInput) (req *reques // // * WeeklyMaintenanceStartTime // -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// For Amazon FSx for NetApp ONTAP file systems, you can update the following +// properties: +// +// * AutomaticBackupRetentionDays +// +// * DailyAutomaticBackupStartTime +// +// * FsxAdminPassword +// +// * WeeklyMaintenanceStartTime +// +// 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. // @@ -2239,7 +3101,7 @@ func (c *FSx) UpdateFileSystemRequest(input *UpdateFileSystemInput) (req *reques // // * ServiceLimitExceeded // An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. +// increase some service limits by contacting Amazon Web Services Support. // // See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateFileSystem func (c *FSx) UpdateFileSystem(input *UpdateFileSystemInput) (*UpdateFileSystemOutput, error) { @@ -2263,23 +3125,210 @@ func (c *FSx) UpdateFileSystemWithContext(ctx aws.Context, input *UpdateFileSyst return out, req.Send() } +const opUpdateStorageVirtualMachine = "UpdateStorageVirtualMachine" + +// UpdateStorageVirtualMachineRequest generates a "aws/request.Request" representing the +// client's request for the UpdateStorageVirtualMachine 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 UpdateStorageVirtualMachine for more information on using the UpdateStorageVirtualMachine +// 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 UpdateStorageVirtualMachineRequest method. +// req, resp := client.UpdateStorageVirtualMachineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateStorageVirtualMachine +func (c *FSx) UpdateStorageVirtualMachineRequest(input *UpdateStorageVirtualMachineInput) (req *request.Request, output *UpdateStorageVirtualMachineOutput) { + op := &request.Operation{ + Name: opUpdateStorageVirtualMachine, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateStorageVirtualMachineInput{} + } + + output = &UpdateStorageVirtualMachineOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateStorageVirtualMachine API operation for Amazon FSx. +// +// Updates an Amazon FSx for ONTAP storage virtual machine (SVM). +// +// 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 FSx's +// API operation UpdateStorageVirtualMachine for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * StorageVirtualMachineNotFound +// No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. +// +// * UnsupportedOperation +// The requested operation is not supported for this resource or API. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateStorageVirtualMachine +func (c *FSx) UpdateStorageVirtualMachine(input *UpdateStorageVirtualMachineInput) (*UpdateStorageVirtualMachineOutput, error) { + req, out := c.UpdateStorageVirtualMachineRequest(input) + return out, req.Send() +} + +// UpdateStorageVirtualMachineWithContext is the same as UpdateStorageVirtualMachine with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateStorageVirtualMachine 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 *FSx) UpdateStorageVirtualMachineWithContext(ctx aws.Context, input *UpdateStorageVirtualMachineInput, opts ...request.Option) (*UpdateStorageVirtualMachineOutput, error) { + req, out := c.UpdateStorageVirtualMachineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateVolume = "UpdateVolume" + +// UpdateVolumeRequest generates a "aws/request.Request" representing the +// client's request for the UpdateVolume 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 UpdateVolume for more information on using the UpdateVolume +// 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 UpdateVolumeRequest method. +// req, resp := client.UpdateVolumeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateVolume +func (c *FSx) UpdateVolumeRequest(input *UpdateVolumeInput) (req *request.Request, output *UpdateVolumeOutput) { + op := &request.Operation{ + Name: opUpdateVolume, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateVolumeInput{} + } + + output = &UpdateVolumeOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateVolume API operation for Amazon FSx. +// +// Updates an Amazon FSx for NetApp ONTAP volume's configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon FSx's +// API operation UpdateVolume for usage and error information. +// +// Returned Error Types: +// * BadRequest +// A generic error indicating a failure with a client request. +// +// * IncompatibleParameterError +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +// +// * InternalServerError +// A generic error indicating a server-side failure. +// +// * MissingVolumeConfiguration +// A volume configuration is required for this operation. +// +// * VolumeNotFound +// No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied +// parameters. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateVolume +func (c *FSx) UpdateVolume(input *UpdateVolumeInput) (*UpdateVolumeOutput, error) { + req, out := c.UpdateVolumeRequest(input) + return out, req.Send() +} + +// UpdateVolumeWithContext is the same as UpdateVolume with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateVolume 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 *FSx) UpdateVolumeWithContext(ctx aws.Context, input *UpdateVolumeInput, opts ...request.Option) (*UpdateVolumeOutput, error) { + req, out := c.UpdateVolumeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // The Microsoft AD attributes of the Amazon FSx for Windows File Server file // system. type ActiveDirectoryBackupAttributes struct { _ struct{} `type:"structure"` - // The ID of the AWS Managed Microsoft Active Directory instance to which the - // file system is joined. + // The ID of the Amazon Web Services Managed Microsoft Active Directory instance + // to which the file system is joined. ActiveDirectoryId *string `min:"12" type:"string"` // The fully qualified domain name of the self-managed AD directory. DomainName *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify - // AWS resources. We require an ARN when you need to specify a resource unambiguously - // across all of AWS. For more information, see Amazon Resource Names (ARNs) - // and AWS Service Namespaces (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference. + // Amazon Web Services resources. We require an ARN when you need to specify + // a resource unambiguously across all of Amazon Web Services. For more information, + // see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. ResourceARN *string `min:"8" type:"string"` } @@ -2440,6 +3489,9 @@ type AdministrativeAction struct { // UpdateFileSystem operation. Returned for FILE_SYSTEM_UPDATE administrative // actions. TargetFileSystemValues *FileSystem `type:"structure"` + + // Describes an Amazon FSx for NetApp ONTAP volume. + TargetVolumeValues *Volume `type:"structure"` } // String returns the string representation @@ -2488,6 +3540,12 @@ func (s *AdministrativeAction) SetTargetFileSystemValues(v *FileSystem) *Adminis return s } +// SetTargetVolumeValues sets the TargetVolumeValues field's value. +func (s *AdministrativeAction) SetTargetVolumeValues(v *Volume) *AdministrativeAction { + s.TargetVolumeValues = v + return s +} + // Provides information about a failed administrative action. type AdministrativeActionFailureDetails struct { _ struct{} `type:"structure"` @@ -2533,8 +3591,8 @@ type Alias struct { // * DELETING - Amazon FSx is disassociating the DNS alias from the file // system and deleting it. // - // * DELETE_FAILED - Amazon FSx was unable to disassocate the DNS alias from - // the file system. + // * DELETE_FAILED - Amazon FSx was unable to disassociate the DNS alias + // from the file system. Lifecycle *string `type:"string" enum:"AliasLifecycle"` // The name of the DNS alias. The alias name has to meet the following requirements: @@ -2603,7 +3661,7 @@ type AssociateFileSystemAliasesInput struct { // (Optional) An idempotency token for resource creation, in a string of up // to 64 ASCII characters. This token is automatically filled on your behalf - // when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK. + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` // Specifies the file system with which you want to associate one or more DNS @@ -2692,7 +3750,8 @@ func (s *AssociateFileSystemAliasesOutput) SetAliases(v []*Alias) *AssociateFile return s } -// A backup of an Amazon FSx file system. +// A backup of an Amazon FSx for Windows File Server or Amazon FSx for Lustre +// file system, or of an Amazon FSx for NetApp ONTAP volume. type Backup struct { _ struct{} `type:"structure"` @@ -2719,8 +3778,8 @@ type Backup struct { // FileSystem is a required field FileSystem *FileSystem `type:"structure" required:"true"` - // The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the - // backup of the Amazon FSx file system's data at rest. + // The ID of the Key Management Service (KMS) key used to encrypt the backup + // of the Amazon FSx file system's data at rest. KmsKeyId *string `min:"1" type:"string"` // The lifecycle status of the backup. @@ -2744,8 +3803,8 @@ type Backup struct { // Lifecycle is a required field Lifecycle *string `type:"string" required:"true" enum:"BackupLifecycle"` - // An AWS account ID. This ID is a 12-digit number that you use to construct - // Amazon Resource Names (ARNs) for resources. + // An Amazon Web Services account ID. This ID is a 12-digit number that you + // use to construct Amazon Resource Names (ARNs) for resources. OwnerId *string `min:"12" type:"string"` // The current percent of progress of an asynchronous task. @@ -2754,6 +3813,9 @@ type Backup struct { // The Amazon Resource Name (ARN) for the backup resource. ResourceARN *string `min:"8" type:"string"` + // Specifies the resource type that is backed up. + ResourceType *string `type:"string" enum:"ResourceType"` + // The ID of the source backup. Specifies the backup you are copying. SourceBackupId *string `min:"12" type:"string"` @@ -2768,6 +3830,9 @@ type Backup struct { // // Type is a required field Type *string `type:"string" required:"true" enum:"BackupType"` + + // Describes an Amazon FSx for NetApp ONTAP volume. + Volume *Volume `type:"structure"` } // String returns the string representation @@ -2840,6 +3905,12 @@ func (s *Backup) SetResourceARN(v string) *Backup { return s } +// SetResourceType sets the ResourceType field's value. +func (s *Backup) SetResourceType(v string) *Backup { + s.ResourceType = &v + return s +} + // SetSourceBackupId sets the SourceBackupId field's value. func (s *Backup) SetSourceBackupId(v string) *Backup { s.SourceBackupId = &v @@ -2864,6 +3935,12 @@ func (s *Backup) SetType(v string) *Backup { return s } +// SetVolume sets the Volume field's value. +func (s *Backup) SetVolume(v *Volume) *Backup { + s.Volume = v + return s +} + // You can't delete a backup while it's being copied. type BackupBeingCopied struct { _ struct{} `type:"structure"` @@ -3362,7 +4439,7 @@ type CopyBackupInput struct { // (Optional) An idempotency token for resource creation, in a string of up // to 64 ASCII characters. This token is automatically filled on your behalf - // when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK. + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` // A boolean flag indicating whether tags from the source backup should be copied @@ -3376,13 +4453,14 @@ type CopyBackupInput struct { // precedence. CopyTags *bool `type:"boolean"` - // The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the - // file system's data for Amazon FSx for Windows File Server file systems and - // Amazon FSx for Lustre PERSISTENT_1 file systems at rest. In either case, - // if not specified, the Amazon FSx managed key is used. The Amazon FSx for - // Lustre SCRATCH_1 and SCRATCH_2 file systems are always encrypted at rest - // using Amazon FSx managed keys. For more information, see Encrypt (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) - // in the AWS Key Management Service API Reference. + // The ID of the Key Management Service (KMS) key used to encrypt the file system's + // data for Amazon FSx for Windows File Server file systems, Amazon FSx for + // NetApp ONTAP file systems, and Amazon FSx for Lustre PERSISTENT_1 file systems + // at rest. If not specified, the Amazon FSx managed key is used. The Amazon + // FSx for Lustre SCRATCH_1 and SCRATCH_2 file systems are always encrypted + // at rest using Amazon FSx managed keys. For more information, see Encrypt + // (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) in + // the Key Management Service API Reference. KmsKeyId *string `min:"1" type:"string"` // The ID of the source backup. Specifies the ID of the backup that is being @@ -3391,10 +4469,11 @@ type CopyBackupInput struct { // SourceBackupId is a required field SourceBackupId *string `min:"12" type:"string" required:"true"` - // The source AWS Region of the backup. Specifies the AWS Region from which - // the backup is being copied. The source and destination Regions must be in - // the same AWS partition. If you don't specify a Region, it defaults to the - // Region where the request is sent from (in-Region copy). + // The source Amazon Web Services Region of the backup. Specifies the Amazon + // Web Services Region from which the backup is being copied. The source and + // destination Regions must be in the same Amazon Web Services partition. If + // you don't specify a Region, it defaults to the Region where the request is + // sent from (in-Region copy). SourceRegion *string `min:"1" type:"string"` // A list of Tag values, with a maximum of 50 elements. @@ -3488,7 +4567,8 @@ func (s *CopyBackupInput) SetTags(v []*Tag) *CopyBackupInput { type CopyBackupOutput struct { _ struct{} `type:"structure"` - // A backup of an Amazon FSx file system. + // A backup of an Amazon FSx for Windows File Server or Amazon FSx for Lustre + // file system, or of an Amazon FSx for NetApp ONTAP volume. Backup *Backup `type:"structure"` } @@ -3514,13 +4594,11 @@ type CreateBackupInput struct { // (Optional) A string of up to 64 ASCII characters that Amazon FSx uses to // ensure idempotent creation. This string is automatically filled on your behalf - // when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK. + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` // The ID of the file system to back up. - // - // FileSystemId is a required field - FileSystemId *string `min:"11" type:"string" required:"true"` + FileSystemId *string `min:"11" type:"string"` // (Optional) The tags to apply to the backup at backup creation. The key value // of the Name tag appears in the console as the backup name. If you have set @@ -3528,6 +4606,9 @@ type CreateBackupInput struct { // action, no existing file system tags are copied from the file system to the // backup. Tags []*Tag `min:"1" type:"list"` + + // The ID of he FSx for NetApp ONTAP volume to back up. + VolumeId *string `min:"23" type:"string"` } // String returns the string representation @@ -3546,15 +4627,15 @@ func (s *CreateBackupInput) Validate() error { if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.FileSystemId == nil { - invalidParams.Add(request.NewErrParamRequired("FileSystemId")) - } if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } + if s.VolumeId != nil && len(*s.VolumeId) < 23 { + invalidParams.Add(request.NewErrParamMinLen("VolumeId", 23)) + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -3590,6 +4671,12 @@ func (s *CreateBackupInput) SetTags(v []*Tag) *CreateBackupInput { return s } +// SetVolumeId sets the VolumeId field's value. +func (s *CreateBackupInput) SetVolumeId(v string) *CreateBackupInput { + s.VolumeId = &v + return s +} + // The response object for the CreateBackup operation. type CreateBackupOutput struct { _ struct{} `type:"structure"` @@ -3619,7 +4706,7 @@ type CreateDataRepositoryTaskInput struct { // (Optional) An idempotency token for resource creation, in a string of up // to 64 ASCII characters. This token is automatically filled on your behalf - // when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK. + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` // The globally unique ID of the file system, assigned by Amazon FSx. @@ -3775,16 +4862,17 @@ type CreateFileSystemFromBackupInput struct { // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent // creation. This string is automatically filled on your behalf when you use - // the AWS Command Line Interface (AWS CLI) or an AWS SDK. + // the Command Line Interface (CLI) or an Amazon Web Services SDK. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - // The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the - // file system's data for Amazon FSx for Windows File Server file systems and - // Amazon FSx for Lustre PERSISTENT_1 file systems at rest. In either case, - // if not specified, the Amazon FSx managed key is used. The Amazon FSx for - // Lustre SCRATCH_1 and SCRATCH_2 file systems are always encrypted at rest - // using Amazon FSx managed keys. For more information, see Encrypt (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) - // in the AWS Key Management Service API Reference. + // The ID of the Key Management Service (KMS) key used to encrypt the file system's + // data for Amazon FSx for Windows File Server file systems, Amazon FSx for + // NetApp ONTAP file systems, and Amazon FSx for Lustre PERSISTENT_1 file systems + // at rest. If not specified, the Amazon FSx managed key is used. The Amazon + // FSx for Lustre SCRATCH_1 and SCRATCH_2 file systems are always encrypted + // at rest using Amazon FSx managed keys. For more information, see Encrypt + // (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) in + // the Key Management Service API Reference. KmsKeyId *string `min:"1" type:"string"` // The Lustre configuration for the file system being created. @@ -3977,26 +5065,32 @@ type CreateFileSystemInput struct { // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent // creation. This string is automatically filled on your behalf when you use - // the AWS Command Line Interface (AWS CLI) or an AWS SDK. + // the Command Line Interface (CLI) or an Amazon Web Services SDK. ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - // The type of Amazon FSx file system to create, either WINDOWS or LUSTRE. + // The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, + // and ONTAP. // // FileSystemType is a required field FileSystemType *string `type:"string" required:"true" enum:"FileSystemType"` - // The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the - // file system's data for Amazon FSx for Windows File Server file systems and - // Amazon FSx for Lustre PERSISTENT_1 file systems at rest. In either case, - // if not specified, the Amazon FSx managed key is used. The Amazon FSx for - // Lustre SCRATCH_1 and SCRATCH_2 file systems are always encrypted at rest - // using Amazon FSx managed keys. For more information, see Encrypt (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) - // in the AWS Key Management Service API Reference. + // The ID of the Key Management Service (KMS) key used to encrypt the file system's + // data for Amazon FSx for Windows File Server file systems, Amazon FSx for + // NetApp ONTAP file systems, and Amazon FSx for Lustre PERSISTENT_1 file systems + // at rest. If not specified, the Amazon FSx managed key is used. The Amazon + // FSx for Lustre SCRATCH_1 and SCRATCH_2 file systems are always encrypted + // at rest using Amazon FSx managed keys. For more information, see Encrypt + // (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) in + // the Key Management Service API Reference. KmsKeyId *string `min:"1" type:"string"` // The Lustre configuration for the file system being created. LustreConfiguration *CreateFileSystemLustreConfiguration `type:"structure"` + // The ONTAP configuration properties of the FSx for NetApp ONTAP file system + // that you are creating. + OntapConfiguration *CreateFileSystemOntapConfiguration `type:"structure"` + // A list of IDs specifying the security groups to apply to all network interfaces // created for file system access. This list isn't returned in later requests // to describe the file system. @@ -4022,6 +5116,10 @@ type CreateFileSystemInput struct { // // * If StorageType=HDD, valid values are 2000 GiB - 65,536 GiB (64 TiB). // + // For ONTAP file systems: + // + // * Valid values are 1024 GiB - 196,608 GiB (192 TiB). + // // StorageCapacity is a required field StorageCapacity *int64 `type:"integer" required:"true"` @@ -4029,7 +5127,7 @@ type CreateFileSystemInput struct { // SSD and HDD. // // * Set to SSD to use solid state drive storage. SSD is supported on all - // Windows and Lustre deployment types. + // Windows, Lustre, and ONTAP deployment types. // // * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 // and MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT @@ -4041,11 +5139,15 @@ type CreateFileSystemInput struct { StorageType *string `type:"string" enum:"StorageType"` // Specifies the IDs of the subnets that the file system will be accessible - // from. For Windows MULTI_AZ_1 file system deployment types, provide exactly - // two subnet IDs, one for the preferred file server and one for the standby - // file server. You specify one of these subnets as the preferred subnet using - // the WindowsConfiguration > PreferredSubnetID property. For more information, - // see Availability and durability: Single-AZ and Multi-AZ file systems (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/high-availability-multiAZ.html). + // from. For Windows and ONTAP MULTI_AZ_1 file system deployment types, provide + // exactly two subnet IDs, one for the preferred file server and one for the + // standby file server. You specify one of these subnets as the preferred subnet + // using the WindowsConfiguration > PreferredSubnetID or OntapConfiguration + // > PreferredSubnetID properties. For more information, see Availability and + // durability: Single-AZ and Multi-AZ file systems (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/high-availability-multiAZ.html) + // in the Amazon FSx for Windows User Guide and Availability and durability + // (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/high-availability-multiAZ.html) + // in the Amazon FSx for ONTAP User Guide. // // For Windows SINGLE_AZ_1 and SINGLE_AZ_2 file system deployment types and // Lustre file systems, provide exactly one subnet ID. The file server is launched @@ -4098,6 +5200,11 @@ func (s *CreateFileSystemInput) Validate() error { invalidParams.AddNested("LustreConfiguration", err.(request.ErrInvalidParams)) } } + if s.OntapConfiguration != nil { + if err := s.OntapConfiguration.Validate(); err != nil { + invalidParams.AddNested("OntapConfiguration", err.(request.ErrInvalidParams)) + } + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -4144,6 +5251,12 @@ func (s *CreateFileSystemInput) SetLustreConfiguration(v *CreateFileSystemLustre return s } +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *CreateFileSystemInput) SetOntapConfiguration(v *CreateFileSystemOntapConfiguration) *CreateFileSystemInput { + s.OntapConfiguration = v + return s +} + // SetSecurityGroupIds sets the SecurityGroupIds field's value. func (s *CreateFileSystemInput) SetSecurityGroupIds(v []*string) *CreateFileSystemInput { s.SecurityGroupIds = v @@ -4254,8 +5367,8 @@ type CreateFileSystemLustreConfiguration struct { // (Default = SCRATCH_1) // // Encryption of data in-transit for SCRATCH_2 and PERSISTENT_1 deployment types - // is supported when accessed from supported instance types in supported AWS - // Regions. To learn more, Encrypting Data in Transit (https://docs.aws.amazon.com/fsx/latest/LustreGuide/encryption-in-transit-fsxl.html). + // is supported when accessed from supported instance types in supported Amazon + // Web Services Regions. To learn more, Encrypting Data in Transit (https://docs.aws.amazon.com/fsx/latest/LustreGuide/encryption-in-transit-fsxl.html). DeploymentType *string `type:"string" enum:"LustreDeploymentType"` // The type of drive cache used by PERSISTENT_1 file systems that are provisioned @@ -4427,37 +5540,203 @@ func (s *CreateFileSystemLustreConfiguration) SetWeeklyMaintenanceStartTime(v st return s } -// The response object returned after the file system is created. -type CreateFileSystemOutput struct { +// The ONTAP configuration properties of the FSx for NetApp ONTAP file system +// that you are creating. +type CreateFileSystemOntapConfiguration struct { _ struct{} `type:"structure"` - // The configuration of the file system that was created. - FileSystem *FileSystem `type:"structure"` + // The number of days to retain automatic backups. Setting this to 0 disables + // automatic backups. You can retain automatic backups for a maximum of 90 days. + // The default is 0. + AutomaticBackupRetentionDays *int64 `type:"integer"` + + // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of + // the day (0-23), and MM is the zero-padded minute of the hour. For example, + // 05:00 specifies 5 AM daily. + DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + + // Specifies the ONTAP file system deployment type to use in creating the file + // system. + // + // DeploymentType is a required field + DeploymentType *string `type:"string" required:"true" enum:"OntapDeploymentType"` + + // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. + DiskIopsConfiguration *DiskIopsConfiguration `type:"structure"` + + // Specifies the IP address range in which the endpoints to access your file + // system will be created. By default, Amazon FSx selects an unused IP address + // range for you from the 198.19.* range. + EndpointIpAddressRange *string `min:"9" type:"string"` + + // The ONTAP administrative password for the fsxadmin user that you can use + // to administer your file system using the ONTAP CLI and REST API. + FsxAdminPassword *string `min:"8" type:"string" sensitive:"true"` + + // The ID for a subnet. A subnet is a range of IP addresses in your virtual + // private cloud (VPC). For more information, see VPC and Subnets (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) + // in the Amazon VPC User Guide. + PreferredSubnetId *string `min:"15" type:"string"` + + // Specifies the VPC route tables in which your file system's endpoints will + // be created. You should specify all VPC route tables associated with the subnets + // in which your clients are located. By default, Amazon FSx selects your VPC's + // default route table. + RouteTableIds []*string `type:"list"` + + // Sustained throughput of an Amazon FSx file system in MBps. + // + // ThroughputCapacity is a required field + ThroughputCapacity *int64 `min:"8" type:"integer" required:"true"` + + // A recurring weekly time, in the format D:HH:MM. + // + // D is the day of the week, for which 1 represents Monday and 7 represents + // Sunday. For further details, see the ISO-8601 spec as described on Wikipedia + // (https://en.wikipedia.org/wiki/ISO_week_date). + // + // HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute + // of the hour. + // + // For example, 1:05:00 specifies maintenance at 5 AM Monday. + WeeklyMaintenanceStartTime *string `min:"7" type:"string"` } // String returns the string representation -func (s CreateFileSystemOutput) String() string { +func (s CreateFileSystemOntapConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateFileSystemOutput) GoString() string { +func (s CreateFileSystemOntapConfiguration) GoString() string { return s.String() } -// SetFileSystem sets the FileSystem field's value. -func (s *CreateFileSystemOutput) SetFileSystem(v *FileSystem) *CreateFileSystemOutput { - s.FileSystem = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateFileSystemOntapConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateFileSystemOntapConfiguration"} + if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { + invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) + } + if s.DeploymentType == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentType")) + } + if s.EndpointIpAddressRange != nil && len(*s.EndpointIpAddressRange) < 9 { + invalidParams.Add(request.NewErrParamMinLen("EndpointIpAddressRange", 9)) + } + if s.FsxAdminPassword != nil && len(*s.FsxAdminPassword) < 8 { + invalidParams.Add(request.NewErrParamMinLen("FsxAdminPassword", 8)) + } + if s.PreferredSubnetId != nil && len(*s.PreferredSubnetId) < 15 { + invalidParams.Add(request.NewErrParamMinLen("PreferredSubnetId", 15)) + } + if s.ThroughputCapacity == nil { + invalidParams.Add(request.NewErrParamRequired("ThroughputCapacity")) + } + if s.ThroughputCapacity != nil && *s.ThroughputCapacity < 8 { + invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacity", 8)) + } + if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { + invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// The configuration object for the Microsoft Windows file system used in CreateFileSystem -// and CreateFileSystemFromBackup operations. -type CreateFileSystemWindowsConfiguration struct { - _ struct{} `type:"structure"` +// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. +func (s *CreateFileSystemOntapConfiguration) SetAutomaticBackupRetentionDays(v int64) *CreateFileSystemOntapConfiguration { + s.AutomaticBackupRetentionDays = &v + return s +} - // The ID for an existing AWS Managed Microsoft Active Directory (AD) instance - // that the file system should join when it's created. +// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. +func (s *CreateFileSystemOntapConfiguration) SetDailyAutomaticBackupStartTime(v string) *CreateFileSystemOntapConfiguration { + s.DailyAutomaticBackupStartTime = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *CreateFileSystemOntapConfiguration) SetDeploymentType(v string) *CreateFileSystemOntapConfiguration { + s.DeploymentType = &v + return s +} + +// SetDiskIopsConfiguration sets the DiskIopsConfiguration field's value. +func (s *CreateFileSystemOntapConfiguration) SetDiskIopsConfiguration(v *DiskIopsConfiguration) *CreateFileSystemOntapConfiguration { + s.DiskIopsConfiguration = v + return s +} + +// SetEndpointIpAddressRange sets the EndpointIpAddressRange field's value. +func (s *CreateFileSystemOntapConfiguration) SetEndpointIpAddressRange(v string) *CreateFileSystemOntapConfiguration { + s.EndpointIpAddressRange = &v + return s +} + +// SetFsxAdminPassword sets the FsxAdminPassword field's value. +func (s *CreateFileSystemOntapConfiguration) SetFsxAdminPassword(v string) *CreateFileSystemOntapConfiguration { + s.FsxAdminPassword = &v + return s +} + +// SetPreferredSubnetId sets the PreferredSubnetId field's value. +func (s *CreateFileSystemOntapConfiguration) SetPreferredSubnetId(v string) *CreateFileSystemOntapConfiguration { + s.PreferredSubnetId = &v + return s +} + +// SetRouteTableIds sets the RouteTableIds field's value. +func (s *CreateFileSystemOntapConfiguration) SetRouteTableIds(v []*string) *CreateFileSystemOntapConfiguration { + s.RouteTableIds = v + return s +} + +// SetThroughputCapacity sets the ThroughputCapacity field's value. +func (s *CreateFileSystemOntapConfiguration) SetThroughputCapacity(v int64) *CreateFileSystemOntapConfiguration { + s.ThroughputCapacity = &v + return s +} + +// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. +func (s *CreateFileSystemOntapConfiguration) SetWeeklyMaintenanceStartTime(v string) *CreateFileSystemOntapConfiguration { + s.WeeklyMaintenanceStartTime = &v + return s +} + +// The response object returned after the file system is created. +type CreateFileSystemOutput struct { + _ struct{} `type:"structure"` + + // The configuration of the file system that was created. + FileSystem *FileSystem `type:"structure"` +} + +// String returns the string representation +func (s CreateFileSystemOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateFileSystemOutput) GoString() string { + return s.String() +} + +// SetFileSystem sets the FileSystem field's value. +func (s *CreateFileSystemOutput) SetFileSystem(v *FileSystem) *CreateFileSystemOutput { + s.FileSystem = v + return s +} + +// The configuration object for the Microsoft Windows file system used in CreateFileSystem +// and CreateFileSystemFromBackup operations. +type CreateFileSystemWindowsConfiguration struct { + _ struct{} `type:"structure"` + + // The ID for an existing Amazon Web Services Managed Microsoft Active Directory + // (AD) instance that the file system should join when it's created. ActiveDirectoryId *string `min:"12" type:"string"` // An array of one or more DNS alias names that you want to associate with the @@ -4518,8 +5797,9 @@ type CreateFileSystemWindowsConfiguration struct { // // * MULTI_AZ_1 - Deploys a high availability file system that is configured // for Multi-AZ redundancy to tolerate temporary Availability Zone (AZ) unavailability. - // You can only deploy a Multi-AZ file system in AWS Regions that have a - // minimum of three Availability Zones. Also supports HDD storage type + // You can only deploy a Multi-AZ file system in Amazon Web Services Regions + // that have a minimum of three Availability Zones. Also supports HDD storage + // type // // * SINGLE_AZ_1 - (Default) Choose to deploy a file system that is configured // for single AZ redundancy. @@ -4533,16 +5813,18 @@ type CreateFileSystemWindowsConfiguration struct { DeploymentType *string `type:"string" enum:"WindowsDeploymentType"` // Required when DeploymentType is set to MULTI_AZ_1. This specifies the subnet - // in which you want the preferred file server to be located. For in-AWS applications, - // we recommend that you launch your clients in the same Availability Zone (AZ) - // as your preferred file server to reduce cross-AZ data transfer costs and - // minimize latency. + // in which you want the preferred file server to be located. For in-Amazon + // Web Services applications, we recommend that you launch your clients in the + // same Availability Zone (AZ) as your preferred file server to reduce cross-AZ + // data transfer costs and minimize latency. PreferredSubnetId *string `min:"15" type:"string"` - // The configuration that Amazon FSx uses to join the Windows File Server instance - // to your self-managed (including on-premises) Microsoft Active Directory (AD) - // directory. For more information, see Using Amazon FSx with your self-managed - // Microsoft Active Directory (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html). + // The configuration that Amazon FSx uses to join a Amazon FSx for Windows File + // Server file system or an ONTAP storage virtual machine (SVM) to a self-managed + // (including on-premises) Microsoft Active Directory (AD) directory. For more + // information, see Using Amazon FSx with your self-managed Microsoft Active + // Directory (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html) + // or Managing SVMs (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html). SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfiguration `type:"structure"` // The throughput of an Amazon FSx file system, measured in megabytes per second, @@ -4671,661 +5953,1282 @@ func (s *CreateFileSystemWindowsConfiguration) SetWeeklyMaintenanceStartTime(v s return s } -// The data repository configuration object for Lustre file systems returned -// in the response of the CreateFileSystem operation. -type DataRepositoryConfiguration struct { +// Specifies the configuration of the ONTAP volume that you are creating. +type CreateOntapVolumeConfiguration struct { _ struct{} `type:"structure"` - // Describes the file system's linked S3 data repository's AutoImportPolicy. - // The AutoImportPolicy configures how Amazon FSx keeps your file and directory - // listings up to date as you add or modify objects in your linked S3 bucket. - // AutoImportPolicy can have the following values: + // Specifies the location in the SVM's namespace where the volume is mounted. + // The JunctionPath must have a leading forward slash, such as /vol3. // - // * NONE - (Default) AutoImport is off. Amazon FSx only updates file and - // directory listings from the linked S3 bucket when the file system is created. - // FSx does not update file and directory listings for any new or changed - // objects after choosing this option. + // JunctionPath is a required field + JunctionPath *string `min:"1" type:"string" required:"true"` + + // The security style for the volume. Specify one of the following values: // - // * NEW - AutoImport is on. Amazon FSx automatically imports directory listings - // of any new objects added to the linked S3 bucket that do not currently - // exist in the FSx file system. + // * UNIX if the file system is managed by a UNIX administrator, the majority + // of users are NFS clients, and an application accessing the data uses a + // UNIX user as the service account. UNIX is the default. // - // * NEW_CHANGED - AutoImport is on. Amazon FSx automatically imports file - // and directory listings of any new objects added to the S3 bucket and any - // existing objects that are changed in the S3 bucket after you choose this - // option. + // * NTFS if the file system is managed by a Windows administrator, the majority + // of users are SMB clients, and an application accessing the data uses a + // Windows user as the service account. // - // For more information, see Automatically import updates from your S3 bucket - // (https://docs.aws.amazon.com/fsx/latest/LustreGuide/autoimport-data-repo.html). - AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` - - // The export path to the Amazon S3 bucket (and prefix) that you are using to - // store new and changed Lustre file system files in S3. - ExportPath *string `min:"3" type:"string"` - - // Provides detailed information about the data respository if its Lifecycle - // is set to MISCONFIGURED. - FailureDetails *DataRepositoryFailureDetails `type:"structure"` - - // The import path to the Amazon S3 bucket (and optional prefix) that you're - // using as the data repository for your FSx for Lustre file system, for example - // s3://import-bucket/optional-prefix. If a prefix is specified after the Amazon - // S3 bucket name, only object keys with that prefix are loaded into the file - // system. - ImportPath *string `min:"3" type:"string"` + // * MIXED if the file system is managed by both UNIX and Windows administrators + // and users consist of both NFS and SMB clients. + SecurityStyle *string `type:"string" enum:"SecurityStyle"` - // For files imported from a data repository, this value determines the stripe - // count and maximum amount of data per file (in MiB) stored on a single physical - // disk. The maximum number of disks that a single file can be striped across - // is limited by the total number of disks that make up the file system. + // Specifies the size of the volume, in megabytes (MB), that you are creating. // - // The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 - // MiB (500 GiB). Amazon S3 objects have a maximum size of 5 TB. - ImportedFileChunkSize *int64 `min:"1" type:"integer"` + // SizeInMegabytes is a required field + SizeInMegabytes *int64 `type:"integer" required:"true"` - // Describes the state of the file system's S3 durable data repository, if it - // is configured with an S3 repository. The lifecycle can have the following - // values: - // - // * CREATING - The data repository configuration between the FSx file system - // and the linked S3 data repository is being created. The data repository - // is unavailable. - // - // * AVAILABLE - The data repository is available for use. + // Set to true to enable deduplication, compression, and compaction storage + // efficiency features on the volume. // - // * MISCONFIGURED - Amazon FSx cannot automatically import updates from - // the S3 bucket until the data repository configuration is corrected. For - // more information, see Troubleshooting a Misconfigured linked S3 bucket - // (https://docs.aws.amazon.com/fsx/latest/LustreGuide/troubleshooting.html#troubleshooting-misconfigured-data-repository). + // StorageEfficiencyEnabled is a required field + StorageEfficiencyEnabled *bool `type:"boolean" required:"true"` + + // Specifies the ONTAP SVM in which to create the volume. // - // * UPDATING - The data repository is undergoing a customer initiated update - // and availability may be impacted. - Lifecycle *string `type:"string" enum:"DataRepositoryLifecycle"` + // StorageVirtualMachineId is a required field + StorageVirtualMachineId *string `min:"21" type:"string" required:"true"` + + // Describes the data tiering policy for an ONTAP volume. When enabled, Amazon + // FSx for ONTAP's intelligent tiering automatically transitions a volume's + // data between the file system's primary storage and capacity pool storage + // based on your access patterns. + TieringPolicy *TieringPolicy `type:"structure"` } // String returns the string representation -func (s DataRepositoryConfiguration) String() string { +func (s CreateOntapVolumeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryConfiguration) GoString() string { +func (s CreateOntapVolumeConfiguration) GoString() string { return s.String() } -// SetAutoImportPolicy sets the AutoImportPolicy field's value. -func (s *DataRepositoryConfiguration) SetAutoImportPolicy(v string) *DataRepositoryConfiguration { - s.AutoImportPolicy = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateOntapVolumeConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateOntapVolumeConfiguration"} + if s.JunctionPath == nil { + invalidParams.Add(request.NewErrParamRequired("JunctionPath")) + } + if s.JunctionPath != nil && len(*s.JunctionPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JunctionPath", 1)) + } + if s.SizeInMegabytes == nil { + invalidParams.Add(request.NewErrParamRequired("SizeInMegabytes")) + } + if s.StorageEfficiencyEnabled == nil { + invalidParams.Add(request.NewErrParamRequired("StorageEfficiencyEnabled")) + } + if s.StorageVirtualMachineId == nil { + invalidParams.Add(request.NewErrParamRequired("StorageVirtualMachineId")) + } + if s.StorageVirtualMachineId != nil && len(*s.StorageVirtualMachineId) < 21 { + invalidParams.Add(request.NewErrParamMinLen("StorageVirtualMachineId", 21)) + } + if s.TieringPolicy != nil { + if err := s.TieringPolicy.Validate(); err != nil { + invalidParams.AddNested("TieringPolicy", err.(request.ErrInvalidParams)) + } + } -// SetExportPath sets the ExportPath field's value. -func (s *DataRepositoryConfiguration) SetExportPath(v string) *DataRepositoryConfiguration { - s.ExportPath = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetFailureDetails sets the FailureDetails field's value. -func (s *DataRepositoryConfiguration) SetFailureDetails(v *DataRepositoryFailureDetails) *DataRepositoryConfiguration { - s.FailureDetails = v +// SetJunctionPath sets the JunctionPath field's value. +func (s *CreateOntapVolumeConfiguration) SetJunctionPath(v string) *CreateOntapVolumeConfiguration { + s.JunctionPath = &v return s } -// SetImportPath sets the ImportPath field's value. -func (s *DataRepositoryConfiguration) SetImportPath(v string) *DataRepositoryConfiguration { - s.ImportPath = &v +// SetSecurityStyle sets the SecurityStyle field's value. +func (s *CreateOntapVolumeConfiguration) SetSecurityStyle(v string) *CreateOntapVolumeConfiguration { + s.SecurityStyle = &v return s } -// SetImportedFileChunkSize sets the ImportedFileChunkSize field's value. -func (s *DataRepositoryConfiguration) SetImportedFileChunkSize(v int64) *DataRepositoryConfiguration { - s.ImportedFileChunkSize = &v +// SetSizeInMegabytes sets the SizeInMegabytes field's value. +func (s *CreateOntapVolumeConfiguration) SetSizeInMegabytes(v int64) *CreateOntapVolumeConfiguration { + s.SizeInMegabytes = &v return s } -// SetLifecycle sets the Lifecycle field's value. -func (s *DataRepositoryConfiguration) SetLifecycle(v string) *DataRepositoryConfiguration { - s.Lifecycle = &v +// SetStorageEfficiencyEnabled sets the StorageEfficiencyEnabled field's value. +func (s *CreateOntapVolumeConfiguration) SetStorageEfficiencyEnabled(v bool) *CreateOntapVolumeConfiguration { + s.StorageEfficiencyEnabled = &v return s } -// Provides detailed information about the data respository if its Lifecycle -// is set to MISCONFIGURED. -type DataRepositoryFailureDetails struct { - _ struct{} `type:"structure"` - - // A detailed error message. - Message *string `min:"1" type:"string"` -} - -// String returns the string representation -func (s DataRepositoryFailureDetails) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DataRepositoryFailureDetails) GoString() string { - return s.String() +// SetStorageVirtualMachineId sets the StorageVirtualMachineId field's value. +func (s *CreateOntapVolumeConfiguration) SetStorageVirtualMachineId(v string) *CreateOntapVolumeConfiguration { + s.StorageVirtualMachineId = &v + return s } -// SetMessage sets the Message field's value. -func (s *DataRepositoryFailureDetails) SetMessage(v string) *DataRepositoryFailureDetails { - s.Message = &v +// SetTieringPolicy sets the TieringPolicy field's value. +func (s *CreateOntapVolumeConfiguration) SetTieringPolicy(v *TieringPolicy) *CreateOntapVolumeConfiguration { + s.TieringPolicy = v return s } -// A description of the data repository task. You use data repository tasks -// to perform bulk transfer operations between your Amazon FSx file system and -// its linked data repository. -type DataRepositoryTask struct { +type CreateStorageVirtualMachineInput struct { _ struct{} `type:"structure"` - // The time that the resource was created, in seconds (since 1970-01-01T00:00:00Z), - // also known as Unix time. - // - // CreationTime is a required field - CreationTime *time.Time `type:"timestamp" required:"true"` - - // The time that Amazon FSx completed processing the task, populated after the - // task is complete. - EndTime *time.Time `type:"timestamp"` + // Describes the self-managed Microsoft Active Directory to which you want to + // join the SVM. Joining an Active Directory provides user authentication and + // access control for SMB clients, including Microsoft Windows and macOS client + // accessing the file system. + ActiveDirectoryConfiguration *CreateSvmActiveDirectoryConfiguration `type:"structure"` - // Failure message describing why the task failed, it is populated only when - // Lifecycle is set to FAILED. - FailureDetails *DataRepositoryTaskFailureDetails `type:"structure"` + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` // The globally unique ID of the file system, assigned by Amazon FSx. // // FileSystemId is a required field FileSystemId *string `min:"11" type:"string" required:"true"` - // The lifecycle status of the data repository task, as follows: - // - // * PENDING - Amazon FSx has not started the task. + // The name of the SVM. // - // * EXECUTING - Amazon FSx is processing the task. - // - // * FAILED - Amazon FSx was not able to complete the task. For example, - // there may be files the task failed to process. The DataRepositoryTaskFailureDetails - // property provides more information about task failures. - // - // * SUCCEEDED - FSx completed the task successfully. - // - // * CANCELED - Amazon FSx canceled the task and it did not complete. - // - // * CANCELING - FSx is in process of canceling the task. + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The security style of the root volume of the SVM. Specify one of the following + // values: // - // You cannot delete an FSx for Lustre file system if there are data repository - // tasks for the file system in the PENDING or EXECUTING states. Please retry - // when the data repository task is finished (with a status of CANCELED, SUCCEEDED, - // or FAILED). You can use the DescribeDataRepositoryTask action to monitor - // the task status. Contact the FSx team if you need to delete your file system - // immediately. + // * UNIX if the file system is managed by a UNIX administrator, the majority + // of users are NFS clients, and an application accessing the data uses a + // UNIX user as the service account. // - // Lifecycle is a required field - Lifecycle *string `type:"string" required:"true" enum:"DataRepositoryTaskLifecycle"` - - // An array of paths on the Amazon FSx for Lustre file system that specify the - // data for the data repository task to process. For example, in an EXPORT_TO_REPOSITORY - // task, the paths specify which data to export to the linked data repository. + // * NTFS if the file system is managed by a Windows administrator, the majority + // of users are SMB clients, and an application accessing the data uses a + // Windows user as the service account. // - // (Default) If Paths is not specified, Amazon FSx uses the file system root - // directory. - Paths []*string `type:"list"` - - // Provides a report detailing the data repository task results of the files - // processed that match the criteria specified in the report Scope parameter. - // FSx delivers the report to the file system's linked data repository in Amazon - // S3, using the path specified in the report Path parameter. You can specify - // whether or not a report gets generated for a task using the Enabled parameter. - Report *CompletionReport `type:"structure"` - - // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify - // AWS resources. We require an ARN when you need to specify a resource unambiguously - // across all of AWS. For more information, see Amazon Resource Names (ARNs) - // and AWS Service Namespaces (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // in the AWS General Reference. - ResourceARN *string `min:"8" type:"string"` - - // The time that Amazon FSx began processing the task. - StartTime *time.Time `type:"timestamp"` + // * MIXED if the file system is managed by both UNIX and Windows administrators + // and users consist of both NFS and SMB clients. + RootVolumeSecurityStyle *string `type:"string" enum:"StorageVirtualMachineRootVolumeSecurityStyle"` - // Provides the status of the number of files that the task has processed successfully - // and failed to process. - Status *DataRepositoryTaskStatus `type:"structure"` + // The password to use when managing the SVM using the NetApp ONTAP CLI or REST + // API. If you do not specify a password, you can still use the file system's + // fsxadmin user to manage the SVM. + SvmAdminPassword *string `min:"8" type:"string" sensitive:"true"` // A list of Tag values, with a maximum of 50 elements. Tags []*Tag `min:"1" type:"list"` - - // The system-generated, unique 17-digit ID of the data repository task. - // - // TaskId is a required field - TaskId *string `min:"12" type:"string" required:"true"` - - // The type of data repository task; EXPORT_TO_REPOSITORY is the only type currently - // supported. - // - // Type is a required field - Type *string `type:"string" required:"true" enum:"DataRepositoryTaskType"` -} +} // String returns the string representation -func (s DataRepositoryTask) String() string { +func (s CreateStorageVirtualMachineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryTask) GoString() string { +func (s CreateStorageVirtualMachineInput) GoString() string { return s.String() } -// SetCreationTime sets the CreationTime field's value. -func (s *DataRepositoryTask) SetCreationTime(v time.Time) *DataRepositoryTask { - s.CreationTime = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateStorageVirtualMachineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateStorageVirtualMachineInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SvmAdminPassword != nil && len(*s.SvmAdminPassword) < 8 { + invalidParams.Add(request.NewErrParamMinLen("SvmAdminPassword", 8)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ActiveDirectoryConfiguration != nil { + if err := s.ActiveDirectoryConfiguration.Validate(); err != nil { + invalidParams.AddNested("ActiveDirectoryConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetEndTime sets the EndTime field's value. -func (s *DataRepositoryTask) SetEndTime(v time.Time) *DataRepositoryTask { - s.EndTime = &v +// SetActiveDirectoryConfiguration sets the ActiveDirectoryConfiguration field's value. +func (s *CreateStorageVirtualMachineInput) SetActiveDirectoryConfiguration(v *CreateSvmActiveDirectoryConfiguration) *CreateStorageVirtualMachineInput { + s.ActiveDirectoryConfiguration = v return s } -// SetFailureDetails sets the FailureDetails field's value. -func (s *DataRepositoryTask) SetFailureDetails(v *DataRepositoryTaskFailureDetails) *DataRepositoryTask { - s.FailureDetails = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateStorageVirtualMachineInput) SetClientRequestToken(v string) *CreateStorageVirtualMachineInput { + s.ClientRequestToken = &v return s } // SetFileSystemId sets the FileSystemId field's value. -func (s *DataRepositoryTask) SetFileSystemId(v string) *DataRepositoryTask { +func (s *CreateStorageVirtualMachineInput) SetFileSystemId(v string) *CreateStorageVirtualMachineInput { s.FileSystemId = &v return s } -// SetLifecycle sets the Lifecycle field's value. -func (s *DataRepositoryTask) SetLifecycle(v string) *DataRepositoryTask { - s.Lifecycle = &v +// SetName sets the Name field's value. +func (s *CreateStorageVirtualMachineInput) SetName(v string) *CreateStorageVirtualMachineInput { + s.Name = &v return s } -// SetPaths sets the Paths field's value. -func (s *DataRepositoryTask) SetPaths(v []*string) *DataRepositoryTask { - s.Paths = v +// SetRootVolumeSecurityStyle sets the RootVolumeSecurityStyle field's value. +func (s *CreateStorageVirtualMachineInput) SetRootVolumeSecurityStyle(v string) *CreateStorageVirtualMachineInput { + s.RootVolumeSecurityStyle = &v return s } -// SetReport sets the Report field's value. -func (s *DataRepositoryTask) SetReport(v *CompletionReport) *DataRepositoryTask { - s.Report = v +// SetSvmAdminPassword sets the SvmAdminPassword field's value. +func (s *CreateStorageVirtualMachineInput) SetSvmAdminPassword(v string) *CreateStorageVirtualMachineInput { + s.SvmAdminPassword = &v return s } -// SetResourceARN sets the ResourceARN field's value. -func (s *DataRepositoryTask) SetResourceARN(v string) *DataRepositoryTask { - s.ResourceARN = &v +// SetTags sets the Tags field's value. +func (s *CreateStorageVirtualMachineInput) SetTags(v []*Tag) *CreateStorageVirtualMachineInput { + s.Tags = v return s } -// SetStartTime sets the StartTime field's value. -func (s *DataRepositoryTask) SetStartTime(v time.Time) *DataRepositoryTask { - s.StartTime = &v - return s -} +type CreateStorageVirtualMachineOutput struct { + _ struct{} `type:"structure"` -// SetStatus sets the Status field's value. -func (s *DataRepositoryTask) SetStatus(v *DataRepositoryTaskStatus) *DataRepositoryTask { - s.Status = v - return s + // Returned after a successful CreateStorageVirtualMachine operation; describes + // the SVM just created. + StorageVirtualMachine *StorageVirtualMachine `type:"structure"` } -// SetTags sets the Tags field's value. -func (s *DataRepositoryTask) SetTags(v []*Tag) *DataRepositoryTask { - s.Tags = v - return s +// String returns the string representation +func (s CreateStorageVirtualMachineOutput) String() string { + return awsutil.Prettify(s) } -// SetTaskId sets the TaskId field's value. -func (s *DataRepositoryTask) SetTaskId(v string) *DataRepositoryTask { - s.TaskId = &v - return s +// GoString returns the string representation +func (s CreateStorageVirtualMachineOutput) GoString() string { + return s.String() } -// SetType sets the Type field's value. -func (s *DataRepositoryTask) SetType(v string) *DataRepositoryTask { - s.Type = &v +// SetStorageVirtualMachine sets the StorageVirtualMachine field's value. +func (s *CreateStorageVirtualMachineOutput) SetStorageVirtualMachine(v *StorageVirtualMachine) *CreateStorageVirtualMachineOutput { + s.StorageVirtualMachine = v return s } -// The data repository task could not be canceled because the task has already -// ended. -type DataRepositoryTaskEnded struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// The configuration that Amazon FSx uses to join the ONTAP storage virtual +// machine (SVM) to your self-managed (including on-premises) Microsoft Active +// Directory (AD) directory. +type CreateSvmActiveDirectoryConfiguration struct { + _ struct{} `type:"structure"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // The NetBIOS name of the Active Directory computer object that will be created + // for your SVM. + // + // NetBiosName is a required field + NetBiosName *string `min:"1" type:"string" required:"true"` + + // The configuration that Amazon FSx uses to join a Amazon FSx for Windows File + // Server file system or an ONTAP storage virtual machine (SVM) to a self-managed + // (including on-premises) Microsoft Active Directory (AD) directory. For more + // information, see Using Amazon FSx with your self-managed Microsoft Active + // Directory (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html) + // or Managing SVMs (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html). + SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfiguration `type:"structure"` } // String returns the string representation -func (s DataRepositoryTaskEnded) String() string { +func (s CreateSvmActiveDirectoryConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryTaskEnded) GoString() string { +func (s CreateSvmActiveDirectoryConfiguration) GoString() string { return s.String() } -func newErrorDataRepositoryTaskEnded(v protocol.ResponseMetadata) error { - return &DataRepositoryTaskEnded{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSvmActiveDirectoryConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSvmActiveDirectoryConfiguration"} + if s.NetBiosName == nil { + invalidParams.Add(request.NewErrParamRequired("NetBiosName")) } -} - -// Code returns the exception type name. -func (s *DataRepositoryTaskEnded) Code() string { - return "DataRepositoryTaskEnded" -} - -// Message returns the exception's message. -func (s *DataRepositoryTaskEnded) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.NetBiosName != nil && len(*s.NetBiosName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NetBiosName", 1)) + } + if s.SelfManagedActiveDirectoryConfiguration != nil { + if err := s.SelfManagedActiveDirectoryConfiguration.Validate(); err != nil { + invalidParams.AddNested("SelfManagedActiveDirectoryConfiguration", err.(request.ErrInvalidParams)) + } } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *DataRepositoryTaskEnded) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *DataRepositoryTaskEnded) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetNetBiosName sets the NetBiosName field's value. +func (s *CreateSvmActiveDirectoryConfiguration) SetNetBiosName(v string) *CreateSvmActiveDirectoryConfiguration { + s.NetBiosName = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *DataRepositoryTaskEnded) StatusCode() int { - return s.RespMetadata.StatusCode +// SetSelfManagedActiveDirectoryConfiguration sets the SelfManagedActiveDirectoryConfiguration field's value. +func (s *CreateSvmActiveDirectoryConfiguration) SetSelfManagedActiveDirectoryConfiguration(v *SelfManagedActiveDirectoryConfiguration) *CreateSvmActiveDirectoryConfiguration { + s.SelfManagedActiveDirectoryConfiguration = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *DataRepositoryTaskEnded) RequestID() string { - return s.RespMetadata.RequestID -} +type CreateVolumeFromBackupInput struct { + _ struct{} `type:"structure"` -// An existing data repository task is currently executing on the file system. -// Wait until the existing task has completed, then create the new task. -type DataRepositoryTaskExecuting struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The ID of the source backup. Specifies the backup you are copying. + // + // BackupId is a required field + BackupId *string `min:"12" type:"string" required:"true"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The name of the new volume you're creating. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // Specifies the configuration of the ONTAP volume that you are creating. + OntapConfiguration *CreateOntapVolumeConfiguration `type:"structure"` + + // A list of Tag values, with a maximum of 50 elements. + Tags []*Tag `min:"1" type:"list"` } // String returns the string representation -func (s DataRepositoryTaskExecuting) String() string { +func (s CreateVolumeFromBackupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryTaskExecuting) GoString() string { +func (s CreateVolumeFromBackupInput) GoString() string { return s.String() } -func newErrorDataRepositoryTaskExecuting(v protocol.ResponseMetadata) error { - return &DataRepositoryTaskExecuting{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateVolumeFromBackupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVolumeFromBackupInput"} + if s.BackupId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupId")) + } + if s.BackupId != nil && len(*s.BackupId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("BackupId", 12)) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.OntapConfiguration != nil { + if err := s.OntapConfiguration.Validate(); err != nil { + invalidParams.AddNested("OntapConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } } -} -// Code returns the exception type name. -func (s *DataRepositoryTaskExecuting) Code() string { - return "DataRepositoryTaskExecuting" + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Message returns the exception's message. -func (s *DataRepositoryTaskExecuting) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetBackupId sets the BackupId field's value. +func (s *CreateVolumeFromBackupInput) SetBackupId(v string) *CreateVolumeFromBackupInput { + s.BackupId = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *DataRepositoryTaskExecuting) OrigErr() error { - return nil +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateVolumeFromBackupInput) SetClientRequestToken(v string) *CreateVolumeFromBackupInput { + s.ClientRequestToken = &v + return s } -func (s *DataRepositoryTaskExecuting) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetName sets the Name field's value. +func (s *CreateVolumeFromBackupInput) SetName(v string) *CreateVolumeFromBackupInput { + s.Name = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *DataRepositoryTaskExecuting) StatusCode() int { - return s.RespMetadata.StatusCode +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *CreateVolumeFromBackupInput) SetOntapConfiguration(v *CreateOntapVolumeConfiguration) *CreateVolumeFromBackupInput { + s.OntapConfiguration = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *DataRepositoryTaskExecuting) RequestID() string { - return s.RespMetadata.RequestID +// SetTags sets the Tags field's value. +func (s *CreateVolumeFromBackupInput) SetTags(v []*Tag) *CreateVolumeFromBackupInput { + s.Tags = v + return s } -// Provides information about why a data repository task failed. Only populated -// when the task Lifecycle is set to FAILED. -type DataRepositoryTaskFailureDetails struct { +type CreateVolumeFromBackupOutput struct { _ struct{} `type:"structure"` - // A detailed error message. - Message *string `min:"1" type:"string"` + // Returned after a successful CreateVolumeFromBackup API operation, describing + // the volume just created. + Volume *Volume `type:"structure"` } // String returns the string representation -func (s DataRepositoryTaskFailureDetails) String() string { +func (s CreateVolumeFromBackupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryTaskFailureDetails) GoString() string { +func (s CreateVolumeFromBackupOutput) GoString() string { return s.String() } -// SetMessage sets the Message field's value. -func (s *DataRepositoryTaskFailureDetails) SetMessage(v string) *DataRepositoryTaskFailureDetails { - s.Message = &v +// SetVolume sets the Volume field's value. +func (s *CreateVolumeFromBackupOutput) SetVolume(v *Volume) *CreateVolumeFromBackupOutput { + s.Volume = v return s } -// (Optional) An array of filter objects you can use to filter the response -// of data repository tasks you will see in the the response. You can filter -// the tasks returned in the response by one or more file system IDs, task lifecycles, -// and by task type. A filter object consists of a filter Name, and one or more -// Values for the filter. -type DataRepositoryTaskFilter struct { +type CreateVolumeInput struct { _ struct{} `type:"structure"` - // Name of the task property to use in filtering the tasks returned in the response. - // - // * Use file-system-id to retrieve data repository tasks for specific file - // systems. + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Specifies the name of the volume you're creating. // - // * Use task-lifecycle to retrieve data repository tasks with one or more - // specific lifecycle states, as follows: CANCELED, EXECUTING, FAILED, PENDING, - // and SUCCEEDED. - Name *string `type:"string" enum:"DataRepositoryTaskFilterName"` + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` - // Use Values to include the specific file system IDs and task lifecycle states - // for the filters you are using. - Values []*string `type:"list"` + // Specifies the ONTAP configuration to use in creating the volume. + OntapConfiguration *CreateOntapVolumeConfiguration `type:"structure"` + + // A list of Tag values, with a maximum of 50 elements. + Tags []*Tag `min:"1" type:"list"` + + // Specifies the type of volume to create; ONTAP is the only valid volume type. + // + // VolumeType is a required field + VolumeType *string `type:"string" required:"true" enum:"VolumeType"` } // String returns the string representation -func (s DataRepositoryTaskFilter) String() string { +func (s CreateVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryTaskFilter) GoString() string { +func (s CreateVolumeInput) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *DataRepositoryTaskFilter) SetName(v string) *DataRepositoryTaskFilter { - s.Name = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateVolumeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVolumeInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.VolumeType == nil { + invalidParams.Add(request.NewErrParamRequired("VolumeType")) + } + if s.OntapConfiguration != nil { + if err := s.OntapConfiguration.Validate(); err != nil { + invalidParams.AddNested("OntapConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } -// SetValues sets the Values field's value. -func (s *DataRepositoryTaskFilter) SetValues(v []*string) *DataRepositoryTaskFilter { - s.Values = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// The data repository task or tasks you specified could not be found. -type DataRepositoryTaskNotFound struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateVolumeInput) SetClientRequestToken(v string) *CreateVolumeInput { + s.ClientRequestToken = &v + return s } -// String returns the string representation -func (s DataRepositoryTaskNotFound) String() string { - return awsutil.Prettify(s) +// SetName sets the Name field's value. +func (s *CreateVolumeInput) SetName(v string) *CreateVolumeInput { + s.Name = &v + return s } -// GoString returns the string representation -func (s DataRepositoryTaskNotFound) GoString() string { - return s.String() +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *CreateVolumeInput) SetOntapConfiguration(v *CreateOntapVolumeConfiguration) *CreateVolumeInput { + s.OntapConfiguration = v + return s } -func newErrorDataRepositoryTaskNotFound(v protocol.ResponseMetadata) error { - return &DataRepositoryTaskNotFound{ - RespMetadata: v, - } +// SetTags sets the Tags field's value. +func (s *CreateVolumeInput) SetTags(v []*Tag) *CreateVolumeInput { + s.Tags = v + return s } -// Code returns the exception type name. -func (s *DataRepositoryTaskNotFound) Code() string { - return "DataRepositoryTaskNotFound" +// SetVolumeType sets the VolumeType field's value. +func (s *CreateVolumeInput) SetVolumeType(v string) *CreateVolumeInput { + s.VolumeType = &v + return s } -// Message returns the exception's message. -func (s *DataRepositoryTaskNotFound) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} +type CreateVolumeOutput struct { + _ struct{} `type:"structure"` -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *DataRepositoryTaskNotFound) OrigErr() error { - return nil + // Returned after a successful CreateVolume API operation, describing the volume + // just created. + Volume *Volume `type:"structure"` } -func (s *DataRepositoryTaskNotFound) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// String returns the string representation +func (s CreateVolumeOutput) String() string { + return awsutil.Prettify(s) } -// Status code returns the HTTP status code for the request's response error. -func (s *DataRepositoryTaskNotFound) StatusCode() int { - return s.RespMetadata.StatusCode +// GoString returns the string representation +func (s CreateVolumeOutput) GoString() string { + return s.String() } -// RequestID returns the service's response RequestID for request. -func (s *DataRepositoryTaskNotFound) RequestID() string { - return s.RespMetadata.RequestID +// SetVolume sets the Volume field's value. +func (s *CreateVolumeOutput) SetVolume(v *Volume) *CreateVolumeOutput { + s.Volume = v + return s } -// Provides the task status showing a running total of the total number of files -// to be processed, the number successfully processed, and the number of files -// the task failed to process. -type DataRepositoryTaskStatus struct { +// The data repository configuration object for Lustre file systems returned +// in the response of the CreateFileSystem operation. +type DataRepositoryConfiguration struct { _ struct{} `type:"structure"` - // A running total of the number of files that the task failed to process. - FailedCount *int64 `type:"long"` + // Describes the file system's linked S3 data repository's AutoImportPolicy. + // The AutoImportPolicy configures how Amazon FSx keeps your file and directory + // listings up to date as you add or modify objects in your linked S3 bucket. + // AutoImportPolicy can have the following values: + // + // * NONE - (Default) AutoImport is off. Amazon FSx only updates file and + // directory listings from the linked S3 bucket when the file system is created. + // FSx does not update file and directory listings for any new or changed + // objects after choosing this option. + // + // * NEW - AutoImport is on. Amazon FSx automatically imports directory listings + // of any new objects added to the linked S3 bucket that do not currently + // exist in the FSx file system. + // + // * NEW_CHANGED - AutoImport is on. Amazon FSx automatically imports file + // and directory listings of any new objects added to the S3 bucket and any + // existing objects that are changed in the S3 bucket after you choose this + // option. + // + // For more information, see Automatically import updates from your S3 bucket + // (https://docs.aws.amazon.com/fsx/latest/LustreGuide/autoimport-data-repo.html). + AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` - // The time at which the task status was last updated. - LastUpdatedTime *time.Time `type:"timestamp"` + // The export path to the Amazon S3 bucket (and prefix) that you are using to + // store new and changed Lustre file system files in S3. + ExportPath *string `min:"3" type:"string"` - // A running total of the number of files that the task has successfully processed. - SucceededCount *int64 `type:"long"` + // Provides detailed information about the data respository if its Lifecycle + // is set to MISCONFIGURED. + FailureDetails *DataRepositoryFailureDetails `type:"structure"` - // The total number of files that the task will process. While a task is executing, - // the sum of SucceededCount plus FailedCount may not equal TotalCount. When - // the task is complete, TotalCount equals the sum of SucceededCount plus FailedCount. - TotalCount *int64 `type:"long"` + // The import path to the Amazon S3 bucket (and optional prefix) that you're + // using as the data repository for your FSx for Lustre file system, for example + // s3://import-bucket/optional-prefix. If a prefix is specified after the Amazon + // S3 bucket name, only object keys with that prefix are loaded into the file + // system. + ImportPath *string `min:"3" type:"string"` + + // For files imported from a data repository, this value determines the stripe + // count and maximum amount of data per file (in MiB) stored on a single physical + // disk. The maximum number of disks that a single file can be striped across + // is limited by the total number of disks that make up the file system. + // + // The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 + // MiB (500 GiB). Amazon S3 objects have a maximum size of 5 TB. + ImportedFileChunkSize *int64 `min:"1" type:"integer"` + + // Describes the state of the file system's S3 durable data repository, if it + // is configured with an S3 repository. The lifecycle can have the following + // values: + // + // * CREATING - The data repository configuration between the FSx file system + // and the linked S3 data repository is being created. The data repository + // is unavailable. + // + // * AVAILABLE - The data repository is available for use. + // + // * MISCONFIGURED - Amazon FSx cannot automatically import updates from + // the S3 bucket until the data repository configuration is corrected. For + // more information, see Troubleshooting a Misconfigured linked S3 bucket + // (https://docs.aws.amazon.com/fsx/latest/LustreGuide/troubleshooting.html#troubleshooting-misconfigured-data-repository). + // + // * UPDATING - The data repository is undergoing a customer initiated update + // and availability may be impacted. + Lifecycle *string `type:"string" enum:"DataRepositoryLifecycle"` } // String returns the string representation -func (s DataRepositoryTaskStatus) String() string { +func (s DataRepositoryConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataRepositoryTaskStatus) GoString() string { +func (s DataRepositoryConfiguration) GoString() string { return s.String() } -// SetFailedCount sets the FailedCount field's value. -func (s *DataRepositoryTaskStatus) SetFailedCount(v int64) *DataRepositoryTaskStatus { - s.FailedCount = &v +// SetAutoImportPolicy sets the AutoImportPolicy field's value. +func (s *DataRepositoryConfiguration) SetAutoImportPolicy(v string) *DataRepositoryConfiguration { + s.AutoImportPolicy = &v return s } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *DataRepositoryTaskStatus) SetLastUpdatedTime(v time.Time) *DataRepositoryTaskStatus { - s.LastUpdatedTime = &v +// SetExportPath sets the ExportPath field's value. +func (s *DataRepositoryConfiguration) SetExportPath(v string) *DataRepositoryConfiguration { + s.ExportPath = &v return s } -// SetSucceededCount sets the SucceededCount field's value. -func (s *DataRepositoryTaskStatus) SetSucceededCount(v int64) *DataRepositoryTaskStatus { - s.SucceededCount = &v +// SetFailureDetails sets the FailureDetails field's value. +func (s *DataRepositoryConfiguration) SetFailureDetails(v *DataRepositoryFailureDetails) *DataRepositoryConfiguration { + s.FailureDetails = v return s } -// SetTotalCount sets the TotalCount field's value. -func (s *DataRepositoryTaskStatus) SetTotalCount(v int64) *DataRepositoryTaskStatus { - s.TotalCount = &v +// SetImportPath sets the ImportPath field's value. +func (s *DataRepositoryConfiguration) SetImportPath(v string) *DataRepositoryConfiguration { + s.ImportPath = &v return s } -// The request object for DeleteBackup operation. -type DeleteBackupInput struct { - _ struct{} `type:"structure"` +// SetImportedFileChunkSize sets the ImportedFileChunkSize field's value. +func (s *DataRepositoryConfiguration) SetImportedFileChunkSize(v int64) *DataRepositoryConfiguration { + s.ImportedFileChunkSize = &v + return s +} - // The ID of the backup you want to delete. - // - // BackupId is a required field - BackupId *string `min:"12" type:"string" required:"true"` +// SetLifecycle sets the Lifecycle field's value. +func (s *DataRepositoryConfiguration) SetLifecycle(v string) *DataRepositoryConfiguration { + s.Lifecycle = &v + return s +} - // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent - // deletion. This is automatically filled on your behalf when using the AWS - // CLI or SDK. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +// Provides detailed information about the data respository if its Lifecycle +// is set to MISCONFIGURED. +type DataRepositoryFailureDetails struct { + _ struct{} `type:"structure"` + + // A detailed error message. + Message *string `min:"1" type:"string"` } // String returns the string representation -func (s DeleteBackupInput) String() string { +func (s DataRepositoryFailureDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteBackupInput) GoString() string { +func (s DataRepositoryFailureDetails) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupInput"} - if s.BackupId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupId")) - } +// SetMessage sets the Message field's value. +func (s *DataRepositoryFailureDetails) SetMessage(v string) *DataRepositoryFailureDetails { + s.Message = &v + return s +} + +// A description of the data repository task. You use data repository tasks +// to perform bulk transfer operations between your Amazon FSx file system and +// its linked data repository. +type DataRepositoryTask struct { + _ struct{} `type:"structure"` + + // The time that the resource was created, in seconds (since 1970-01-01T00:00:00Z), + // also known as Unix time. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // The time that Amazon FSx completed processing the task, populated after the + // task is complete. + EndTime *time.Time `type:"timestamp"` + + // Failure message describing why the task failed, it is populated only when + // Lifecycle is set to FAILED. + FailureDetails *DataRepositoryTaskFailureDetails `type:"structure"` + + // The globally unique ID of the file system, assigned by Amazon FSx. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" type:"string" required:"true"` + + // The lifecycle status of the data repository task, as follows: + // + // * PENDING - Amazon FSx has not started the task. + // + // * EXECUTING - Amazon FSx is processing the task. + // + // * FAILED - Amazon FSx was not able to complete the task. For example, + // there may be files the task failed to process. The DataRepositoryTaskFailureDetails + // property provides more information about task failures. + // + // * SUCCEEDED - FSx completed the task successfully. + // + // * CANCELED - Amazon FSx canceled the task and it did not complete. + // + // * CANCELING - FSx is in process of canceling the task. + // + // You cannot delete an FSx for Lustre file system if there are data repository + // tasks for the file system in the PENDING or EXECUTING states. Please retry + // when the data repository task is finished (with a status of CANCELED, SUCCEEDED, + // or FAILED). You can use the DescribeDataRepositoryTask action to monitor + // the task status. Contact the FSx team if you need to delete your file system + // immediately. + // + // Lifecycle is a required field + Lifecycle *string `type:"string" required:"true" enum:"DataRepositoryTaskLifecycle"` + + // An array of paths on the Amazon FSx for Lustre file system that specify the + // data for the data repository task to process. For example, in an EXPORT_TO_REPOSITORY + // task, the paths specify which data to export to the linked data repository. + // + // (Default) If Paths is not specified, Amazon FSx uses the file system root + // directory. + Paths []*string `type:"list"` + + // Provides a report detailing the data repository task results of the files + // processed that match the criteria specified in the report Scope parameter. + // FSx delivers the report to the file system's linked data repository in Amazon + // S3, using the path specified in the report Path parameter. You can specify + // whether or not a report gets generated for a task using the Enabled parameter. + Report *CompletionReport `type:"structure"` + + // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify + // Amazon Web Services resources. We require an ARN when you need to specify + // a resource unambiguously across all of Amazon Web Services. For more information, + // see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + ResourceARN *string `min:"8" type:"string"` + + // The time that Amazon FSx began processing the task. + StartTime *time.Time `type:"timestamp"` + + // Provides the status of the number of files that the task has processed successfully + // and failed to process. + Status *DataRepositoryTaskStatus `type:"structure"` + + // A list of Tag values, with a maximum of 50 elements. + Tags []*Tag `min:"1" type:"list"` + + // The system-generated, unique 17-digit ID of the data repository task. + // + // TaskId is a required field + TaskId *string `min:"12" type:"string" required:"true"` + + // The type of data repository task; EXPORT_TO_REPOSITORY is the only type currently + // supported. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"DataRepositoryTaskType"` +} + +// String returns the string representation +func (s DataRepositoryTask) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTask) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *DataRepositoryTask) SetCreationTime(v time.Time) *DataRepositoryTask { + s.CreationTime = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *DataRepositoryTask) SetEndTime(v time.Time) *DataRepositoryTask { + s.EndTime = &v + return s +} + +// SetFailureDetails sets the FailureDetails field's value. +func (s *DataRepositoryTask) SetFailureDetails(v *DataRepositoryTaskFailureDetails) *DataRepositoryTask { + s.FailureDetails = v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *DataRepositoryTask) SetFileSystemId(v string) *DataRepositoryTask { + s.FileSystemId = &v + return s +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *DataRepositoryTask) SetLifecycle(v string) *DataRepositoryTask { + s.Lifecycle = &v + return s +} + +// SetPaths sets the Paths field's value. +func (s *DataRepositoryTask) SetPaths(v []*string) *DataRepositoryTask { + s.Paths = v + return s +} + +// SetReport sets the Report field's value. +func (s *DataRepositoryTask) SetReport(v *CompletionReport) *DataRepositoryTask { + s.Report = v + return s +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *DataRepositoryTask) SetResourceARN(v string) *DataRepositoryTask { + s.ResourceARN = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *DataRepositoryTask) SetStartTime(v time.Time) *DataRepositoryTask { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DataRepositoryTask) SetStatus(v *DataRepositoryTaskStatus) *DataRepositoryTask { + s.Status = v + return s +} + +// SetTags sets the Tags field's value. +func (s *DataRepositoryTask) SetTags(v []*Tag) *DataRepositoryTask { + s.Tags = v + return s +} + +// SetTaskId sets the TaskId field's value. +func (s *DataRepositoryTask) SetTaskId(v string) *DataRepositoryTask { + s.TaskId = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataRepositoryTask) SetType(v string) *DataRepositoryTask { + s.Type = &v + return s +} + +// The data repository task could not be canceled because the task has already +// ended. +type DataRepositoryTaskEnded struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` +} + +// String returns the string representation +func (s DataRepositoryTaskEnded) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTaskEnded) GoString() string { + return s.String() +} + +func newErrorDataRepositoryTaskEnded(v protocol.ResponseMetadata) error { + return &DataRepositoryTaskEnded{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *DataRepositoryTaskEnded) Code() string { + return "DataRepositoryTaskEnded" +} + +// Message returns the exception's message. +func (s *DataRepositoryTaskEnded) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DataRepositoryTaskEnded) OrigErr() error { + return nil +} + +func (s *DataRepositoryTaskEnded) 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 *DataRepositoryTaskEnded) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *DataRepositoryTaskEnded) RequestID() string { + return s.RespMetadata.RequestID +} + +// An existing data repository task is currently executing on the file system. +// Wait until the existing task has completed, then create the new task. +type DataRepositoryTaskExecuting struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` +} + +// String returns the string representation +func (s DataRepositoryTaskExecuting) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTaskExecuting) GoString() string { + return s.String() +} + +func newErrorDataRepositoryTaskExecuting(v protocol.ResponseMetadata) error { + return &DataRepositoryTaskExecuting{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *DataRepositoryTaskExecuting) Code() string { + return "DataRepositoryTaskExecuting" +} + +// Message returns the exception's message. +func (s *DataRepositoryTaskExecuting) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DataRepositoryTaskExecuting) OrigErr() error { + return nil +} + +func (s *DataRepositoryTaskExecuting) 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 *DataRepositoryTaskExecuting) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *DataRepositoryTaskExecuting) RequestID() string { + return s.RespMetadata.RequestID +} + +// Provides information about why a data repository task failed. Only populated +// when the task Lifecycle is set to FAILED. +type DataRepositoryTaskFailureDetails struct { + _ struct{} `type:"structure"` + + // A detailed error message. + Message *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DataRepositoryTaskFailureDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTaskFailureDetails) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *DataRepositoryTaskFailureDetails) SetMessage(v string) *DataRepositoryTaskFailureDetails { + s.Message = &v + return s +} + +// (Optional) An array of filter objects you can use to filter the response +// of data repository tasks you will see in the the response. You can filter +// the tasks returned in the response by one or more file system IDs, task lifecycles, +// and by task type. A filter object consists of a filter Name, and one or more +// Values for the filter. +type DataRepositoryTaskFilter struct { + _ struct{} `type:"structure"` + + // Name of the task property to use in filtering the tasks returned in the response. + // + // * Use file-system-id to retrieve data repository tasks for specific file + // systems. + // + // * Use task-lifecycle to retrieve data repository tasks with one or more + // specific lifecycle states, as follows: CANCELED, EXECUTING, FAILED, PENDING, + // and SUCCEEDED. + Name *string `type:"string" enum:"DataRepositoryTaskFilterName"` + + // Use Values to include the specific file system IDs and task lifecycle states + // for the filters you are using. + Values []*string `type:"list"` +} + +// String returns the string representation +func (s DataRepositoryTaskFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTaskFilter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *DataRepositoryTaskFilter) SetName(v string) *DataRepositoryTaskFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *DataRepositoryTaskFilter) SetValues(v []*string) *DataRepositoryTaskFilter { + s.Values = v + return s +} + +// The data repository task or tasks you specified could not be found. +type DataRepositoryTaskNotFound struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` +} + +// String returns the string representation +func (s DataRepositoryTaskNotFound) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTaskNotFound) GoString() string { + return s.String() +} + +func newErrorDataRepositoryTaskNotFound(v protocol.ResponseMetadata) error { + return &DataRepositoryTaskNotFound{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *DataRepositoryTaskNotFound) Code() string { + return "DataRepositoryTaskNotFound" +} + +// Message returns the exception's message. +func (s *DataRepositoryTaskNotFound) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DataRepositoryTaskNotFound) OrigErr() error { + return nil +} + +func (s *DataRepositoryTaskNotFound) 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 *DataRepositoryTaskNotFound) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *DataRepositoryTaskNotFound) RequestID() string { + return s.RespMetadata.RequestID +} + +// Provides the task status showing a running total of the total number of files +// to be processed, the number successfully processed, and the number of files +// the task failed to process. +type DataRepositoryTaskStatus struct { + _ struct{} `type:"structure"` + + // A running total of the number of files that the task failed to process. + FailedCount *int64 `type:"long"` + + // The time at which the task status was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // A running total of the number of files that the task has successfully processed. + SucceededCount *int64 `type:"long"` + + // The total number of files that the task will process. While a task is executing, + // the sum of SucceededCount plus FailedCount may not equal TotalCount. When + // the task is complete, TotalCount equals the sum of SucceededCount plus FailedCount. + TotalCount *int64 `type:"long"` +} + +// String returns the string representation +func (s DataRepositoryTaskStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryTaskStatus) GoString() string { + return s.String() +} + +// SetFailedCount sets the FailedCount field's value. +func (s *DataRepositoryTaskStatus) SetFailedCount(v int64) *DataRepositoryTaskStatus { + s.FailedCount = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *DataRepositoryTaskStatus) SetLastUpdatedTime(v time.Time) *DataRepositoryTaskStatus { + s.LastUpdatedTime = &v + return s +} + +// SetSucceededCount sets the SucceededCount field's value. +func (s *DataRepositoryTaskStatus) SetSucceededCount(v int64) *DataRepositoryTaskStatus { + s.SucceededCount = &v + return s +} + +// SetTotalCount sets the TotalCount field's value. +func (s *DataRepositoryTaskStatus) SetTotalCount(v int64) *DataRepositoryTaskStatus { + s.TotalCount = &v + return s +} + +// The request object for DeleteBackup operation. +type DeleteBackupInput struct { + _ struct{} `type:"structure"` + + // The ID of the backup you want to delete. + // + // BackupId is a required field + BackupId *string `min:"12" type:"string" required:"true"` + + // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent + // deletion. This is automatically filled on your behalf when using the CLI + // or SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +} + +// String returns the string representation +func (s DeleteBackupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteBackupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteBackupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupInput"} + if s.BackupId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupId")) + } if s.BackupId != nil && len(*s.BackupId) < 12 { invalidParams.Add(request.NewErrParamMinLen("BackupId", 12)) } @@ -5339,1164 +7242,2743 @@ func (s *DeleteBackupInput) Validate() error { return nil } -// SetBackupId sets the BackupId field's value. -func (s *DeleteBackupInput) SetBackupId(v string) *DeleteBackupInput { - s.BackupId = &v +// SetBackupId sets the BackupId field's value. +func (s *DeleteBackupInput) SetBackupId(v string) *DeleteBackupInput { + s.BackupId = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteBackupInput) SetClientRequestToken(v string) *DeleteBackupInput { + s.ClientRequestToken = &v + return s +} + +// The response object for DeleteBackup operation. +type DeleteBackupOutput struct { + _ struct{} `type:"structure"` + + // The ID of the backup deleted. + BackupId *string `min:"12" type:"string"` + + // The lifecycle of the backup. Should be DELETED. + Lifecycle *string `type:"string" enum:"BackupLifecycle"` +} + +// String returns the string representation +func (s DeleteBackupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteBackupOutput) GoString() string { + return s.String() +} + +// SetBackupId sets the BackupId field's value. +func (s *DeleteBackupOutput) SetBackupId(v string) *DeleteBackupOutput { + s.BackupId = &v + return s +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *DeleteBackupOutput) SetLifecycle(v string) *DeleteBackupOutput { + s.Lifecycle = &v + return s +} + +// The request object for DeleteFileSystem operation. +type DeleteFileSystemInput struct { + _ struct{} `type:"structure"` + + // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent + // deletion. This is automatically filled on your behalf when using the Command + // Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the file system you want to delete. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" type:"string" required:"true"` + + // The configuration object for the Amazon FSx for Lustre file system being + // deleted in the DeleteFileSystem operation. + LustreConfiguration *DeleteFileSystemLustreConfiguration `type:"structure"` + + // The configuration object for the Microsoft Windows file system used in the + // DeleteFileSystem operation. + WindowsConfiguration *DeleteFileSystemWindowsConfiguration `type:"structure"` +} + +// String returns the string representation +func (s DeleteFileSystemInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteFileSystemInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteFileSystemInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + if s.LustreConfiguration != nil { + if err := s.LustreConfiguration.Validate(); err != nil { + invalidParams.AddNested("LustreConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.WindowsConfiguration != nil { + if err := s.WindowsConfiguration.Validate(); err != nil { + invalidParams.AddNested("WindowsConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteFileSystemInput) SetClientRequestToken(v string) *DeleteFileSystemInput { + s.ClientRequestToken = &v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *DeleteFileSystemInput) SetFileSystemId(v string) *DeleteFileSystemInput { + s.FileSystemId = &v + return s +} + +// SetLustreConfiguration sets the LustreConfiguration field's value. +func (s *DeleteFileSystemInput) SetLustreConfiguration(v *DeleteFileSystemLustreConfiguration) *DeleteFileSystemInput { + s.LustreConfiguration = v + return s +} + +// SetWindowsConfiguration sets the WindowsConfiguration field's value. +func (s *DeleteFileSystemInput) SetWindowsConfiguration(v *DeleteFileSystemWindowsConfiguration) *DeleteFileSystemInput { + s.WindowsConfiguration = v + return s +} + +// The configuration object for the Amazon FSx for Lustre file system being +// deleted in the DeleteFileSystem operation. +type DeleteFileSystemLustreConfiguration struct { + _ struct{} `type:"structure"` + + // Use if SkipFinalBackup is set to false, and you want to apply an array of + // tags to the final backup. If you have set the file system property CopyTagsToBackups + // to true, and you specify one or more FinalBackupTags when deleting a file + // system, Amazon FSx will not copy any existing file system tags to the backup. + FinalBackupTags []*Tag `min:"1" type:"list"` + + // Set SkipFinalBackup to false if you want to take a final backup of the file + // system you are deleting. By default, Amazon FSx will not take a final backup + // on your behalf when the DeleteFileSystem operation is invoked. (Default = + // true) + SkipFinalBackup *bool `type:"boolean"` +} + +// String returns the string representation +func (s DeleteFileSystemLustreConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteFileSystemLustreConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteFileSystemLustreConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemLustreConfiguration"} + if s.FinalBackupTags != nil && len(s.FinalBackupTags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FinalBackupTags", 1)) + } + if s.FinalBackupTags != nil { + for i, v := range s.FinalBackupTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FinalBackupTags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFinalBackupTags sets the FinalBackupTags field's value. +func (s *DeleteFileSystemLustreConfiguration) SetFinalBackupTags(v []*Tag) *DeleteFileSystemLustreConfiguration { + s.FinalBackupTags = v + return s +} + +// SetSkipFinalBackup sets the SkipFinalBackup field's value. +func (s *DeleteFileSystemLustreConfiguration) SetSkipFinalBackup(v bool) *DeleteFileSystemLustreConfiguration { + s.SkipFinalBackup = &v + return s +} + +// The response object for the Amazon FSx for Lustre file system being deleted +// in the DeleteFileSystem operation. +type DeleteFileSystemLustreResponse struct { + _ struct{} `type:"structure"` + + // The ID of the final backup for this file system. + FinalBackupId *string `min:"12" type:"string"` + + // The set of tags applied to the final backup. + FinalBackupTags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s DeleteFileSystemLustreResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteFileSystemLustreResponse) GoString() string { + return s.String() +} + +// SetFinalBackupId sets the FinalBackupId field's value. +func (s *DeleteFileSystemLustreResponse) SetFinalBackupId(v string) *DeleteFileSystemLustreResponse { + s.FinalBackupId = &v + return s +} + +// SetFinalBackupTags sets the FinalBackupTags field's value. +func (s *DeleteFileSystemLustreResponse) SetFinalBackupTags(v []*Tag) *DeleteFileSystemLustreResponse { + s.FinalBackupTags = v + return s +} + +// The response object for the DeleteFileSystem operation. +type DeleteFileSystemOutput struct { + _ struct{} `type:"structure"` + + // The ID of the file system being deleted. + FileSystemId *string `min:"11" type:"string"` + + // The file system lifecycle for the deletion request. Should be DELETING. + Lifecycle *string `type:"string" enum:"FileSystemLifecycle"` + + // The response object for the Amazon FSx for Lustre file system being deleted + // in the DeleteFileSystem operation. + LustreResponse *DeleteFileSystemLustreResponse `type:"structure"` + + // The response object for the Microsoft Windows file system used in the DeleteFileSystem + // operation. + WindowsResponse *DeleteFileSystemWindowsResponse `type:"structure"` +} + +// String returns the string representation +func (s DeleteFileSystemOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteFileSystemOutput) GoString() string { + return s.String() +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *DeleteFileSystemOutput) SetFileSystemId(v string) *DeleteFileSystemOutput { + s.FileSystemId = &v + return s +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *DeleteFileSystemOutput) SetLifecycle(v string) *DeleteFileSystemOutput { + s.Lifecycle = &v + return s +} + +// SetLustreResponse sets the LustreResponse field's value. +func (s *DeleteFileSystemOutput) SetLustreResponse(v *DeleteFileSystemLustreResponse) *DeleteFileSystemOutput { + s.LustreResponse = v + return s +} + +// SetWindowsResponse sets the WindowsResponse field's value. +func (s *DeleteFileSystemOutput) SetWindowsResponse(v *DeleteFileSystemWindowsResponse) *DeleteFileSystemOutput { + s.WindowsResponse = v + return s +} + +// The configuration object for the Microsoft Windows file system used in the +// DeleteFileSystem operation. +type DeleteFileSystemWindowsConfiguration struct { + _ struct{} `type:"structure"` + + // A set of tags for your final backup. + FinalBackupTags []*Tag `min:"1" type:"list"` + + // By default, Amazon FSx for Windows takes a final backup on your behalf when + // the DeleteFileSystem operation is invoked. Doing this helps protect you from + // data loss, and we highly recommend taking the final backup. If you want to + // skip this backup, use this flag to do so. + SkipFinalBackup *bool `type:"boolean"` +} + +// String returns the string representation +func (s DeleteFileSystemWindowsConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteFileSystemWindowsConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteFileSystemWindowsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemWindowsConfiguration"} + if s.FinalBackupTags != nil && len(s.FinalBackupTags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FinalBackupTags", 1)) + } + if s.FinalBackupTags != nil { + for i, v := range s.FinalBackupTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FinalBackupTags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFinalBackupTags sets the FinalBackupTags field's value. +func (s *DeleteFileSystemWindowsConfiguration) SetFinalBackupTags(v []*Tag) *DeleteFileSystemWindowsConfiguration { + s.FinalBackupTags = v + return s +} + +// SetSkipFinalBackup sets the SkipFinalBackup field's value. +func (s *DeleteFileSystemWindowsConfiguration) SetSkipFinalBackup(v bool) *DeleteFileSystemWindowsConfiguration { + s.SkipFinalBackup = &v + return s +} + +// The response object for the Microsoft Windows file system used in the DeleteFileSystem +// operation. +type DeleteFileSystemWindowsResponse struct { + _ struct{} `type:"structure"` + + // The ID of the final backup for this file system. + FinalBackupId *string `min:"12" type:"string"` + + // The set of tags applied to the final backup. + FinalBackupTags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s DeleteFileSystemWindowsResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteFileSystemWindowsResponse) GoString() string { + return s.String() +} + +// SetFinalBackupId sets the FinalBackupId field's value. +func (s *DeleteFileSystemWindowsResponse) SetFinalBackupId(v string) *DeleteFileSystemWindowsResponse { + s.FinalBackupId = &v + return s +} + +// SetFinalBackupTags sets the FinalBackupTags field's value. +func (s *DeleteFileSystemWindowsResponse) SetFinalBackupTags(v []*Tag) *DeleteFileSystemWindowsResponse { + s.FinalBackupTags = v + return s +} + +type DeleteStorageVirtualMachineInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the SVM that you want to delete. + // + // StorageVirtualMachineId is a required field + StorageVirtualMachineId *string `min:"21" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteStorageVirtualMachineInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteStorageVirtualMachineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteStorageVirtualMachineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteStorageVirtualMachineInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.StorageVirtualMachineId == nil { + invalidParams.Add(request.NewErrParamRequired("StorageVirtualMachineId")) + } + if s.StorageVirtualMachineId != nil && len(*s.StorageVirtualMachineId) < 21 { + invalidParams.Add(request.NewErrParamMinLen("StorageVirtualMachineId", 21)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteStorageVirtualMachineInput) SetClientRequestToken(v string) *DeleteStorageVirtualMachineInput { + s.ClientRequestToken = &v + return s +} + +// SetStorageVirtualMachineId sets the StorageVirtualMachineId field's value. +func (s *DeleteStorageVirtualMachineInput) SetStorageVirtualMachineId(v string) *DeleteStorageVirtualMachineInput { + s.StorageVirtualMachineId = &v + return s +} + +type DeleteStorageVirtualMachineOutput struct { + _ struct{} `type:"structure"` + + // Describes the lifecycle state of the SVM being deleted. + Lifecycle *string `type:"string" enum:"StorageVirtualMachineLifecycle"` + + // The ID of the SVM Amazon FSx is deleting. + StorageVirtualMachineId *string `min:"21" type:"string"` +} + +// String returns the string representation +func (s DeleteStorageVirtualMachineOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteStorageVirtualMachineOutput) GoString() string { + return s.String() +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *DeleteStorageVirtualMachineOutput) SetLifecycle(v string) *DeleteStorageVirtualMachineOutput { + s.Lifecycle = &v + return s +} + +// SetStorageVirtualMachineId sets the StorageVirtualMachineId field's value. +func (s *DeleteStorageVirtualMachineOutput) SetStorageVirtualMachineId(v string) *DeleteStorageVirtualMachineOutput { + s.StorageVirtualMachineId = &v + return s +} + +type DeleteVolumeInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // For Amazon FSx for ONTAP volumes, specify whether to take a final backup + // of the volume, and apply tags to the backup. + OntapConfiguration *DeleteVolumeOntapConfiguration `type:"structure"` + + // The ID of the volume you are deleting. + // + // VolumeId is a required field + VolumeId *string `min:"23" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteVolumeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteVolumeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteVolumeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVolumeInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.VolumeId == nil { + invalidParams.Add(request.NewErrParamRequired("VolumeId")) + } + if s.VolumeId != nil && len(*s.VolumeId) < 23 { + invalidParams.Add(request.NewErrParamMinLen("VolumeId", 23)) + } + if s.OntapConfiguration != nil { + if err := s.OntapConfiguration.Validate(); err != nil { + invalidParams.AddNested("OntapConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteVolumeInput) SetClientRequestToken(v string) *DeleteVolumeInput { + s.ClientRequestToken = &v + return s +} + +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *DeleteVolumeInput) SetOntapConfiguration(v *DeleteVolumeOntapConfiguration) *DeleteVolumeInput { + s.OntapConfiguration = v + return s +} + +// SetVolumeId sets the VolumeId field's value. +func (s *DeleteVolumeInput) SetVolumeId(v string) *DeleteVolumeInput { + s.VolumeId = &v + return s +} + +// Use to specify skipping a final backup, or to add tags to a final backup. +type DeleteVolumeOntapConfiguration struct { + _ struct{} `type:"structure"` + + // A list of Tag values, with a maximum of 50 elements. + FinalBackupTags []*Tag `min:"1" type:"list"` + + // Set to true if you want to skip taking a final backup of the volume you are + // deleting. + SkipFinalBackup *bool `type:"boolean"` +} + +// String returns the string representation +func (s DeleteVolumeOntapConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteVolumeOntapConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteVolumeOntapConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVolumeOntapConfiguration"} + if s.FinalBackupTags != nil && len(s.FinalBackupTags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FinalBackupTags", 1)) + } + if s.FinalBackupTags != nil { + for i, v := range s.FinalBackupTags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FinalBackupTags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFinalBackupTags sets the FinalBackupTags field's value. +func (s *DeleteVolumeOntapConfiguration) SetFinalBackupTags(v []*Tag) *DeleteVolumeOntapConfiguration { + s.FinalBackupTags = v + return s +} + +// SetSkipFinalBackup sets the SkipFinalBackup field's value. +func (s *DeleteVolumeOntapConfiguration) SetSkipFinalBackup(v bool) *DeleteVolumeOntapConfiguration { + s.SkipFinalBackup = &v + return s +} + +// The response object for the Amazon FSx for NetApp ONTAP volume being deleted +// in the DeleteVolume operation. +type DeleteVolumeOntapResponse struct { + _ struct{} `type:"structure"` + + // The ID of the source backup. Specifies the backup you are copying. + FinalBackupId *string `min:"12" type:"string"` + + // A list of Tag values, with a maximum of 50 elements. + FinalBackupTags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s DeleteVolumeOntapResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteVolumeOntapResponse) GoString() string { + return s.String() +} + +// SetFinalBackupId sets the FinalBackupId field's value. +func (s *DeleteVolumeOntapResponse) SetFinalBackupId(v string) *DeleteVolumeOntapResponse { + s.FinalBackupId = &v + return s +} + +// SetFinalBackupTags sets the FinalBackupTags field's value. +func (s *DeleteVolumeOntapResponse) SetFinalBackupTags(v []*Tag) *DeleteVolumeOntapResponse { + s.FinalBackupTags = v + return s +} + +type DeleteVolumeOutput struct { + _ struct{} `type:"structure"` + + // Describes the lifecycle state of the volume being deleted. + Lifecycle *string `type:"string" enum:"VolumeLifecycle"` + + // Returned after a DeleteVolume request, showing the status of the delete request. + OntapResponse *DeleteVolumeOntapResponse `type:"structure"` + + // The ID of the volume being deleted. + VolumeId *string `min:"23" type:"string"` +} + +// String returns the string representation +func (s DeleteVolumeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteVolumeOutput) GoString() string { + return s.String() +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *DeleteVolumeOutput) SetLifecycle(v string) *DeleteVolumeOutput { + s.Lifecycle = &v + return s +} + +// SetOntapResponse sets the OntapResponse field's value. +func (s *DeleteVolumeOutput) SetOntapResponse(v *DeleteVolumeOntapResponse) *DeleteVolumeOutput { + s.OntapResponse = v + return s +} + +// SetVolumeId sets the VolumeId field's value. +func (s *DeleteVolumeOutput) SetVolumeId(v string) *DeleteVolumeOutput { + s.VolumeId = &v + return s +} + +// The request object for DescribeBackups operation. +type DescribeBackupsInput struct { + _ struct{} `type:"structure"` + + // IDs of the backups you want to retrieve (String). This overrides any filters. + // If any IDs are not found, BackupNotFound will be thrown. + BackupIds []*string `type:"list"` + + // Filters structure. Supported names are file-system-id, backup-type, file-system-type, + // and volume-id. + Filters []*Filter `type:"list"` + + // Maximum number of backups to return in the response (integer). This parameter + // value must be greater than 0. The number of items that Amazon FSx returns + // is the minimum of the MaxResults parameter specified in the request and the + // service's internal maximum number of items per page. + MaxResults *int64 `min:"1" type:"integer"` + + // Opaque pagination token returned from a previous DescribeBackups operation + // (String). If a token present, the action continues the list from where the + // returning call left off. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeBackupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeBackupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeBackupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBackupsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupIds sets the BackupIds field's value. +func (s *DescribeBackupsInput) SetBackupIds(v []*string) *DescribeBackupsInput { + s.BackupIds = v + return s +} + +// SetFilters sets the Filters field's value. +func (s *DescribeBackupsInput) SetFilters(v []*Filter) *DescribeBackupsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeBackupsInput) SetMaxResults(v int64) *DescribeBackupsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeBackupsInput) SetNextToken(v string) *DescribeBackupsInput { + s.NextToken = &v + return s +} + +// Response object for DescribeBackups operation. +type DescribeBackupsOutput struct { + _ struct{} `type:"structure"` + + // An array of backups. + Backups []*Backup `type:"list"` + + // This is present if there are more backups than returned in the response (String). + // You can use the NextToken value in the later request to fetch the backups. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeBackupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeBackupsOutput) GoString() string { + return s.String() +} + +// SetBackups sets the Backups field's value. +func (s *DescribeBackupsOutput) SetBackups(v []*Backup) *DescribeBackupsOutput { + s.Backups = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeBackupsOutput) SetNextToken(v string) *DescribeBackupsOutput { + s.NextToken = &v + return s +} + +type DescribeDataRepositoryTasksInput struct { + _ struct{} `type:"structure"` + + // (Optional) You can use filters to narrow the DescribeDataRepositoryTasks + // response to include just tasks for specific file systems, or tasks in a specific + // lifecycle state. + Filters []*DataRepositoryTaskFilter `type:"list"` + + // The maximum number of resources to return in the response. This value must + // be an integer greater than zero. + MaxResults *int64 `min:"1" type:"integer"` + + // (Optional) Opaque pagination token returned from a previous operation (String). + // If present, this token indicates from what point you can continue processing + // the request, where the previous NextToken value left off. + NextToken *string `min:"1" type:"string"` + + // (Optional) IDs of the tasks whose descriptions you want to retrieve (String). + TaskIds []*string `type:"list"` +} + +// String returns the string representation +func (s DescribeDataRepositoryTasksInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeDataRepositoryTasksInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDataRepositoryTasksInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDataRepositoryTasksInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeDataRepositoryTasksInput) SetFilters(v []*DataRepositoryTaskFilter) *DescribeDataRepositoryTasksInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeDataRepositoryTasksInput) SetMaxResults(v int64) *DescribeDataRepositoryTasksInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDataRepositoryTasksInput) SetNextToken(v string) *DescribeDataRepositoryTasksInput { + s.NextToken = &v + return s +} + +// SetTaskIds sets the TaskIds field's value. +func (s *DescribeDataRepositoryTasksInput) SetTaskIds(v []*string) *DescribeDataRepositoryTasksInput { + s.TaskIds = v + return s +} + +type DescribeDataRepositoryTasksOutput struct { + _ struct{} `type:"structure"` + + // The collection of data repository task descriptions returned. + DataRepositoryTasks []*DataRepositoryTask `type:"list"` + + // (Optional) Opaque pagination token returned from a previous operation (String). + // If present, this token indicates from what point you can continue processing + // the request, where the previous NextToken value left off. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeDataRepositoryTasksOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeDataRepositoryTasksOutput) GoString() string { + return s.String() +} + +// SetDataRepositoryTasks sets the DataRepositoryTasks field's value. +func (s *DescribeDataRepositoryTasksOutput) SetDataRepositoryTasks(v []*DataRepositoryTask) *DescribeDataRepositoryTasksOutput { + s.DataRepositoryTasks = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeDataRepositoryTasksOutput) SetNextToken(v string) *DescribeDataRepositoryTasksOutput { + s.NextToken = &v + return s +} + +// The request object for DescribeFileSystemAliases operation. +type DescribeFileSystemAliasesInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the file system to return the associated DNS aliases for (String). + // + // FileSystemId is a required field + FileSystemId *string `min:"11" type:"string" required:"true"` + + // Maximum number of DNS aliases to return in the response (integer). This parameter + // value must be greater than 0. The number of items that Amazon FSx returns + // is the minimum of the MaxResults parameter specified in the request and the + // service's internal maximum number of items per page. + MaxResults *int64 `min:"1" type:"integer"` + + // Opaque pagination token returned from a previous DescribeFileSystemAliases + // operation (String). If a token is included in the request, the action continues + // the list from where the previous returning call left off. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeFileSystemAliasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeFileSystemAliasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeFileSystemAliasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeFileSystemAliasesInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DescribeFileSystemAliasesInput) SetClientRequestToken(v string) *DescribeFileSystemAliasesInput { + s.ClientRequestToken = &v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *DescribeFileSystemAliasesInput) SetFileSystemId(v string) *DescribeFileSystemAliasesInput { + s.FileSystemId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeFileSystemAliasesInput) SetMaxResults(v int64) *DescribeFileSystemAliasesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeFileSystemAliasesInput) SetNextToken(v string) *DescribeFileSystemAliasesInput { + s.NextToken = &v + return s +} + +// The response object for DescribeFileSystemAliases operation. +type DescribeFileSystemAliasesOutput struct { + _ struct{} `type:"structure"` + + // An array of one or more DNS aliases currently associated with the specified + // file system. + Aliases []*Alias `type:"list"` + + // Present if there are more DNS aliases than returned in the response (String). + // You can use the NextToken value in a later request to fetch additional descriptions. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeFileSystemAliasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeFileSystemAliasesOutput) GoString() string { + return s.String() +} + +// SetAliases sets the Aliases field's value. +func (s *DescribeFileSystemAliasesOutput) SetAliases(v []*Alias) *DescribeFileSystemAliasesOutput { + s.Aliases = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeFileSystemAliasesOutput) SetNextToken(v string) *DescribeFileSystemAliasesOutput { + s.NextToken = &v + return s +} + +// The request object for DescribeFileSystems operation. +type DescribeFileSystemsInput struct { + _ struct{} `type:"structure"` + + // IDs of the file systems whose descriptions you want to retrieve (String). + FileSystemIds []*string `type:"list"` + + // Maximum number of file systems to return in the response (integer). This + // parameter value must be greater than 0. The number of items that Amazon FSx + // returns is the minimum of the MaxResults parameter specified in the request + // and the service's internal maximum number of items per page. + MaxResults *int64 `min:"1" type:"integer"` + + // Opaque pagination token returned from a previous DescribeFileSystems operation + // (String). If a token present, the action continues the list from where the + // returning call left off. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeFileSystemsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeFileSystemsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeFileSystemsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeFileSystemsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemIds sets the FileSystemIds field's value. +func (s *DescribeFileSystemsInput) SetFileSystemIds(v []*string) *DescribeFileSystemsInput { + s.FileSystemIds = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeFileSystemsInput) SetMaxResults(v int64) *DescribeFileSystemsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeFileSystemsInput) SetNextToken(v string) *DescribeFileSystemsInput { + s.NextToken = &v + return s +} + +// The response object for DescribeFileSystems operation. +type DescribeFileSystemsOutput struct { + _ struct{} `type:"structure"` + + // An array of file system descriptions. + FileSystems []*FileSystem `type:"list"` + + // Present if there are more file systems than returned in the response (String). + // You can use the NextToken value in the later request to fetch the descriptions. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeFileSystemsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeFileSystemsOutput) GoString() string { + return s.String() +} + +// SetFileSystems sets the FileSystems field's value. +func (s *DescribeFileSystemsOutput) SetFileSystems(v []*FileSystem) *DescribeFileSystemsOutput { + s.FileSystems = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeFileSystemsOutput) SetNextToken(v string) *DescribeFileSystemsOutput { + s.NextToken = &v + return s +} + +type DescribeStorageVirtualMachinesInput struct { + _ struct{} `type:"structure"` + + // Enter a filter name:value pair to view a select set of SVMs. + Filters []*StorageVirtualMachineFilter `type:"list"` + + // The maximum number of resources to return in the response. This value must + // be an integer greater than zero. + MaxResults *int64 `min:"1" type:"integer"` + + // (Optional) Opaque pagination token returned from a previous operation (String). + // If present, this token indicates from what point you can continue processing + // the request, where the previous NextToken value left off. + NextToken *string `min:"1" type:"string"` + + // Enter the ID of one or more SVMs that you want to view. + StorageVirtualMachineIds []*string `type:"list"` +} + +// String returns the string representation +func (s DescribeStorageVirtualMachinesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeStorageVirtualMachinesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeStorageVirtualMachinesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeStorageVirtualMachinesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeStorageVirtualMachinesInput) SetFilters(v []*StorageVirtualMachineFilter) *DescribeStorageVirtualMachinesInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeStorageVirtualMachinesInput) SetMaxResults(v int64) *DescribeStorageVirtualMachinesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeStorageVirtualMachinesInput) SetNextToken(v string) *DescribeStorageVirtualMachinesInput { + s.NextToken = &v + return s +} + +// SetStorageVirtualMachineIds sets the StorageVirtualMachineIds field's value. +func (s *DescribeStorageVirtualMachinesInput) SetStorageVirtualMachineIds(v []*string) *DescribeStorageVirtualMachinesInput { + s.StorageVirtualMachineIds = v + return s +} + +type DescribeStorageVirtualMachinesOutput struct { + _ struct{} `type:"structure"` + + // (Optional) Opaque pagination token returned from a previous operation (String). + // If present, this token indicates from what point you can continue processing + // the request, where the previous NextToken value left off. + NextToken *string `min:"1" type:"string"` + + // Returned after a successful DescribeStorageVirtualMachines operation, describing + // each SVM. + StorageVirtualMachines []*StorageVirtualMachine `type:"list"` +} + +// String returns the string representation +func (s DescribeStorageVirtualMachinesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeStorageVirtualMachinesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeStorageVirtualMachinesOutput) SetNextToken(v string) *DescribeStorageVirtualMachinesOutput { + s.NextToken = &v + return s +} + +// SetStorageVirtualMachines sets the StorageVirtualMachines field's value. +func (s *DescribeStorageVirtualMachinesOutput) SetStorageVirtualMachines(v []*StorageVirtualMachine) *DescribeStorageVirtualMachinesOutput { + s.StorageVirtualMachines = v + return s +} + +type DescribeVolumesInput struct { + _ struct{} `type:"structure"` + + // Enter a filter name:value pair to view a select set of volumes. + Filters []*VolumeFilter `type:"list"` + + // The maximum number of resources to return in the response. This value must + // be an integer greater than zero. + MaxResults *int64 `min:"1" type:"integer"` + + // (Optional) Opaque pagination token returned from a previous operation (String). + // If present, this token indicates from what point you can continue processing + // the request, where the previous NextToken value left off. + NextToken *string `min:"1" type:"string"` + + // IDs of the volumes whose descriptions you want to retrieve. + VolumeIds []*string `type:"list"` +} + +// String returns the string representation +func (s DescribeVolumesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeVolumesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeVolumesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeVolumesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *DescribeVolumesInput) SetFilters(v []*VolumeFilter) *DescribeVolumesInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeVolumesInput) SetMaxResults(v int64) *DescribeVolumesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeVolumesInput) SetNextToken(v string) *DescribeVolumesInput { + s.NextToken = &v + return s +} + +// SetVolumeIds sets the VolumeIds field's value. +func (s *DescribeVolumesInput) SetVolumeIds(v []*string) *DescribeVolumesInput { + s.VolumeIds = v + return s +} + +type DescribeVolumesOutput struct { + _ struct{} `type:"structure"` + + // (Optional) Opaque pagination token returned from a previous operation (String). + // If present, this token indicates from what point you can continue processing + // the request, where the previous NextToken value left off. + NextToken *string `min:"1" type:"string"` + + // Returned after a successful DescribeVolumes operation, describing each volume. + Volumes []*Volume `type:"list"` +} + +// String returns the string representation +func (s DescribeVolumesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeVolumesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeVolumesOutput) SetNextToken(v string) *DescribeVolumesOutput { + s.NextToken = &v + return s +} + +// SetVolumes sets the Volumes field's value. +func (s *DescribeVolumesOutput) SetVolumes(v []*Volume) *DescribeVolumesOutput { + s.Volumes = v + return s +} + +// The request object of DNS aliases to disassociate from an Amazon FSx for +// Windows File Server file system. +type DisassociateFileSystemAliasesInput struct { + _ struct{} `type:"structure"` + + // An array of one or more DNS alias names to disassociate, or remove, from + // the file system. + // + // Aliases is a required field + Aliases []*string `type:"list" required:"true"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Specifies the file system from which to disassociate the DNS aliases. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" type:"string" required:"true"` +} + +// String returns the string representation +func (s DisassociateFileSystemAliasesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DisassociateFileSystemAliasesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateFileSystemAliasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateFileSystemAliasesInput"} + if s.Aliases == nil { + invalidParams.Add(request.NewErrParamRequired("Aliases")) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAliases sets the Aliases field's value. +func (s *DisassociateFileSystemAliasesInput) SetAliases(v []*string) *DisassociateFileSystemAliasesInput { + s.Aliases = v return s } // SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteBackupInput) SetClientRequestToken(v string) *DeleteBackupInput { +func (s *DisassociateFileSystemAliasesInput) SetClientRequestToken(v string) *DisassociateFileSystemAliasesInput { s.ClientRequestToken = &v return s } -// The response object for DeleteBackup operation. -type DeleteBackupOutput struct { +// SetFileSystemId sets the FileSystemId field's value. +func (s *DisassociateFileSystemAliasesInput) SetFileSystemId(v string) *DisassociateFileSystemAliasesInput { + s.FileSystemId = &v + return s +} + +// The system generated response showing the DNS aliases that Amazon FSx is +// attempting to disassociate from the file system. Use the API operation to +// monitor the status of the aliases Amazon FSx is removing from the file system. +type DisassociateFileSystemAliasesOutput struct { _ struct{} `type:"structure"` - // The ID of the backup deleted. - BackupId *string `min:"12" type:"string"` + // An array of one or more DNS aliases that Amazon FSx is attempting to disassociate + // from the file system. + Aliases []*Alias `type:"list"` +} - // The lifecycle of the backup. Should be DELETED. - Lifecycle *string `type:"string" enum:"BackupLifecycle"` +// String returns the string representation +func (s DisassociateFileSystemAliasesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DisassociateFileSystemAliasesOutput) GoString() string { + return s.String() +} + +// SetAliases sets the Aliases field's value. +func (s *DisassociateFileSystemAliasesOutput) SetAliases(v []*Alias) *DisassociateFileSystemAliasesOutput { + s.Aliases = v + return s +} + +// The SSD IOPS (input/output operations per second) configuration for an Amazon +// FSx for NetApp ONTAP file system. The default is 3 IOPS per GB of storage +// capacity, but you can provision additional IOPS per GB of storage. The configuration +// consists of the total number of provisioned SSD IOPS and how the amount was +// provisioned (by the customer or by the system). +type DiskIopsConfiguration struct { + _ struct{} `type:"structure"` + + // The total number of SSD IOPS provisioned for the file system. + Iops *int64 `type:"long"` + + // Specifies whether the number of IOPS for the file system is using the system + // default (AUTOMATIC) or was provisioned by the customer (USER_PROVISIONED). + Mode *string `type:"string" enum:"DiskIopsConfigurationMode"` } // String returns the string representation -func (s DeleteBackupOutput) String() string { +func (s DiskIopsConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteBackupOutput) GoString() string { +func (s DiskIopsConfiguration) GoString() string { return s.String() } -// SetBackupId sets the BackupId field's value. -func (s *DeleteBackupOutput) SetBackupId(v string) *DeleteBackupOutput { - s.BackupId = &v +// SetIops sets the Iops field's value. +func (s *DiskIopsConfiguration) SetIops(v int64) *DiskIopsConfiguration { + s.Iops = &v return s } -// SetLifecycle sets the Lifecycle field's value. -func (s *DeleteBackupOutput) SetLifecycle(v string) *DeleteBackupOutput { - s.Lifecycle = &v +// SetMode sets the Mode field's value. +func (s *DiskIopsConfiguration) SetMode(v string) *DiskIopsConfiguration { + s.Mode = &v return s } -// The request object for DeleteFileSystem operation. -type DeleteFileSystemInput struct { +// A description of a specific Amazon FSx file system. +type FileSystem struct { _ struct{} `type:"structure"` - // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent - // deletion. This is automatically filled on your behalf when using the AWS - // CLI or SDK. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + // A list of administrative actions for the file system that are in process + // or waiting to be processed. Administrative actions describe changes to the + // Amazon FSx file system that you have initiated using the UpdateFileSystem + // action. + AdministrativeActions []*AdministrativeAction `type:"list"` - // The ID of the file system you want to delete. + // The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z), + // also known as Unix time. + CreationTime *time.Time `type:"timestamp"` + + // The DNS name for the file system. + DNSName *string `min:"16" type:"string"` + + // A structure providing details of any failures that occur when creating the + // file system has failed. + FailureDetails *FileSystemFailureDetails `type:"structure"` + + // The system-generated, unique 17-digit ID of the file system. + FileSystemId *string `min:"11" type:"string"` + + // The type of Amazon FSx file system, which can be LUSTRE, WINDOWS, or ONTAP. + FileSystemType *string `type:"string" enum:"FileSystemType"` + + // The ID of the Key Management Service (KMS) key used to encrypt the file system's + // data for Amazon FSx for Windows File Server file systems, Amazon FSx for + // NetApp ONTAP file systems, and persistent Amazon FSx for Lustre file systems + // at rest. If not specified, the Amazon FSx managed key is used. The scratch + // Amazon FSx for Lustre file systems are always encrypted at rest using Amazon + // FSx managed keys. For more information, see Encrypt (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) + // in the Key Management Service API Reference. + KmsKeyId *string `min:"1" type:"string"` + + // The lifecycle status of the file system, following are the possible values + // and what they mean: // - // FileSystemId is a required field - FileSystemId *string `min:"11" type:"string" required:"true"` + // * AVAILABLE - The file system is in a healthy state, and is reachable + // and available for use. + // + // * CREATING - Amazon FSx is creating the new file system. + // + // * DELETING - Amazon FSx is deleting an existing file system. + // + // * FAILED - An existing file system has experienced an unrecoverable failure. + // When creating a new file system, Amazon FSx was unable to create the file + // system. + // + // * MISCONFIGURED indicates that the file system is in a failed but recoverable + // state. + // + // * UPDATING indicates that the file system is undergoing a customer initiated + // update. + Lifecycle *string `type:"string" enum:"FileSystemLifecycle"` - // The configuration object for the Amazon FSx for Lustre file system being - // deleted in the DeleteFileSystem operation. - LustreConfiguration *DeleteFileSystemLustreConfiguration `type:"structure"` + // The configuration for the Amazon FSx for Lustre file system. + LustreConfiguration *LustreFileSystemConfiguration `type:"structure"` - // The configuration object for the Microsoft Windows file system used in the - // DeleteFileSystem operation. - WindowsConfiguration *DeleteFileSystemWindowsConfiguration `type:"structure"` + // The IDs of the elastic network interface from which a specific file system + // is accessible. The elastic network interface is automatically created in + // the same VPC that the Amazon FSx file system was created in. For more information, + // see Elastic Network Interfaces (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html) + // in the Amazon EC2 User Guide. + // + // For an Amazon FSx for Windows File Server file system, you can have one network + // interface ID. For an Amazon FSx for Lustre file system, you can have more + // than one. + NetworkInterfaceIds []*string `type:"list"` + + // The configuration for this FSx for NetApp ONTAP file system. + OntapConfiguration *OntapFileSystemConfiguration `type:"structure"` + + // The Amazon Web Services account that created the file system. If the file + // system was created by an Identity and Access Management (IAM) user, the Amazon + // Web Services account to which the IAM user belongs is the owner. + OwnerId *string `min:"12" type:"string"` + + // The Amazon Resource Name (ARN) for the file system resource. + ResourceARN *string `min:"8" type:"string"` + + // The storage capacity of the file system in gibibytes (GiB). + StorageCapacity *int64 `type:"integer"` + + // The storage type of the file system. Valid values are SSD and HDD. If set + // to SSD, the file system uses solid state drive storage. If set to HDD, the + // file system uses hard disk drive storage. + StorageType *string `type:"string" enum:"StorageType"` + + // Specifies the IDs of the subnets that the file system is accessible from. + // For Windows and ONTAP MULTI_AZ_1 file system deployment type, there are two + // subnet IDs, one for the preferred file server and one for the standby file + // server. The preferred file server subnet identified in the PreferredSubnetID + // property. All other file systems have only one subnet ID. + // + // For Lustre file systems, and Single-AZ Windows file systems, this is the + // ID of the subnet that contains the endpoint for the file system. For MULTI_AZ_1 + // Windows and ONTAP file systems, the endpoint for the file system is available + // in the PreferredSubnetID. + SubnetIds []*string `type:"list"` + + // The tags to associate with the file system. For more information, see Tagging + // Your Amazon EC2 Resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) + // in the Amazon EC2 User Guide. + Tags []*Tag `min:"1" type:"list"` + + // The ID of the primary VPC for the file system. + VpcId *string `min:"12" type:"string"` + + // The configuration for this Microsoft Windows file system. + WindowsConfiguration *WindowsFileSystemConfiguration `type:"structure"` } // String returns the string representation -func (s DeleteFileSystemInput) String() string { +func (s FileSystem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteFileSystemInput) GoString() string { +func (s FileSystem) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteFileSystemInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.FileSystemId == nil { - invalidParams.Add(request.NewErrParamRequired("FileSystemId")) - } - if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { - invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) - } - if s.LustreConfiguration != nil { - if err := s.LustreConfiguration.Validate(); err != nil { - invalidParams.AddNested("LustreConfiguration", err.(request.ErrInvalidParams)) - } - } - if s.WindowsConfiguration != nil { - if err := s.WindowsConfiguration.Validate(); err != nil { - invalidParams.AddNested("WindowsConfiguration", err.(request.ErrInvalidParams)) - } - } +// SetAdministrativeActions sets the AdministrativeActions field's value. +func (s *FileSystem) SetAdministrativeActions(v []*AdministrativeAction) *FileSystem { + s.AdministrativeActions = v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *FileSystem) SetCreationTime(v time.Time) *FileSystem { + s.CreationTime = &v + return s +} + +// SetDNSName sets the DNSName field's value. +func (s *FileSystem) SetDNSName(v string) *FileSystem { + s.DNSName = &v + return s +} + +// SetFailureDetails sets the FailureDetails field's value. +func (s *FileSystem) SetFailureDetails(v *FileSystemFailureDetails) *FileSystem { + s.FailureDetails = v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *FileSystem) SetFileSystemId(v string) *FileSystem { + s.FileSystemId = &v + return s +} + +// SetFileSystemType sets the FileSystemType field's value. +func (s *FileSystem) SetFileSystemType(v string) *FileSystem { + s.FileSystemType = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *FileSystem) SetKmsKeyId(v string) *FileSystem { + s.KmsKeyId = &v + return s +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *FileSystem) SetLifecycle(v string) *FileSystem { + s.Lifecycle = &v + return s +} + +// SetLustreConfiguration sets the LustreConfiguration field's value. +func (s *FileSystem) SetLustreConfiguration(v *LustreFileSystemConfiguration) *FileSystem { + s.LustreConfiguration = v + return s +} + +// SetNetworkInterfaceIds sets the NetworkInterfaceIds field's value. +func (s *FileSystem) SetNetworkInterfaceIds(v []*string) *FileSystem { + s.NetworkInterfaceIds = v + return s +} + +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *FileSystem) SetOntapConfiguration(v *OntapFileSystemConfiguration) *FileSystem { + s.OntapConfiguration = v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *FileSystem) SetOwnerId(v string) *FileSystem { + s.OwnerId = &v + return s +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *FileSystem) SetResourceARN(v string) *FileSystem { + s.ResourceARN = &v + return s +} + +// SetStorageCapacity sets the StorageCapacity field's value. +func (s *FileSystem) SetStorageCapacity(v int64) *FileSystem { + s.StorageCapacity = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetStorageType sets the StorageType field's value. +func (s *FileSystem) SetStorageType(v string) *FileSystem { + s.StorageType = &v + return s } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteFileSystemInput) SetClientRequestToken(v string) *DeleteFileSystemInput { - s.ClientRequestToken = &v +// SetSubnetIds sets the SubnetIds field's value. +func (s *FileSystem) SetSubnetIds(v []*string) *FileSystem { + s.SubnetIds = v return s } -// SetFileSystemId sets the FileSystemId field's value. -func (s *DeleteFileSystemInput) SetFileSystemId(v string) *DeleteFileSystemInput { - s.FileSystemId = &v +// SetTags sets the Tags field's value. +func (s *FileSystem) SetTags(v []*Tag) *FileSystem { + s.Tags = v return s } -// SetLustreConfiguration sets the LustreConfiguration field's value. -func (s *DeleteFileSystemInput) SetLustreConfiguration(v *DeleteFileSystemLustreConfiguration) *DeleteFileSystemInput { - s.LustreConfiguration = v +// SetVpcId sets the VpcId field's value. +func (s *FileSystem) SetVpcId(v string) *FileSystem { + s.VpcId = &v return s } // SetWindowsConfiguration sets the WindowsConfiguration field's value. -func (s *DeleteFileSystemInput) SetWindowsConfiguration(v *DeleteFileSystemWindowsConfiguration) *DeleteFileSystemInput { +func (s *FileSystem) SetWindowsConfiguration(v *WindowsFileSystemConfiguration) *FileSystem { s.WindowsConfiguration = v return s } -// The configuration object for the Amazon FSx for Lustre file system being -// deleted in the DeleteFileSystem operation. -type DeleteFileSystemLustreConfiguration struct { +// An Amazon FSx for NetApp ONTAP file system has two endpoints that are used +// to access data or to manage the file system using the NetApp ONTAP CLI, REST +// API, or NetApp SnapMirror. They are the Management and Intercluster endpoints. +type FileSystemEndpoint struct { _ struct{} `type:"structure"` - // Use if SkipFinalBackup is set to false, and you want to apply an array of - // tags to the final backup. If you have set the file system property CopyTagsToBackups - // to true, and you specify one or more FinalBackupTags when deleting a file - // system, Amazon FSx will not copy any existing file system tags to the backup. - FinalBackupTags []*Tag `min:"1" type:"list"` + // The Domain Name Service (DNS) name for the file system. You can mount your + // file system using its DNS name. + DNSName *string `min:"16" type:"string"` - // Set SkipFinalBackup to false if you want to take a final backup of the file - // system you are deleting. By default, Amazon FSx will not take a final backup - // on your behalf when the DeleteFileSystem operation is invoked. (Default = - // true) - SkipFinalBackup *bool `type:"boolean"` + // IP addresses of the file system endpoint. + IpAddresses []*string `min:"1" type:"list"` } // String returns the string representation -func (s DeleteFileSystemLustreConfiguration) String() string { +func (s FileSystemEndpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteFileSystemLustreConfiguration) GoString() string { +func (s FileSystemEndpoint) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteFileSystemLustreConfiguration) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemLustreConfiguration"} - if s.FinalBackupTags != nil && len(s.FinalBackupTags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FinalBackupTags", 1)) - } - if s.FinalBackupTags != nil { - for i, v := range s.FinalBackupTags { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FinalBackupTags", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetFinalBackupTags sets the FinalBackupTags field's value. -func (s *DeleteFileSystemLustreConfiguration) SetFinalBackupTags(v []*Tag) *DeleteFileSystemLustreConfiguration { - s.FinalBackupTags = v +// SetDNSName sets the DNSName field's value. +func (s *FileSystemEndpoint) SetDNSName(v string) *FileSystemEndpoint { + s.DNSName = &v return s } -// SetSkipFinalBackup sets the SkipFinalBackup field's value. -func (s *DeleteFileSystemLustreConfiguration) SetSkipFinalBackup(v bool) *DeleteFileSystemLustreConfiguration { - s.SkipFinalBackup = &v +// SetIpAddresses sets the IpAddresses field's value. +func (s *FileSystemEndpoint) SetIpAddresses(v []*string) *FileSystemEndpoint { + s.IpAddresses = v return s } -// The response object for the Amazon FSx for Lustre file system being deleted -// in the DeleteFileSystem operation. -type DeleteFileSystemLustreResponse struct { +// An Amazon FSx for NetApp ONTAP file system has the following endpoints that +// are used to access data or to manage the file system using the NetApp ONTAP +// CLI, REST API, or NetApp SnapMirror. +type FileSystemEndpoints struct { _ struct{} `type:"structure"` - // The ID of the final backup for this file system. - FinalBackupId *string `min:"12" type:"string"` + // An endpoint for managing your file system by setting up NetApp SnapMirror + // with other ONTAP systems. + Intercluster *FileSystemEndpoint `type:"structure"` - // The set of tags applied to the final backup. - FinalBackupTags []*Tag `min:"1" type:"list"` + // An endpoint for managing your file system using the NetApp ONTAP CLI and + // NetApp ONTAP API. + Management *FileSystemEndpoint `type:"structure"` } // String returns the string representation -func (s DeleteFileSystemLustreResponse) String() string { +func (s FileSystemEndpoints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteFileSystemLustreResponse) GoString() string { +func (s FileSystemEndpoints) GoString() string { return s.String() } -// SetFinalBackupId sets the FinalBackupId field's value. -func (s *DeleteFileSystemLustreResponse) SetFinalBackupId(v string) *DeleteFileSystemLustreResponse { - s.FinalBackupId = &v +// SetIntercluster sets the Intercluster field's value. +func (s *FileSystemEndpoints) SetIntercluster(v *FileSystemEndpoint) *FileSystemEndpoints { + s.Intercluster = v return s } -// SetFinalBackupTags sets the FinalBackupTags field's value. -func (s *DeleteFileSystemLustreResponse) SetFinalBackupTags(v []*Tag) *DeleteFileSystemLustreResponse { - s.FinalBackupTags = v +// SetManagement sets the Management field's value. +func (s *FileSystemEndpoints) SetManagement(v *FileSystemEndpoint) *FileSystemEndpoints { + s.Management = v return s } -// The response object for the DeleteFileSystem operation. -type DeleteFileSystemOutput struct { +// A structure providing details of any failures that occur when creating the +// file system has failed. +type FileSystemFailureDetails struct { _ struct{} `type:"structure"` - // The ID of the file system being deleted. - FileSystemId *string `min:"11" type:"string"` - - // The file system lifecycle for the deletion request. Should be DELETING. - Lifecycle *string `type:"string" enum:"FileSystemLifecycle"` - - // The response object for the Amazon FSx for Lustre file system being deleted - // in the DeleteFileSystem operation. - LustreResponse *DeleteFileSystemLustreResponse `type:"structure"` - - // The response object for the Microsoft Windows file system used in the DeleteFileSystem - // operation. - WindowsResponse *DeleteFileSystemWindowsResponse `type:"structure"` + // A message describing any failures that occurred during file system creation. + Message *string `min:"1" type:"string"` } // String returns the string representation -func (s DeleteFileSystemOutput) String() string { +func (s FileSystemFailureDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteFileSystemOutput) GoString() string { +func (s FileSystemFailureDetails) GoString() string { return s.String() } -// SetFileSystemId sets the FileSystemId field's value. -func (s *DeleteFileSystemOutput) SetFileSystemId(v string) *DeleteFileSystemOutput { - s.FileSystemId = &v - return s -} - -// SetLifecycle sets the Lifecycle field's value. -func (s *DeleteFileSystemOutput) SetLifecycle(v string) *DeleteFileSystemOutput { - s.Lifecycle = &v - return s -} - -// SetLustreResponse sets the LustreResponse field's value. -func (s *DeleteFileSystemOutput) SetLustreResponse(v *DeleteFileSystemLustreResponse) *DeleteFileSystemOutput { - s.LustreResponse = v - return s -} - -// SetWindowsResponse sets the WindowsResponse field's value. -func (s *DeleteFileSystemOutput) SetWindowsResponse(v *DeleteFileSystemWindowsResponse) *DeleteFileSystemOutput { - s.WindowsResponse = v +// SetMessage sets the Message field's value. +func (s *FileSystemFailureDetails) SetMessage(v string) *FileSystemFailureDetails { + s.Message = &v return s } -// The configuration object for the Microsoft Windows file system used in the -// DeleteFileSystem operation. -type DeleteFileSystemWindowsConfiguration struct { - _ struct{} `type:"structure"` - - // A set of tags for your final backup. - FinalBackupTags []*Tag `min:"1" type:"list"` +// No Amazon FSx file systems were found based upon supplied parameters. +type FileSystemNotFound struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // By default, Amazon FSx for Windows takes a final backup on your behalf when - // the DeleteFileSystem operation is invoked. Doing this helps protect you from - // data loss, and we highly recommend taking the final backup. If you want to - // skip this backup, use this flag to do so. - SkipFinalBackup *bool `type:"boolean"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DeleteFileSystemWindowsConfiguration) String() string { +func (s FileSystemNotFound) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteFileSystemWindowsConfiguration) GoString() string { +func (s FileSystemNotFound) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteFileSystemWindowsConfiguration) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemWindowsConfiguration"} - if s.FinalBackupTags != nil && len(s.FinalBackupTags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FinalBackupTags", 1)) - } - if s.FinalBackupTags != nil { - for i, v := range s.FinalBackupTags { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FinalBackupTags", i), err.(request.ErrInvalidParams)) - } - } +func newErrorFileSystemNotFound(v protocol.ResponseMetadata) error { + return &FileSystemNotFound{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *FileSystemNotFound) Code() string { + return "FileSystemNotFound" +} + +// Message returns the exception's message. +func (s *FileSystemNotFound) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *FileSystemNotFound) OrigErr() error { return nil } -// SetFinalBackupTags sets the FinalBackupTags field's value. -func (s *DeleteFileSystemWindowsConfiguration) SetFinalBackupTags(v []*Tag) *DeleteFileSystemWindowsConfiguration { - s.FinalBackupTags = v - return s +func (s *FileSystemNotFound) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetSkipFinalBackup sets the SkipFinalBackup field's value. -func (s *DeleteFileSystemWindowsConfiguration) SetSkipFinalBackup(v bool) *DeleteFileSystemWindowsConfiguration { - s.SkipFinalBackup = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *FileSystemNotFound) StatusCode() int { + return s.RespMetadata.StatusCode } -// The response object for the Microsoft Windows file system used in the DeleteFileSystem -// operation. -type DeleteFileSystemWindowsResponse struct { +// RequestID returns the service's response RequestID for request. +func (s *FileSystemNotFound) RequestID() string { + return s.RespMetadata.RequestID +} + +// A filter used to restrict the results of describe calls. You can use multiple +// filters to return results that meet all applied filter requirements. +type Filter struct { _ struct{} `type:"structure"` - // The ID of the final backup for this file system. - FinalBackupId *string `min:"12" type:"string"` + // The name for this filter. + Name *string `type:"string" enum:"FilterName"` - // The set of tags applied to the final backup. - FinalBackupTags []*Tag `min:"1" type:"list"` + // The values of the filter. These are all the values for any of the applied + // filters. + Values []*string `type:"list"` } // String returns the string representation -func (s DeleteFileSystemWindowsResponse) String() string { +func (s Filter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteFileSystemWindowsResponse) GoString() string { +func (s Filter) GoString() string { return s.String() } -// SetFinalBackupId sets the FinalBackupId field's value. -func (s *DeleteFileSystemWindowsResponse) SetFinalBackupId(v string) *DeleteFileSystemWindowsResponse { - s.FinalBackupId = &v - return s -} - -// SetFinalBackupTags sets the FinalBackupTags field's value. -func (s *DeleteFileSystemWindowsResponse) SetFinalBackupTags(v []*Tag) *DeleteFileSystemWindowsResponse { - s.FinalBackupTags = v +// SetName sets the Name field's value. +func (s *Filter) SetName(v string) *Filter { + s.Name = &v return s -} - -// The request object for DescribeBackups operation. -type DescribeBackupsInput struct { - _ struct{} `type:"structure"` - - // IDs of the backups you want to retrieve (String). This overrides any filters. - // If any IDs are not found, BackupNotFound will be thrown. - BackupIds []*string `type:"list"` +} - // Filters structure. Supported names are file-system-id and backup-type. - Filters []*Filter `type:"list"` +// SetValues sets the Values field's value. +func (s *Filter) SetValues(v []*string) *Filter { + s.Values = v + return s +} - // Maximum number of backups to return in the response (integer). This parameter - // value must be greater than 0. The number of items that Amazon FSx returns - // is the minimum of the MaxResults parameter specified in the request and the - // service's internal maximum number of items per page. - MaxResults *int64 `min:"1" type:"integer"` +// The error returned when a second request is received with the same client +// request token but different parameters settings. A client request token should +// always uniquely identify a single request. +type IncompatibleParameterError struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Opaque pagination token returned from a previous DescribeBackups operation - // (String). If a token present, the action continues the list from where the - // returning call left off. - NextToken *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` + + // A parameter that is incompatible with the earlier request. + // + // Parameter is a required field + Parameter *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DescribeBackupsInput) String() string { +func (s IncompatibleParameterError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeBackupsInput) GoString() string { +func (s IncompatibleParameterError) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeBackupsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeBackupsInput"} - 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)) +func newErrorIncompatibleParameterError(v protocol.ResponseMetadata) error { + return &IncompatibleParameterError{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *IncompatibleParameterError) Code() string { + return "IncompatibleParameterError" } -// SetBackupIds sets the BackupIds field's value. -func (s *DescribeBackupsInput) SetBackupIds(v []*string) *DescribeBackupsInput { - s.BackupIds = v - return s +// Message returns the exception's message. +func (s *IncompatibleParameterError) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetFilters sets the Filters field's value. -func (s *DescribeBackupsInput) SetFilters(v []*Filter) *DescribeBackupsInput { - s.Filters = v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *IncompatibleParameterError) OrigErr() error { + return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *DescribeBackupsInput) SetMaxResults(v int64) *DescribeBackupsInput { - s.MaxResults = &v - return s +func (s *IncompatibleParameterError) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetNextToken sets the NextToken field's value. -func (s *DescribeBackupsInput) SetNextToken(v string) *DescribeBackupsInput { - s.NextToken = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *IncompatibleParameterError) StatusCode() int { + return s.RespMetadata.StatusCode } -// Response object for DescribeBackups operation. -type DescribeBackupsOutput struct { - _ struct{} `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *IncompatibleParameterError) RequestID() string { + return s.RespMetadata.RequestID +} - // An array of backups. - Backups []*Backup `type:"list"` +// Amazon FSx doesn't support Multi-AZ Windows File Server copy backup in the +// destination Region, so the copied backup can't be restored. +type IncompatibleRegionForMultiAZ struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // This is present if there are more backups than returned in the response (String). - // You can use the NextToken value in the later request to fetch the backups. - NextToken *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeBackupsOutput) String() string { +func (s IncompatibleRegionForMultiAZ) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeBackupsOutput) GoString() string { +func (s IncompatibleRegionForMultiAZ) GoString() string { return s.String() } -// SetBackups sets the Backups field's value. -func (s *DescribeBackupsOutput) SetBackups(v []*Backup) *DescribeBackupsOutput { - s.Backups = v - return s +func newErrorIncompatibleRegionForMultiAZ(v protocol.ResponseMetadata) error { + return &IncompatibleRegionForMultiAZ{ + RespMetadata: v, + } } -// SetNextToken sets the NextToken field's value. -func (s *DescribeBackupsOutput) SetNextToken(v string) *DescribeBackupsOutput { - s.NextToken = &v - return s +// Code returns the exception type name. +func (s *IncompatibleRegionForMultiAZ) Code() string { + return "IncompatibleRegionForMultiAZ" } -type DescribeDataRepositoryTasksInput struct { - _ struct{} `type:"structure"` +// Message returns the exception's message. +func (s *IncompatibleRegionForMultiAZ) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} - // (Optional) You can use filters to narrow the DescribeDataRepositoryTasks - // response to include just tasks for specific file systems, or tasks in a specific - // lifecycle state. - Filters []*DataRepositoryTaskFilter `type:"list"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *IncompatibleRegionForMultiAZ) OrigErr() error { + return nil +} - // The maximum number of resources to return in the response. This value must - // be an integer greater than zero. - MaxResults *int64 `min:"1" type:"integer"` +func (s *IncompatibleRegionForMultiAZ) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} - // (Optional) Opaque pagination token returned from a previous operation (String). - // If present, this token indicates from what point you can continue processing - // the request, where the previous NextToken value left off. - NextToken *string `min:"1" type:"string"` +// Status code returns the HTTP status code for the request's response error. +func (s *IncompatibleRegionForMultiAZ) StatusCode() int { + return s.RespMetadata.StatusCode +} - // (Optional) IDs of the tasks whose descriptions you want to retrieve (String). - TaskIds []*string `type:"list"` +// RequestID returns the service's response RequestID for request. +func (s *IncompatibleRegionForMultiAZ) RequestID() string { + return s.RespMetadata.RequestID +} + +// A generic error indicating a server-side failure. +type InternalServerError struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeDataRepositoryTasksInput) String() string { +func (s InternalServerError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataRepositoryTasksInput) GoString() string { +func (s InternalServerError) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDataRepositoryTasksInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDataRepositoryTasksInput"} - 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)) +func newErrorInternalServerError(v protocol.ResponseMetadata) error { + return &InternalServerError{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *InternalServerError) Code() string { + return "InternalServerError" } -// SetFilters sets the Filters field's value. -func (s *DescribeDataRepositoryTasksInput) SetFilters(v []*DataRepositoryTaskFilter) *DescribeDataRepositoryTasksInput { - s.Filters = v - return s +// Message returns the exception's message. +func (s *InternalServerError) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetMaxResults sets the MaxResults field's value. -func (s *DescribeDataRepositoryTasksInput) SetMaxResults(v int64) *DescribeDataRepositoryTasksInput { - s.MaxResults = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerError) OrigErr() error { + return nil } -// SetNextToken sets the NextToken field's value. -func (s *DescribeDataRepositoryTasksInput) SetNextToken(v string) *DescribeDataRepositoryTasksInput { - s.NextToken = &v - return s +func (s *InternalServerError) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetTaskIds sets the TaskIds field's value. -func (s *DescribeDataRepositoryTasksInput) SetTaskIds(v []*string) *DescribeDataRepositoryTasksInput { - s.TaskIds = v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerError) StatusCode() int { + return s.RespMetadata.StatusCode } -type DescribeDataRepositoryTasksOutput struct { - _ struct{} `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *InternalServerError) RequestID() string { + return s.RespMetadata.RequestID +} - // The collection of data repository task descriptions returned. - DataRepositoryTasks []*DataRepositoryTask `type:"list"` +// The Key Management Service (KMS) key of the destination backup is invalid. +type InvalidDestinationKmsKey struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // (Optional) Opaque pagination token returned from a previous operation (String). - // If present, this token indicates from what point you can continue processing - // the request, where the previous NextToken value left off. - NextToken *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeDataRepositoryTasksOutput) String() string { +func (s InvalidDestinationKmsKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataRepositoryTasksOutput) GoString() string { +func (s InvalidDestinationKmsKey) GoString() string { return s.String() } -// SetDataRepositoryTasks sets the DataRepositoryTasks field's value. -func (s *DescribeDataRepositoryTasksOutput) SetDataRepositoryTasks(v []*DataRepositoryTask) *DescribeDataRepositoryTasksOutput { - s.DataRepositoryTasks = v - return s +func newErrorInvalidDestinationKmsKey(v protocol.ResponseMetadata) error { + return &InvalidDestinationKmsKey{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidDestinationKmsKey) Code() string { + return "InvalidDestinationKmsKey" +} + +// Message returns the exception's message. +func (s *InvalidDestinationKmsKey) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidDestinationKmsKey) OrigErr() error { + return nil } -// SetNextToken sets the NextToken field's value. -func (s *DescribeDataRepositoryTasksOutput) SetNextToken(v string) *DescribeDataRepositoryTasksOutput { - s.NextToken = &v - return s +func (s *InvalidDestinationKmsKey) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// The request object for DescribeFileSystemAliases operation. -type DescribeFileSystemAliasesInput struct { - _ struct{} `type:"structure"` - - // (Optional) An idempotency token for resource creation, in a string of up - // to 64 ASCII characters. This token is automatically filled on your behalf - // when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidDestinationKmsKey) StatusCode() int { + return s.RespMetadata.StatusCode +} - // The ID of the file system to return the associated DNS aliases for (String). - // - // FileSystemId is a required field - FileSystemId *string `min:"11" type:"string" required:"true"` +// RequestID returns the service's response RequestID for request. +func (s *InvalidDestinationKmsKey) RequestID() string { + return s.RespMetadata.RequestID +} - // Maximum number of DNS aliases to return in the response (integer). This parameter - // value must be greater than 0. The number of items that Amazon FSx returns - // is the minimum of the MaxResults parameter specified in the request and the - // service's internal maximum number of items per page. - MaxResults *int64 `min:"1" type:"integer"` +// The path provided for data repository export isn't valid. +type InvalidExportPath struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Opaque pagination token returned from a previous DescribeFileSystemAliases - // operation (String). If a token is included in the request, the action continues - // the list from where the previous returning call left off. - NextToken *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeFileSystemAliasesInput) String() string { +func (s InvalidExportPath) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeFileSystemAliasesInput) GoString() string { +func (s InvalidExportPath) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeFileSystemAliasesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeFileSystemAliasesInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.FileSystemId == nil { - invalidParams.Add(request.NewErrParamRequired("FileSystemId")) - } - if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { - invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) - } - 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)) +func newErrorInvalidExportPath(v protocol.ResponseMetadata) error { + return &InvalidExportPath{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *InvalidExportPath) Code() string { + return "InvalidExportPath" } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DescribeFileSystemAliasesInput) SetClientRequestToken(v string) *DescribeFileSystemAliasesInput { - s.ClientRequestToken = &v - return s +// Message returns the exception's message. +func (s *InvalidExportPath) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetFileSystemId sets the FileSystemId field's value. -func (s *DescribeFileSystemAliasesInput) SetFileSystemId(v string) *DescribeFileSystemAliasesInput { - s.FileSystemId = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidExportPath) OrigErr() error { + return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *DescribeFileSystemAliasesInput) SetMaxResults(v int64) *DescribeFileSystemAliasesInput { - s.MaxResults = &v - return s +func (s *InvalidExportPath) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetNextToken sets the NextToken field's value. -func (s *DescribeFileSystemAliasesInput) SetNextToken(v string) *DescribeFileSystemAliasesInput { - s.NextToken = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidExportPath) StatusCode() int { + return s.RespMetadata.StatusCode } -// The response object for DescribeFileSystemAliases operation. -type DescribeFileSystemAliasesOutput struct { - _ struct{} `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *InvalidExportPath) RequestID() string { + return s.RespMetadata.RequestID +} - // An array of one or more DNS aliases currently associated with the specified - // file system. - Aliases []*Alias `type:"list"` +// The path provided for data repository import isn't valid. +type InvalidImportPath struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Present if there are more DNS aliases than returned in the response (String). - // You can use the NextToken value in a later request to fetch additional descriptions. - NextToken *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeFileSystemAliasesOutput) String() string { +func (s InvalidImportPath) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeFileSystemAliasesOutput) GoString() string { +func (s InvalidImportPath) GoString() string { return s.String() } -// SetAliases sets the Aliases field's value. -func (s *DescribeFileSystemAliasesOutput) SetAliases(v []*Alias) *DescribeFileSystemAliasesOutput { - s.Aliases = v - return s +func newErrorInvalidImportPath(v protocol.ResponseMetadata) error { + return &InvalidImportPath{ + RespMetadata: v, + } } -// SetNextToken sets the NextToken field's value. -func (s *DescribeFileSystemAliasesOutput) SetNextToken(v string) *DescribeFileSystemAliasesOutput { - s.NextToken = &v - return s +// Code returns the exception type name. +func (s *InvalidImportPath) Code() string { + return "InvalidImportPath" } -// The request object for DescribeFileSystems operation. -type DescribeFileSystemsInput struct { - _ struct{} `type:"structure"` +// Message returns the exception's message. +func (s *InvalidImportPath) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} - // IDs of the file systems whose descriptions you want to retrieve (String). - FileSystemIds []*string `type:"list"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidImportPath) OrigErr() error { + return nil +} - // Maximum number of file systems to return in the response (integer). This - // parameter value must be greater than 0. The number of items that Amazon FSx - // returns is the minimum of the MaxResults parameter specified in the request - // and the service's internal maximum number of items per page. - MaxResults *int64 `min:"1" type:"integer"` +func (s *InvalidImportPath) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} - // Opaque pagination token returned from a previous DescribeFileSystems operation - // (String). If a token present, the action continues the list from where the - // returning call left off. - NextToken *string `min:"1" type:"string"` +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidImportPath) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidImportPath) RequestID() string { + return s.RespMetadata.RequestID +} + +// One or more network settings specified in the request are invalid. +type InvalidNetworkSettings struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The route table ID is either invalid or not part of the VPC specified. + InvalidRouteTableId *string `min:"12" type:"string"` + + // The security group ID is either invalid or not part of the VPC specified. + InvalidSecurityGroupId *string `min:"11" type:"string"` + + // The subnet ID that is either invalid or not part of the VPC specified. + InvalidSubnetId *string `min:"15" type:"string"` + + // Error message explaining what's wrong with network settings. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeFileSystemsInput) String() string { +func (s InvalidNetworkSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeFileSystemsInput) GoString() string { +func (s InvalidNetworkSettings) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeFileSystemsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeFileSystemsInput"} - 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)) +func newErrorInvalidNetworkSettings(v protocol.ResponseMetadata) error { + return &InvalidNetworkSettings{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *InvalidNetworkSettings) Code() string { + return "InvalidNetworkSettings" +} + +// Message returns the exception's message. +func (s *InvalidNetworkSettings) Message() string { + if s.Message_ != nil { + return *s.Message_ } - return nil + return "" } -// SetFileSystemIds sets the FileSystemIds field's value. -func (s *DescribeFileSystemsInput) SetFileSystemIds(v []*string) *DescribeFileSystemsInput { - s.FileSystemIds = v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidNetworkSettings) OrigErr() error { + return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *DescribeFileSystemsInput) SetMaxResults(v int64) *DescribeFileSystemsInput { - s.MaxResults = &v - return s +func (s *InvalidNetworkSettings) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetNextToken sets the NextToken field's value. -func (s *DescribeFileSystemsInput) SetNextToken(v string) *DescribeFileSystemsInput { - s.NextToken = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidNetworkSettings) StatusCode() int { + return s.RespMetadata.StatusCode } -// The response object for DescribeFileSystems operation. -type DescribeFileSystemsOutput struct { - _ struct{} `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *InvalidNetworkSettings) RequestID() string { + return s.RespMetadata.RequestID +} - // An array of file system descriptions. - FileSystems []*FileSystem `type:"list"` +// An invalid value for PerUnitStorageThroughput was provided. Please create +// your file system again, using a valid value. +type InvalidPerUnitStorageThroughput struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Present if there are more file systems than returned in the response (String). - // You can use the NextToken value in the later request to fetch the descriptions. - NextToken *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DescribeFileSystemsOutput) String() string { +func (s InvalidPerUnitStorageThroughput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeFileSystemsOutput) GoString() string { +func (s InvalidPerUnitStorageThroughput) GoString() string { return s.String() } -// SetFileSystems sets the FileSystems field's value. -func (s *DescribeFileSystemsOutput) SetFileSystems(v []*FileSystem) *DescribeFileSystemsOutput { - s.FileSystems = v - return s +func newErrorInvalidPerUnitStorageThroughput(v protocol.ResponseMetadata) error { + return &InvalidPerUnitStorageThroughput{ + RespMetadata: v, + } } -// SetNextToken sets the NextToken field's value. -func (s *DescribeFileSystemsOutput) SetNextToken(v string) *DescribeFileSystemsOutput { - s.NextToken = &v - return s +// Code returns the exception type name. +func (s *InvalidPerUnitStorageThroughput) Code() string { + return "InvalidPerUnitStorageThroughput" } -// The request object of DNS aliases to disassociate from an Amazon FSx for -// Windows File Server file system. -type DisassociateFileSystemAliasesInput struct { - _ struct{} `type:"structure"` +// Message returns the exception's message. +func (s *InvalidPerUnitStorageThroughput) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} - // An array of one or more DNS alias names to disassociate, or remove, from - // the file system. - // - // Aliases is a required field - Aliases []*string `type:"list" required:"true"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidPerUnitStorageThroughput) OrigErr() error { + return nil +} - // (Optional) An idempotency token for resource creation, in a string of up - // to 64 ASCII characters. This token is automatically filled on your behalf - // when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +func (s *InvalidPerUnitStorageThroughput) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} - // Specifies the file system from which to disassociate the DNS aliases. - // - // FileSystemId is a required field - FileSystemId *string `min:"11" type:"string" required:"true"` +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidPerUnitStorageThroughput) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidPerUnitStorageThroughput) RequestID() string { + return s.RespMetadata.RequestID +} + +// The Region provided for Source Region is invalid or is in a different Amazon +// Web Services partition. +type InvalidRegion struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DisassociateFileSystemAliasesInput) String() string { +func (s InvalidRegion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DisassociateFileSystemAliasesInput) GoString() string { +func (s InvalidRegion) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateFileSystemAliasesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateFileSystemAliasesInput"} - if s.Aliases == nil { - invalidParams.Add(request.NewErrParamRequired("Aliases")) - } - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.FileSystemId == nil { - invalidParams.Add(request.NewErrParamRequired("FileSystemId")) - } - if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { - invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) +func newErrorInvalidRegion(v protocol.ResponseMetadata) error { + return &InvalidRegion{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *InvalidRegion) Code() string { + return "InvalidRegion" +} + +// Message returns the exception's message. +func (s *InvalidRegion) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidRegion) OrigErr() error { return nil } -// SetAliases sets the Aliases field's value. -func (s *DisassociateFileSystemAliasesInput) SetAliases(v []*string) *DisassociateFileSystemAliasesInput { - s.Aliases = v - return s +func (s *InvalidRegion) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DisassociateFileSystemAliasesInput) SetClientRequestToken(v string) *DisassociateFileSystemAliasesInput { - s.ClientRequestToken = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidRegion) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetFileSystemId sets the FileSystemId field's value. -func (s *DisassociateFileSystemAliasesInput) SetFileSystemId(v string) *DisassociateFileSystemAliasesInput { - s.FileSystemId = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *InvalidRegion) RequestID() string { + return s.RespMetadata.RequestID } -// The system generated response showing the DNS aliases that Amazon FSx is -// attempting to disassociate from the file system. Use the API operation to -// monitor the status of the aliases Amazon FSx is removing from the file system. -type DisassociateFileSystemAliasesOutput struct { - _ struct{} `type:"structure"` +// The Key Management Service (KMS) key of the source backup is invalid. +type InvalidSourceKmsKey struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // An array of one or more DNS aliases that Amazon FSx is attempting to disassociate - // from the file system. - Aliases []*Alias `type:"list"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s DisassociateFileSystemAliasesOutput) String() string { +func (s InvalidSourceKmsKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DisassociateFileSystemAliasesOutput) GoString() string { +func (s InvalidSourceKmsKey) GoString() string { return s.String() } -// SetAliases sets the Aliases field's value. -func (s *DisassociateFileSystemAliasesOutput) SetAliases(v []*Alias) *DisassociateFileSystemAliasesOutput { - s.Aliases = v - return s +func newErrorInvalidSourceKmsKey(v protocol.ResponseMetadata) error { + return &InvalidSourceKmsKey{ + RespMetadata: v, + } } -// A description of a specific Amazon FSx file system. -type FileSystem struct { - _ struct{} `type:"structure"` - - // A list of administrative actions for the file system that are in process - // or waiting to be processed. Administrative actions describe changes to the - // Windows file system that you have initiated using the UpdateFileSystem action. - AdministrativeActions []*AdministrativeAction `type:"list"` - - // The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z), - // also known as Unix time. - CreationTime *time.Time `type:"timestamp"` - - // The DNS name for the file system. - DNSName *string `min:"16" type:"string"` - - // A structure providing details of any failures that occur when creating the - // file system has failed. - FailureDetails *FileSystemFailureDetails `type:"structure"` +// Code returns the exception type name. +func (s *InvalidSourceKmsKey) Code() string { + return "InvalidSourceKmsKey" +} - // The system-generated, unique 17-digit ID of the file system. - FileSystemId *string `min:"11" type:"string"` +// Message returns the exception's message. +func (s *InvalidSourceKmsKey) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} - // The type of Amazon FSx file system, either LUSTRE or WINDOWS. - FileSystemType *string `type:"string" enum:"FileSystemType"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidSourceKmsKey) OrigErr() error { + return nil +} - // The ID of the AWS Key Management Service (AWS KMS) key used to encrypt the - // file system's data for Amazon FSx for Windows File Server file systems and - // persistent Amazon FSx for Lustre file systems at rest. In either case, if - // not specified, the Amazon FSx managed key is used. The scratch Amazon FSx - // for Lustre file systems are always encrypted at rest using Amazon FSx managed - // keys. For more information, see Encrypt (https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) - // in the AWS Key Management Service API Reference. - KmsKeyId *string `min:"1" type:"string"` +func (s *InvalidSourceKmsKey) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} - // The lifecycle status of the file system, following are the possible values - // and what they mean: - // - // * AVAILABLE - The file system is in a healthy state, and is reachable - // and available for use. - // - // * CREATING - Amazon FSx is creating the new file system. - // - // * DELETING - Amazon FSx is deleting an existing file system. - // - // * FAILED - An existing file system has experienced an unrecoverable failure. - // When creating a new file system, Amazon FSx was unable to create the file - // system. - // - // * MISCONFIGURED indicates that the file system is in a failed but recoverable - // state. - // - // * UPDATING indicates that the file system is undergoing a customer initiated - // update. - Lifecycle *string `type:"string" enum:"FileSystemLifecycle"` +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidSourceKmsKey) StatusCode() int { + return s.RespMetadata.StatusCode +} - // The configuration for the Amazon FSx for Lustre file system. - LustreConfiguration *LustreFileSystemConfiguration `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *InvalidSourceKmsKey) RequestID() string { + return s.RespMetadata.RequestID +} - // The IDs of the elastic network interface from which a specific file system - // is accessible. The elastic network interface is automatically created in - // the same VPC that the Amazon FSx file system was created in. For more information, - // see Elastic Network Interfaces (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html) - // in the Amazon EC2 User Guide. - // - // For an Amazon FSx for Windows File Server file system, you can have one network - // interface ID. For an Amazon FSx for Lustre file system, you can have more - // than one. - NetworkInterfaceIds []*string `type:"list"` +// Describes why a resource lifecycle state changed. +type LifecycleTransitionReason struct { + _ struct{} `type:"structure"` - // The AWS account that created the file system. If the file system was created - // by an AWS Identity and Access Management (IAM) user, the AWS account to which - // the IAM user belongs is the owner. - OwnerId *string `min:"12" type:"string"` + // A detailed error message. + Message *string `min:"1" type:"string"` +} - // The Amazon Resource Name (ARN) for the file system resource. - ResourceARN *string `min:"8" type:"string"` +// String returns the string representation +func (s LifecycleTransitionReason) String() string { + return awsutil.Prettify(s) +} - // The storage capacity of the file system in gibibytes (GiB). - StorageCapacity *int64 `type:"integer"` +// GoString returns the string representation +func (s LifecycleTransitionReason) GoString() string { + return s.String() +} - // The storage type of the file system. Valid values are SSD and HDD. If set - // to SSD, the file system uses solid state drive storage. If set to HDD, the - // file system uses hard disk drive storage. - StorageType *string `type:"string" enum:"StorageType"` +// SetMessage sets the Message field's value. +func (s *LifecycleTransitionReason) SetMessage(v string) *LifecycleTransitionReason { + s.Message = &v + return s +} - // Specifies the IDs of the subnets that the file system is accessible from. - // For Windows MULTI_AZ_1 file system deployment type, there are two subnet - // IDs, one for the preferred file server and one for the standby file server. - // The preferred file server subnet identified in the PreferredSubnetID property. - // All other file systems have only one subnet ID. - // - // For Lustre file systems, and Single-AZ Windows file systems, this is the - // ID of the subnet that contains the endpoint for the file system. For MULTI_AZ_1 - // Windows file systems, the endpoint for the file system is available in the - // PreferredSubnetID. - SubnetIds []*string `type:"list"` +// The request object for ListTagsForResource operation. +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` - // The tags to associate with the file system. For more information, see Tagging - // Your Amazon EC2 Resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) - // in the Amazon EC2 User Guide. - Tags []*Tag `min:"1" type:"list"` + // Maximum number of tags to return in the response (integer). This parameter + // value must be greater than 0. The number of items that Amazon FSx returns + // is the minimum of the MaxResults parameter specified in the request and the + // service's internal maximum number of items per page. + MaxResults *int64 `min:"1" type:"integer"` - // The ID of the primary VPC for the file system. - VpcId *string `min:"12" type:"string"` + // Opaque pagination token returned from a previous ListTagsForResource operation + // (String). If a token present, the action continues the list from where the + // returning call left off. + NextToken *string `min:"1" type:"string"` - // The configuration for this Microsoft Windows file system. - WindowsConfiguration *WindowsFileSystemConfiguration `type:"structure"` + // The ARN of the Amazon FSx resource that will have its tags listed. + // + // ResourceARN is a required field + ResourceARN *string `min:"8" type:"string" required:"true"` } // String returns the string representation -func (s FileSystem) String() string { +func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s FileSystem) GoString() string { +func (s ListTagsForResourceInput) GoString() string { return s.String() } -// SetAdministrativeActions sets the AdministrativeActions field's value. -func (s *FileSystem) SetAdministrativeActions(v []*AdministrativeAction) *FileSystem { - s.AdministrativeActions = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + 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.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 8)) + } -// SetCreationTime sets the CreationTime field's value. -func (s *FileSystem) SetCreationTime(v time.Time) *FileSystem { - s.CreationTime = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetDNSName sets the DNSName field's value. -func (s *FileSystem) SetDNSName(v string) *FileSystem { - s.DNSName = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput { + s.MaxResults = &v return s } -// SetFailureDetails sets the FailureDetails field's value. -func (s *FileSystem) SetFailureDetails(v *FileSystemFailureDetails) *FileSystem { - s.FailureDetails = v +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { + s.NextToken = &v return s } -// SetFileSystemId sets the FileSystemId field's value. -func (s *FileSystem) SetFileSystemId(v string) *FileSystem { - s.FileSystemId = &v +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v return s } -// SetFileSystemType sets the FileSystemType field's value. -func (s *FileSystem) SetFileSystemType(v string) *FileSystem { - s.FileSystemType = &v - return s +// The response object for ListTagsForResource operation. +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // This is present if there are more tags than returned in the response (String). + // You can use the NextToken value in the later request to fetch the tags. + NextToken *string `min:"1" type:"string"` + + // A list of tags on the resource. + Tags []*Tag `min:"1" type:"list"` } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *FileSystem) SetKmsKeyId(v string) *FileSystem { - s.KmsKeyId = &v - return s +// String returns the string representation +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) } -// SetLifecycle sets the Lifecycle field's value. -func (s *FileSystem) SetLifecycle(v string) *FileSystem { - s.Lifecycle = &v - return s +// GoString returns the string representation +func (s ListTagsForResourceOutput) GoString() string { + return s.String() } -// SetLustreConfiguration sets the LustreConfiguration field's value. -func (s *FileSystem) SetLustreConfiguration(v *LustreFileSystemConfiguration) *FileSystem { - s.LustreConfiguration = v +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { + s.NextToken = &v return s } -// SetNetworkInterfaceIds sets the NetworkInterfaceIds field's value. -func (s *FileSystem) SetNetworkInterfaceIds(v []*string) *FileSystem { - s.NetworkInterfaceIds = v +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *FileSystem) SetOwnerId(v string) *FileSystem { - s.OwnerId = &v - return s +// The configuration for the Amazon FSx for Lustre file system. +type LustreFileSystemConfiguration struct { + _ struct{} `type:"structure"` + + // The number of days to retain automatic backups. Setting this to 0 disables + // automatic backups. You can retain automatic backups for a maximum of 90 days. + // The default is 0. + AutomaticBackupRetentionDays *int64 `type:"integer"` + + // A boolean flag indicating whether tags on the file system should be copied + // to backups. If it's set to true, all tags on the file system are copied to + // all automatic backups and any user-initiated backups where the user doesn't + // specify any tags. If this value is true, and you specify one or more tags, + // only the specified tags are copied to backups. If you specify one or more + // tags when creating a user-initiated backup, no tags are copied from the file + // system, regardless of this value. (Default = false) + CopyTagsToBackups *bool `type:"boolean"` + + // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of + // the day (0-23), and MM is the zero-padded minute of the hour. For example, + // 05:00 specifies 5 AM daily. + DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + + // The data compression configuration for the file system. DataCompressionType + // can have the following values: + // + // * NONE - Data compression is turned off for the file system. + // + // * LZ4 - Data compression is turned on with the LZ4 algorithm. + // + // For more information, see Lustre data compression (https://docs.aws.amazon.com/fsx/latest/LustreGuide/data-compression.html). + DataCompressionType *string `type:"string" enum:"DataCompressionType"` + + // The data repository configuration object for Lustre file systems returned + // in the response of the CreateFileSystem operation. + DataRepositoryConfiguration *DataRepositoryConfiguration `type:"structure"` + + // The deployment type of the FSX for Lustre file system. Scratch deployment + // type is designed for temporary storage and shorter-term processing of data. + // + // SCRATCH_1 and SCRATCH_2 deployment types are best suited for when you need + // temporary storage and shorter-term processing of data. The SCRATCH_2 deployment + // type provides in-transit encryption of data and higher burst throughput capacity + // than SCRATCH_1. + // + // The PERSISTENT_1 deployment type is used for longer-term storage and workloads + // and encryption of data in transit. To learn more about deployment types, + // see FSx for Lustre Deployment Options (https://docs.aws.amazon.com/fsx/latest/LustreGuide/lustre-deployment-types.html). + // (Default = SCRATCH_1) + DeploymentType *string `type:"string" enum:"LustreDeploymentType"` + + // The type of drive cache used by PERSISTENT_1 file systems that are provisioned + // with HDD storage devices. This parameter is required when storage type is + // HDD. Set to READ, improve the performance for frequently accessed files and + // allows 20% of the total storage capacity of the file system to be cached. + // + // This parameter is required when StorageType is set to HDD. + DriveCacheType *string `type:"string" enum:"DriveCacheType"` + + // You use the MountName value when mounting the file system. + // + // For the SCRATCH_1 deployment type, this value is always "fsx". For SCRATCH_2 + // and PERSISTENT_1 deployment types, this value is a string that is unique + // within an Amazon Web Services Region. + MountName *string `min:"1" type:"string"` + + // Per unit storage throughput represents the megabytes per second of read or + // write throughput per 1 tebibyte of storage provisioned. File system throughput + // capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput (MB/s/TiB). + // This option is only valid for PERSISTENT_1 deployment types. + // + // Valid values for SSD storage: 50, 100, 200. Valid values for HDD storage: + // 12, 40. + PerUnitStorageThroughput *int64 `min:"12" type:"integer"` + + // The preferred start time to perform weekly maintenance, formatted d:HH:MM + // in the UTC time zone. d is the weekday number, from 1 through 7, beginning + // with Monday and ending with Sunday. + WeeklyMaintenanceStartTime *string `min:"7" type:"string"` } -// SetResourceARN sets the ResourceARN field's value. -func (s *FileSystem) SetResourceARN(v string) *FileSystem { - s.ResourceARN = &v - return s +// String returns the string representation +func (s LustreFileSystemConfiguration) String() string { + return awsutil.Prettify(s) } -// SetStorageCapacity sets the StorageCapacity field's value. -func (s *FileSystem) SetStorageCapacity(v int64) *FileSystem { - s.StorageCapacity = &v - return s +// GoString returns the string representation +func (s LustreFileSystemConfiguration) GoString() string { + return s.String() } -// SetStorageType sets the StorageType field's value. -func (s *FileSystem) SetStorageType(v string) *FileSystem { - s.StorageType = &v +// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. +func (s *LustreFileSystemConfiguration) SetAutomaticBackupRetentionDays(v int64) *LustreFileSystemConfiguration { + s.AutomaticBackupRetentionDays = &v return s } -// SetSubnetIds sets the SubnetIds field's value. -func (s *FileSystem) SetSubnetIds(v []*string) *FileSystem { - s.SubnetIds = v +// SetCopyTagsToBackups sets the CopyTagsToBackups field's value. +func (s *LustreFileSystemConfiguration) SetCopyTagsToBackups(v bool) *LustreFileSystemConfiguration { + s.CopyTagsToBackups = &v return s } -// SetTags sets the Tags field's value. -func (s *FileSystem) SetTags(v []*Tag) *FileSystem { - s.Tags = v +// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. +func (s *LustreFileSystemConfiguration) SetDailyAutomaticBackupStartTime(v string) *LustreFileSystemConfiguration { + s.DailyAutomaticBackupStartTime = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *FileSystem) SetVpcId(v string) *FileSystem { - s.VpcId = &v +// SetDataCompressionType sets the DataCompressionType field's value. +func (s *LustreFileSystemConfiguration) SetDataCompressionType(v string) *LustreFileSystemConfiguration { + s.DataCompressionType = &v return s } -// SetWindowsConfiguration sets the WindowsConfiguration field's value. -func (s *FileSystem) SetWindowsConfiguration(v *WindowsFileSystemConfiguration) *FileSystem { - s.WindowsConfiguration = v +// SetDataRepositoryConfiguration sets the DataRepositoryConfiguration field's value. +func (s *LustreFileSystemConfiguration) SetDataRepositoryConfiguration(v *DataRepositoryConfiguration) *LustreFileSystemConfiguration { + s.DataRepositoryConfiguration = v return s } -// A structure providing details of any failures that occur when creating the -// file system has failed. -type FileSystemFailureDetails struct { - _ struct{} `type:"structure"` +// SetDeploymentType sets the DeploymentType field's value. +func (s *LustreFileSystemConfiguration) SetDeploymentType(v string) *LustreFileSystemConfiguration { + s.DeploymentType = &v + return s +} - // A message describing any failures that occurred during file system creation. - Message *string `min:"1" type:"string"` +// SetDriveCacheType sets the DriveCacheType field's value. +func (s *LustreFileSystemConfiguration) SetDriveCacheType(v string) *LustreFileSystemConfiguration { + s.DriveCacheType = &v + return s } -// String returns the string representation -func (s FileSystemFailureDetails) String() string { - return awsutil.Prettify(s) +// SetMountName sets the MountName field's value. +func (s *LustreFileSystemConfiguration) SetMountName(v string) *LustreFileSystemConfiguration { + s.MountName = &v + return s } -// GoString returns the string representation -func (s FileSystemFailureDetails) GoString() string { - return s.String() +// SetPerUnitStorageThroughput sets the PerUnitStorageThroughput field's value. +func (s *LustreFileSystemConfiguration) SetPerUnitStorageThroughput(v int64) *LustreFileSystemConfiguration { + s.PerUnitStorageThroughput = &v + return s } -// SetMessage sets the Message field's value. -func (s *FileSystemFailureDetails) SetMessage(v string) *FileSystemFailureDetails { - s.Message = &v +// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. +func (s *LustreFileSystemConfiguration) SetWeeklyMaintenanceStartTime(v string) *LustreFileSystemConfiguration { + s.WeeklyMaintenanceStartTime = &v return s } -// No Amazon FSx file systems were found based upon supplied parameters. -type FileSystemNotFound struct { +// A file system configuration is required for this operation. +type MissingFileSystemConfiguration struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -6505,28 +9987,28 @@ type FileSystemNotFound struct { } // String returns the string representation -func (s FileSystemNotFound) String() string { +func (s MissingFileSystemConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s FileSystemNotFound) GoString() string { +func (s MissingFileSystemConfiguration) GoString() string { return s.String() } -func newErrorFileSystemNotFound(v protocol.ResponseMetadata) error { - return &FileSystemNotFound{ +func newErrorMissingFileSystemConfiguration(v protocol.ResponseMetadata) error { + return &MissingFileSystemConfiguration{ RespMetadata: v, } } // Code returns the exception type name. -func (s *FileSystemNotFound) Code() string { - return "FileSystemNotFound" +func (s *MissingFileSystemConfiguration) Code() string { + return "MissingFileSystemConfiguration" } // Message returns the exception's message. -func (s *FileSystemNotFound) Message() string { +func (s *MissingFileSystemConfiguration) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -6534,98 +10016,56 @@ func (s *FileSystemNotFound) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *FileSystemNotFound) OrigErr() error { +func (s *MissingFileSystemConfiguration) OrigErr() error { return nil } -func (s *FileSystemNotFound) Error() string { +func (s *MissingFileSystemConfiguration) 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 *FileSystemNotFound) StatusCode() int { +func (s *MissingFileSystemConfiguration) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *FileSystemNotFound) RequestID() string { +func (s *MissingFileSystemConfiguration) RequestID() string { return s.RespMetadata.RequestID } -// A filter used to restrict the results of describe calls. You can use multiple -// filters to return results that meet all applied filter requirements. -type Filter struct { - _ struct{} `type:"structure"` - - // The name for this filter. - Name *string `type:"string" enum:"FilterName"` - - // The values of the filter. These are all the values for any of the applied - // filters. - Values []*string `type:"list"` -} - -// String returns the string representation -func (s Filter) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s Filter) GoString() string { - return s.String() -} - -// SetName sets the Name field's value. -func (s *Filter) SetName(v string) *Filter { - s.Name = &v - return s -} - -// SetValues sets the Values field's value. -func (s *Filter) SetValues(v []*string) *Filter { - s.Values = v - return s -} - -// The error returned when a second request is received with the same client -// request token but different parameters settings. A client request token should -// always uniquely identify a single request. -type IncompatibleParameterError struct { +// A volume configuration is required for this operation. +type MissingVolumeConfiguration struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // A detailed error message. Message_ *string `locationName:"Message" min:"1" type:"string"` - - // A parameter that is incompatible with the earlier request. - // - // Parameter is a required field - Parameter *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s IncompatibleParameterError) String() string { +func (s MissingVolumeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IncompatibleParameterError) GoString() string { +func (s MissingVolumeConfiguration) GoString() string { return s.String() } -func newErrorIncompatibleParameterError(v protocol.ResponseMetadata) error { - return &IncompatibleParameterError{ +func newErrorMissingVolumeConfiguration(v protocol.ResponseMetadata) error { + return &MissingVolumeConfiguration{ RespMetadata: v, } } // Code returns the exception type name. -func (s *IncompatibleParameterError) Code() string { - return "IncompatibleParameterError" +func (s *MissingVolumeConfiguration) Code() string { + return "MissingVolumeConfiguration" } // Message returns the exception's message. -func (s *IncompatibleParameterError) Message() string { +func (s *MissingVolumeConfiguration) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -6633,57 +10073,62 @@ func (s *IncompatibleParameterError) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *IncompatibleParameterError) OrigErr() error { +func (s *MissingVolumeConfiguration) OrigErr() error { return nil } -func (s *IncompatibleParameterError) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +func (s *MissingVolumeConfiguration) 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 *IncompatibleParameterError) StatusCode() int { +func (s *MissingVolumeConfiguration) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *IncompatibleParameterError) RequestID() string { +func (s *MissingVolumeConfiguration) RequestID() string { return s.RespMetadata.RequestID } -// Amazon FSx doesn't support Multi-AZ Windows File Server copy backup in the -// destination Region, so the copied backup can't be restored. -type IncompatibleRegionForMultiAZ struct { +// The resource specified for the tagging operation is not a resource type owned +// by Amazon FSx. Use the API of the relevant service to perform the operation. +type NotServiceResourceError struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // A detailed error message. Message_ *string `locationName:"Message" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the non-Amazon FSx resource. + // + // ResourceARN is a required field + ResourceARN *string `min:"8" type:"string" required:"true"` } // String returns the string representation -func (s IncompatibleRegionForMultiAZ) String() string { +func (s NotServiceResourceError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IncompatibleRegionForMultiAZ) GoString() string { +func (s NotServiceResourceError) GoString() string { return s.String() } -func newErrorIncompatibleRegionForMultiAZ(v protocol.ResponseMetadata) error { - return &IncompatibleRegionForMultiAZ{ +func newErrorNotServiceResourceError(v protocol.ResponseMetadata) error { + return &NotServiceResourceError{ RespMetadata: v, } } // Code returns the exception type name. -func (s *IncompatibleRegionForMultiAZ) Code() string { - return "IncompatibleRegionForMultiAZ" +func (s *NotServiceResourceError) Code() string { + return "NotServiceResourceError" } // Message returns the exception's message. -func (s *IncompatibleRegionForMultiAZ) Message() string { +func (s *NotServiceResourceError) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -6691,171 +10136,320 @@ func (s *IncompatibleRegionForMultiAZ) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *IncompatibleRegionForMultiAZ) OrigErr() error { +func (s *NotServiceResourceError) OrigErr() error { return nil } -func (s *IncompatibleRegionForMultiAZ) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *NotServiceResourceError) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. -func (s *IncompatibleRegionForMultiAZ) StatusCode() int { +func (s *NotServiceResourceError) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *IncompatibleRegionForMultiAZ) RequestID() string { +func (s *NotServiceResourceError) RequestID() string { return s.RespMetadata.RequestID } -// A generic error indicating a server-side failure. -type InternalServerError struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Configuration for the FSx for NetApp ONTAP file system. +type OntapFileSystemConfiguration struct { + _ struct{} `type:"structure"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // The number of days to retain automatic backups. Setting this to 0 disables + // automatic backups. You can retain automatic backups for a maximum of 90 days. + // The default is 0. + AutomaticBackupRetentionDays *int64 `type:"integer"` + + // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of + // the day (0-23), and MM is the zero-padded minute of the hour. For example, + // 05:00 specifies 5 AM daily. + DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + + // The ONTAP file system deployment type. + DeploymentType *string `type:"string" enum:"OntapDeploymentType"` + + // The SSD IOPS configuration for the ONTAP file system, specifying the number + // of provisioned IOPS and the provision mode. + DiskIopsConfiguration *DiskIopsConfiguration `type:"structure"` + + // The IP address range in which the endpoints to access your file system are + // created. + EndpointIpAddressRange *string `min:"9" type:"string"` + + // The Management and Intercluster endpoints that are used to access data or + // to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp + // SnapMirror. + Endpoints *FileSystemEndpoints `type:"structure"` + + // The ID for a subnet. A subnet is a range of IP addresses in your virtual + // private cloud (VPC). For more information, see VPC and Subnets (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) + // in the Amazon VPC User Guide. + PreferredSubnetId *string `min:"15" type:"string"` + + // The VPC route tables in which your file system's endpoints are created. + RouteTableIds []*string `type:"list"` + + // Sustained throughput of an Amazon FSx file system in MBps. + ThroughputCapacity *int64 `min:"8" type:"integer"` + + // A recurring weekly time, in the format D:HH:MM. + // + // D is the day of the week, for which 1 represents Monday and 7 represents + // Sunday. For further details, see the ISO-8601 spec as described on Wikipedia + // (https://en.wikipedia.org/wiki/ISO_week_date). + // + // HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute + // of the hour. + // + // For example, 1:05:00 specifies maintenance at 5 AM Monday. + WeeklyMaintenanceStartTime *string `min:"7" type:"string"` } // String returns the string representation -func (s InternalServerError) String() string { +func (s OntapFileSystemConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InternalServerError) GoString() string { +func (s OntapFileSystemConfiguration) GoString() string { return s.String() } -func newErrorInternalServerError(v protocol.ResponseMetadata) error { - return &InternalServerError{ - RespMetadata: v, - } +// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. +func (s *OntapFileSystemConfiguration) SetAutomaticBackupRetentionDays(v int64) *OntapFileSystemConfiguration { + s.AutomaticBackupRetentionDays = &v + return s } -// Code returns the exception type name. -func (s *InternalServerError) Code() string { - return "InternalServerError" +// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. +func (s *OntapFileSystemConfiguration) SetDailyAutomaticBackupStartTime(v string) *OntapFileSystemConfiguration { + s.DailyAutomaticBackupStartTime = &v + return s } -// Message returns the exception's message. -func (s *InternalServerError) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetDeploymentType sets the DeploymentType field's value. +func (s *OntapFileSystemConfiguration) SetDeploymentType(v string) *OntapFileSystemConfiguration { + s.DeploymentType = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InternalServerError) OrigErr() error { - return nil +// SetDiskIopsConfiguration sets the DiskIopsConfiguration field's value. +func (s *OntapFileSystemConfiguration) SetDiskIopsConfiguration(v *DiskIopsConfiguration) *OntapFileSystemConfiguration { + s.DiskIopsConfiguration = v + return s } -func (s *InternalServerError) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetEndpointIpAddressRange sets the EndpointIpAddressRange field's value. +func (s *OntapFileSystemConfiguration) SetEndpointIpAddressRange(v string) *OntapFileSystemConfiguration { + s.EndpointIpAddressRange = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InternalServerError) StatusCode() int { - return s.RespMetadata.StatusCode +// SetEndpoints sets the Endpoints field's value. +func (s *OntapFileSystemConfiguration) SetEndpoints(v *FileSystemEndpoints) *OntapFileSystemConfiguration { + s.Endpoints = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InternalServerError) RequestID() string { - return s.RespMetadata.RequestID +// SetPreferredSubnetId sets the PreferredSubnetId field's value. +func (s *OntapFileSystemConfiguration) SetPreferredSubnetId(v string) *OntapFileSystemConfiguration { + s.PreferredSubnetId = &v + return s } -// The AWS Key Management Service (AWS KMS) key of the destination backup is -// invalid. -type InvalidDestinationKmsKey struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetRouteTableIds sets the RouteTableIds field's value. +func (s *OntapFileSystemConfiguration) SetRouteTableIds(v []*string) *OntapFileSystemConfiguration { + s.RouteTableIds = v + return s +} - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` +// SetThroughputCapacity sets the ThroughputCapacity field's value. +func (s *OntapFileSystemConfiguration) SetThroughputCapacity(v int64) *OntapFileSystemConfiguration { + s.ThroughputCapacity = &v + return s +} + +// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. +func (s *OntapFileSystemConfiguration) SetWeeklyMaintenanceStartTime(v string) *OntapFileSystemConfiguration { + s.WeeklyMaintenanceStartTime = &v + return s +} + +// The configuration of an Amazon FSx for NetApp ONTAP volume +type OntapVolumeConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies the FlexCache endpoint type of the volume. Valid values are the + // following: + // + // * NONE specifies that the volume doesn't have a FlexCache configuration. + // NONE is the default. + // + // * ORIGIN specifies that the volume is the origin volume for a FlexCache + // volume. + // + // * CACHE specifies that the volume is a FlexCache volume. + FlexCacheEndpointType *string `type:"string" enum:"FlexCacheEndpointType"` + + // Specifies the directory that NAS clients use to mount the volume, along with + // the SVM DNS name or IP address. You can create a JunctionPath directly below + // a parent volume junction or on a directory within a volume. A JunctionPath + // for a volume named vol3 might be /vol1/vol2/vol3, or /vol1/dir2/vol3, or + // even /dir1/dir2/vol3.. + JunctionPath *string `min:"1" type:"string"` + + // Specifies the type of volume. Valid values are the following: + // + // * RW specifies a read-write volume. RW is the default. + // + // * DP specifies a data protection volume. You can protect data by replicating + // it to data protection mirror copies and use data protection mirror copies + // to recover data when a disaster occurs. + // + // * LS specifies a load-sharing mirror volume. A load-sharing mirror reduces + // the network traffic to a FlexVol volume by providing additional read-only + // access to clients. + OntapVolumeType *string `type:"string" enum:"OntapVolumeType"` + + // The security style for the volume, which can be UNIX, NTFS, or MIXED. + SecurityStyle *string `type:"string" enum:"SecurityStyle"` + + // The configured size of the volume, in megabytes (MBs). + SizeInMegabytes *int64 `type:"integer"` + + // The volume's storage efficiency setting. + StorageEfficiencyEnabled *bool `type:"boolean"` + + // The ID of the volume's storage virtual machine. + StorageVirtualMachineId *string `min:"21" type:"string"` + + // A boolean flag indicating whether this volume is the root volume for its + // storage virtual machine (SVM). Only one volume on an SVM can be the root + // volume. This value defaults to false. If this value is true, then this is + // the SVM root volume. + // + // This flag is useful when you're deleting an SVM, because you must first delete + // all non-root volumes. This flag, when set to false, helps you identify which + // volumes to delete before you can delete the SVM. + StorageVirtualMachineRoot *bool `type:"boolean"` + + // The volume's TieringPolicy setting. + TieringPolicy *TieringPolicy `type:"structure"` + + // The volume's UUID (universally unique identifier). + UUID *string `type:"string"` } // String returns the string representation -func (s InvalidDestinationKmsKey) String() string { +func (s OntapVolumeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidDestinationKmsKey) GoString() string { +func (s OntapVolumeConfiguration) GoString() string { return s.String() } -func newErrorInvalidDestinationKmsKey(v protocol.ResponseMetadata) error { - return &InvalidDestinationKmsKey{ - RespMetadata: v, - } +// SetFlexCacheEndpointType sets the FlexCacheEndpointType field's value. +func (s *OntapVolumeConfiguration) SetFlexCacheEndpointType(v string) *OntapVolumeConfiguration { + s.FlexCacheEndpointType = &v + return s } -// Code returns the exception type name. -func (s *InvalidDestinationKmsKey) Code() string { - return "InvalidDestinationKmsKey" +// SetJunctionPath sets the JunctionPath field's value. +func (s *OntapVolumeConfiguration) SetJunctionPath(v string) *OntapVolumeConfiguration { + s.JunctionPath = &v + return s } -// Message returns the exception's message. -func (s *InvalidDestinationKmsKey) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetOntapVolumeType sets the OntapVolumeType field's value. +func (s *OntapVolumeConfiguration) SetOntapVolumeType(v string) *OntapVolumeConfiguration { + s.OntapVolumeType = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidDestinationKmsKey) OrigErr() error { - return nil +// SetSecurityStyle sets the SecurityStyle field's value. +func (s *OntapVolumeConfiguration) SetSecurityStyle(v string) *OntapVolumeConfiguration { + s.SecurityStyle = &v + return s } -func (s *InvalidDestinationKmsKey) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetSizeInMegabytes sets the SizeInMegabytes field's value. +func (s *OntapVolumeConfiguration) SetSizeInMegabytes(v int64) *OntapVolumeConfiguration { + s.SizeInMegabytes = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidDestinationKmsKey) StatusCode() int { - return s.RespMetadata.StatusCode +// SetStorageEfficiencyEnabled sets the StorageEfficiencyEnabled field's value. +func (s *OntapVolumeConfiguration) SetStorageEfficiencyEnabled(v bool) *OntapVolumeConfiguration { + s.StorageEfficiencyEnabled = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InvalidDestinationKmsKey) RequestID() string { - return s.RespMetadata.RequestID +// SetStorageVirtualMachineId sets the StorageVirtualMachineId field's value. +func (s *OntapVolumeConfiguration) SetStorageVirtualMachineId(v string) *OntapVolumeConfiguration { + s.StorageVirtualMachineId = &v + return s } -// The path provided for data repository export isn't valid. -type InvalidExportPath struct { +// SetStorageVirtualMachineRoot sets the StorageVirtualMachineRoot field's value. +func (s *OntapVolumeConfiguration) SetStorageVirtualMachineRoot(v bool) *OntapVolumeConfiguration { + s.StorageVirtualMachineRoot = &v + return s +} + +// SetTieringPolicy sets the TieringPolicy field's value. +func (s *OntapVolumeConfiguration) SetTieringPolicy(v *TieringPolicy) *OntapVolumeConfiguration { + s.TieringPolicy = v + return s +} + +// SetUUID sets the UUID field's value. +func (s *OntapVolumeConfiguration) SetUUID(v string) *OntapVolumeConfiguration { + s.UUID = &v + return s +} + +// The resource specified does not support tagging. +type ResourceDoesNotSupportTagging struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // A detailed error message. Message_ *string `locationName:"Message" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the resource that doesn't support tagging. + // + // ResourceARN is a required field + ResourceARN *string `min:"8" type:"string" required:"true"` } // String returns the string representation -func (s InvalidExportPath) String() string { +func (s ResourceDoesNotSupportTagging) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidExportPath) GoString() string { +func (s ResourceDoesNotSupportTagging) GoString() string { return s.String() } -func newErrorInvalidExportPath(v protocol.ResponseMetadata) error { - return &InvalidExportPath{ +func newErrorResourceDoesNotSupportTagging(v protocol.ResponseMetadata) error { + return &ResourceDoesNotSupportTagging{ RespMetadata: v, } } // Code returns the exception type name. -func (s *InvalidExportPath) Code() string { - return "InvalidExportPath" +func (s *ResourceDoesNotSupportTagging) Code() string { + return "ResourceDoesNotSupportTagging" } // Message returns the exception's message. -func (s *InvalidExportPath) Message() string { +func (s *ResourceDoesNotSupportTagging) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -6863,56 +10457,61 @@ func (s *InvalidExportPath) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidExportPath) OrigErr() error { +func (s *ResourceDoesNotSupportTagging) OrigErr() error { return nil } -func (s *InvalidExportPath) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *ResourceDoesNotSupportTagging) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. -func (s *InvalidExportPath) StatusCode() int { +func (s *ResourceDoesNotSupportTagging) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *InvalidExportPath) RequestID() string { +func (s *ResourceDoesNotSupportTagging) RequestID() string { return s.RespMetadata.RequestID } -// The path provided for data repository import isn't valid. -type InvalidImportPath struct { +// The resource specified by the Amazon Resource Name (ARN) can't be found. +type ResourceNotFound struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // A detailed error message. Message_ *string `locationName:"Message" min:"1" type:"string"` + + // The resource ARN of the resource that can't be found. + // + // ResourceARN is a required field + ResourceARN *string `min:"8" type:"string" required:"true"` } // String returns the string representation -func (s InvalidImportPath) String() string { +func (s ResourceNotFound) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidImportPath) GoString() string { +func (s ResourceNotFound) GoString() string { return s.String() } -func newErrorInvalidImportPath(v protocol.ResponseMetadata) error { - return &InvalidImportPath{ +func newErrorResourceNotFound(v protocol.ResponseMetadata) error { + return &ResourceNotFound{ RespMetadata: v, } } // Code returns the exception type name. -func (s *InvalidImportPath) Code() string { - return "InvalidImportPath" +func (s *ResourceNotFound) Code() string { + return "ResourceNotFound" } // Message returns the exception's message. -func (s *InvalidImportPath) Message() string { +func (s *ResourceNotFound) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -6920,246 +10519,339 @@ func (s *InvalidImportPath) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidImportPath) OrigErr() error { +func (s *ResourceNotFound) OrigErr() error { return nil } -func (s *InvalidImportPath) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *ResourceNotFound) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. -func (s *InvalidImportPath) StatusCode() int { +func (s *ResourceNotFound) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *InvalidImportPath) RequestID() string { +func (s *ResourceNotFound) RequestID() string { return s.RespMetadata.RequestID } -// One or more network settings specified in the request are invalid. InvalidVpcId -// means that the ID passed for the virtual private cloud (VPC) is invalid. -// InvalidSubnetIds returns the list of IDs for subnets that are either invalid -// or not part of the VPC specified. InvalidSecurityGroupIds returns the list -// of IDs for security groups that are either invalid or not part of the VPC -// specified. -type InvalidNetworkSettings struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// The configuration of the self-managed Microsoft Active Directory (AD) directory +// to which the Windows File Server or ONTAP storage virtual machine (SVM) instance +// is joined. +type SelfManagedActiveDirectoryAttributes struct { + _ struct{} `type:"structure"` - // The ID of your Amazon EC2 security group. This ID is used to control network - // access to the endpoint that Amazon FSx creates on your behalf in each subnet. - // For more information, see Amazon EC2 Security Groups for Linux Instances - // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) - // in the Amazon EC2 User Guide. - InvalidSecurityGroupId *string `min:"11" type:"string"` + // A list of up to two IP addresses of DNS servers or domain controllers in + // the self-managed AD directory. + DnsIps []*string `min:"1" type:"list"` - // The ID for a subnet. A subnet is a range of IP addresses in your virtual - // private cloud (VPC). For more information, see VPC and Subnets (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) - // in the Amazon VPC User Guide. - InvalidSubnetId *string `min:"15" type:"string"` + // The fully qualified domain name of the self-managed AD directory. + DomainName *string `min:"1" type:"string"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // The name of the domain group whose members have administrative privileges + // for the FSx file system. + FileSystemAdministratorsGroup *string `min:"1" type:"string"` + + // The fully qualified distinguished name of the organizational unit within + // the self-managed AD directory to which the Windows File Server or ONTAP storage + // virtual machine (SVM) instance is joined. + OrganizationalUnitDistinguishedName *string `min:"1" type:"string"` + + // The user name for the service account on your self-managed AD domain that + // FSx uses to join to your AD domain. + UserName *string `min:"1" type:"string"` } // String returns the string representation -func (s InvalidNetworkSettings) String() string { +func (s SelfManagedActiveDirectoryAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidNetworkSettings) GoString() string { +func (s SelfManagedActiveDirectoryAttributes) GoString() string { return s.String() } -func newErrorInvalidNetworkSettings(v protocol.ResponseMetadata) error { - return &InvalidNetworkSettings{ - RespMetadata: v, - } +// SetDnsIps sets the DnsIps field's value. +func (s *SelfManagedActiveDirectoryAttributes) SetDnsIps(v []*string) *SelfManagedActiveDirectoryAttributes { + s.DnsIps = v + return s } -// Code returns the exception type name. -func (s *InvalidNetworkSettings) Code() string { - return "InvalidNetworkSettings" +// SetDomainName sets the DomainName field's value. +func (s *SelfManagedActiveDirectoryAttributes) SetDomainName(v string) *SelfManagedActiveDirectoryAttributes { + s.DomainName = &v + return s } -// Message returns the exception's message. -func (s *InvalidNetworkSettings) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetFileSystemAdministratorsGroup sets the FileSystemAdministratorsGroup field's value. +func (s *SelfManagedActiveDirectoryAttributes) SetFileSystemAdministratorsGroup(v string) *SelfManagedActiveDirectoryAttributes { + s.FileSystemAdministratorsGroup = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidNetworkSettings) OrigErr() error { - return nil +// SetOrganizationalUnitDistinguishedName sets the OrganizationalUnitDistinguishedName field's value. +func (s *SelfManagedActiveDirectoryAttributes) SetOrganizationalUnitDistinguishedName(v string) *SelfManagedActiveDirectoryAttributes { + s.OrganizationalUnitDistinguishedName = &v + return s } -func (s *InvalidNetworkSettings) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetUserName sets the UserName field's value. +func (s *SelfManagedActiveDirectoryAttributes) SetUserName(v string) *SelfManagedActiveDirectoryAttributes { + s.UserName = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidNetworkSettings) StatusCode() int { - return s.RespMetadata.StatusCode -} +// The configuration that Amazon FSx uses to join a Amazon FSx for Windows File +// Server file system or an ONTAP storage virtual machine (SVM) to a self-managed +// (including on-premises) Microsoft Active Directory (AD) directory. For more +// information, see Using Amazon FSx with your self-managed Microsoft Active +// Directory (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html) +// or Managing SVMs (https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html). +type SelfManagedActiveDirectoryConfiguration struct { + _ struct{} `type:"structure"` -// RequestID returns the service's response RequestID for request. -func (s *InvalidNetworkSettings) RequestID() string { - return s.RespMetadata.RequestID + // A list of up to two IP addresses of DNS servers or domain controllers in + // the self-managed AD directory. + // + // DnsIps is a required field + DnsIps []*string `min:"1" type:"list" required:"true"` + + // The fully qualified domain name of the self-managed AD directory, such as + // corp.example.com. + // + // DomainName is a required field + DomainName *string `min:"1" type:"string" required:"true"` + + // (Optional) The name of the domain group whose members are granted administrative + // privileges for the file system. Administrative privileges include taking + // ownership of files and folders, setting audit controls (audit ACLs) on files + // and folders, and administering the file system remotely by using the FSx + // Remote PowerShell. The group that you specify must already exist in your + // domain. If you don't provide one, your AD domain's Domain Admins group is + // used. + FileSystemAdministratorsGroup *string `min:"1" type:"string"` + + // (Optional) The fully qualified distinguished name of the organizational unit + // within your self-managed AD directory. Amazon FSx only accepts OU as the + // direct parent of the file system. An example is OU=FSx,DC=yourdomain,DC=corp,DC=com. + // To learn more, see RFC 2253 (https://tools.ietf.org/html/rfc2253). If none + // is provided, the FSx file system is created in the default location of your + // self-managed AD directory. + // + // Only Organizational Unit (OU) objects can be the direct parent of the file + // system that you're creating. + OrganizationalUnitDistinguishedName *string `min:"1" type:"string"` + + // The password for the service account on your self-managed AD domain that + // Amazon FSx will use to join to your AD domain. + // + // Password is a required field + Password *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // The user name for the service account on your self-managed AD domain that + // Amazon FSx will use to join to your AD domain. This account must have the + // permission to join computers to the domain in the organizational unit provided + // in OrganizationalUnitDistinguishedName, or in the default location of your + // AD domain. + // + // UserName is a required field + UserName *string `min:"1" type:"string" required:"true"` } -// An invalid value for PerUnitStorageThroughput was provided. Please create -// your file system again, using a valid value. -type InvalidPerUnitStorageThroughput struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// String returns the string representation +func (s SelfManagedActiveDirectoryConfiguration) String() string { + return awsutil.Prettify(s) +} - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` +// GoString returns the string representation +func (s SelfManagedActiveDirectoryConfiguration) GoString() string { + return s.String() } -// String returns the string representation -func (s InvalidPerUnitStorageThroughput) String() string { - return awsutil.Prettify(s) +// Validate inspects the fields of the type to determine if they are valid. +func (s *SelfManagedActiveDirectoryConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SelfManagedActiveDirectoryConfiguration"} + if s.DnsIps == nil { + invalidParams.Add(request.NewErrParamRequired("DnsIps")) + } + if s.DnsIps != nil && len(s.DnsIps) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DnsIps", 1)) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) + } + if s.FileSystemAdministratorsGroup != nil && len(*s.FileSystemAdministratorsGroup) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemAdministratorsGroup", 1)) + } + if s.OrganizationalUnitDistinguishedName != nil && len(*s.OrganizationalUnitDistinguishedName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnitDistinguishedName", 1)) + } + if s.Password == nil { + invalidParams.Add(request.NewErrParamRequired("Password")) + } + if s.Password != nil && len(*s.Password) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Password", 1)) + } + if s.UserName == nil { + invalidParams.Add(request.NewErrParamRequired("UserName")) + } + if s.UserName != nil && len(*s.UserName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// GoString returns the string representation -func (s InvalidPerUnitStorageThroughput) GoString() string { - return s.String() +// SetDnsIps sets the DnsIps field's value. +func (s *SelfManagedActiveDirectoryConfiguration) SetDnsIps(v []*string) *SelfManagedActiveDirectoryConfiguration { + s.DnsIps = v + return s } -func newErrorInvalidPerUnitStorageThroughput(v protocol.ResponseMetadata) error { - return &InvalidPerUnitStorageThroughput{ - RespMetadata: v, - } +// SetDomainName sets the DomainName field's value. +func (s *SelfManagedActiveDirectoryConfiguration) SetDomainName(v string) *SelfManagedActiveDirectoryConfiguration { + s.DomainName = &v + return s } -// Code returns the exception type name. -func (s *InvalidPerUnitStorageThroughput) Code() string { - return "InvalidPerUnitStorageThroughput" +// SetFileSystemAdministratorsGroup sets the FileSystemAdministratorsGroup field's value. +func (s *SelfManagedActiveDirectoryConfiguration) SetFileSystemAdministratorsGroup(v string) *SelfManagedActiveDirectoryConfiguration { + s.FileSystemAdministratorsGroup = &v + return s } -// Message returns the exception's message. -func (s *InvalidPerUnitStorageThroughput) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetOrganizationalUnitDistinguishedName sets the OrganizationalUnitDistinguishedName field's value. +func (s *SelfManagedActiveDirectoryConfiguration) SetOrganizationalUnitDistinguishedName(v string) *SelfManagedActiveDirectoryConfiguration { + s.OrganizationalUnitDistinguishedName = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidPerUnitStorageThroughput) OrigErr() error { - return nil +// SetPassword sets the Password field's value. +func (s *SelfManagedActiveDirectoryConfiguration) SetPassword(v string) *SelfManagedActiveDirectoryConfiguration { + s.Password = &v + return s } -func (s *InvalidPerUnitStorageThroughput) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetUserName sets the UserName field's value. +func (s *SelfManagedActiveDirectoryConfiguration) SetUserName(v string) *SelfManagedActiveDirectoryConfiguration { + s.UserName = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidPerUnitStorageThroughput) StatusCode() int { - return s.RespMetadata.StatusCode -} +// The configuration that Amazon FSx uses to join the Windows File Server instance +// to a self-managed Microsoft Active Directory (AD) directory. +type SelfManagedActiveDirectoryConfigurationUpdates struct { + _ struct{} `type:"structure"` -// RequestID returns the service's response RequestID for request. -func (s *InvalidPerUnitStorageThroughput) RequestID() string { - return s.RespMetadata.RequestID -} + // A list of up to two IP addresses of DNS servers or domain controllers in + // the self-managed AD directory. + DnsIps []*string `min:"1" type:"list"` -// The Region provided for Source Region is invalid or is in a different AWS -// partition. -type InvalidRegion struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The password for the service account on your self-managed AD domain that + // Amazon FSx will use to join to your AD domain. + Password *string `min:"1" type:"string" sensitive:"true"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // The user name for the service account on your self-managed AD domain that + // Amazon FSx will use to join to your AD domain. This account must have the + // permission to join computers to the domain in the organizational unit provided + // in OrganizationalUnitDistinguishedName. + UserName *string `min:"1" type:"string"` } // String returns the string representation -func (s InvalidRegion) String() string { +func (s SelfManagedActiveDirectoryConfigurationUpdates) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidRegion) GoString() string { +func (s SelfManagedActiveDirectoryConfigurationUpdates) GoString() string { return s.String() } -func newErrorInvalidRegion(v protocol.ResponseMetadata) error { - return &InvalidRegion{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *SelfManagedActiveDirectoryConfigurationUpdates) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SelfManagedActiveDirectoryConfigurationUpdates"} + if s.DnsIps != nil && len(s.DnsIps) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DnsIps", 1)) } -} - -// Code returns the exception type name. -func (s *InvalidRegion) Code() string { - return "InvalidRegion" -} - -// Message returns the exception's message. -func (s *InvalidRegion) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.Password != nil && len(*s.Password) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Password", 1)) + } + if s.UserName != nil && len(*s.UserName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidRegion) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *InvalidRegion) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetDnsIps sets the DnsIps field's value. +func (s *SelfManagedActiveDirectoryConfigurationUpdates) SetDnsIps(v []*string) *SelfManagedActiveDirectoryConfigurationUpdates { + s.DnsIps = v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidRegion) StatusCode() int { - return s.RespMetadata.StatusCode +// SetPassword sets the Password field's value. +func (s *SelfManagedActiveDirectoryConfigurationUpdates) SetPassword(v string) *SelfManagedActiveDirectoryConfigurationUpdates { + s.Password = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InvalidRegion) RequestID() string { - return s.RespMetadata.RequestID +// SetUserName sets the UserName field's value. +func (s *SelfManagedActiveDirectoryConfigurationUpdates) SetUserName(v string) *SelfManagedActiveDirectoryConfigurationUpdates { + s.UserName = &v + return s } -// The AWS Key Management Service (AWS KMS) key of the source backup is invalid. -type InvalidSourceKmsKey struct { +// An error indicating that a particular service limit was exceeded. You can +// increase some service limits by contacting Amazon Web Services Support. +type ServiceLimitExceeded struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Enumeration of the service limit that was exceeded. + // + // Limit is a required field + Limit *string `type:"string" required:"true" enum:"ServiceLimit"` + // A detailed error message. Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s InvalidSourceKmsKey) String() string { +func (s ServiceLimitExceeded) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidSourceKmsKey) GoString() string { +func (s ServiceLimitExceeded) GoString() string { return s.String() } -func newErrorInvalidSourceKmsKey(v protocol.ResponseMetadata) error { - return &InvalidSourceKmsKey{ +func newErrorServiceLimitExceeded(v protocol.ResponseMetadata) error { + return &ServiceLimitExceeded{ RespMetadata: v, } } // Code returns the exception type name. -func (s *InvalidSourceKmsKey) Code() string { - return "InvalidSourceKmsKey" +func (s *ServiceLimitExceeded) Code() string { + return "ServiceLimitExceeded" } // Message returns the exception's message. -func (s *InvalidSourceKmsKey) Message() string { +func (s *ServiceLimitExceeded) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -7167,282 +10859,275 @@ func (s *InvalidSourceKmsKey) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidSourceKmsKey) OrigErr() error { +func (s *ServiceLimitExceeded) OrigErr() error { return nil } -func (s *InvalidSourceKmsKey) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *ServiceLimitExceeded) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. -func (s *InvalidSourceKmsKey) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *InvalidSourceKmsKey) RequestID() string { - return s.RespMetadata.RequestID -} - -// The request object for ListTagsForResource operation. -type ListTagsForResourceInput struct { - _ struct{} `type:"structure"` - - // Maximum number of tags to return in the response (integer). This parameter - // value must be greater than 0. The number of items that Amazon FSx returns - // is the minimum of the MaxResults parameter specified in the request and the - // service's internal maximum number of items per page. - MaxResults *int64 `min:"1" type:"integer"` - - // Opaque pagination token returned from a previous ListTagsForResource operation - // (String). If a token present, the action continues the list from where the - // returning call left off. - NextToken *string `min:"1" type:"string"` - - // The ARN of the Amazon FSx resource that will have its tags listed. - // - // ResourceARN is a required field - ResourceARN *string `min:"8" type:"string" required:"true"` -} - -// String returns the string representation -func (s ListTagsForResourceInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s ListTagsForResourceInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListTagsForResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} - 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.ResourceARN == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceARN")) - } - if s.ResourceARN != nil && len(*s.ResourceARN) < 8 { - invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 8)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { - s.NextToken = &v - return s +func (s *ServiceLimitExceeded) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetResourceARN sets the ResourceARN field's value. -func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { - s.ResourceARN = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *ServiceLimitExceeded) RequestID() string { + return s.RespMetadata.RequestID } -// The response object for ListTagsForResource operation. -type ListTagsForResourceOutput struct { - _ struct{} `type:"structure"` +// The request was rejected because the lifecycle status of the source backup +// is not AVAILABLE. +type SourceBackupUnavailable struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // This is present if there are more tags than returned in the response (String). - // You can use the NextToken value in the later request to fetch the tags. - NextToken *string `min:"1" type:"string"` + // The ID of the source backup. Specifies the backup you are copying. + BackupId *string `min:"12" type:"string"` - // A list of tags on the resource. - Tags []*Tag `min:"1" type:"list"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s ListTagsForResourceOutput) String() string { +func (s SourceBackupUnavailable) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTagsForResourceOutput) GoString() string { +func (s SourceBackupUnavailable) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { - s.NextToken = &v - return s +func newErrorSourceBackupUnavailable(v protocol.ResponseMetadata) error { + return &SourceBackupUnavailable{ + RespMetadata: v, + } } -// SetTags sets the Tags field's value. -func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { - s.Tags = v - return s +// Code returns the exception type name. +func (s *SourceBackupUnavailable) Code() string { + return "SourceBackupUnavailable" } -// The configuration for the Amazon FSx for Lustre file system. -type LustreFileSystemConfiguration struct { +// Message returns the exception's message. +func (s *SourceBackupUnavailable) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *SourceBackupUnavailable) OrigErr() error { + return nil +} + +func (s *SourceBackupUnavailable) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *SourceBackupUnavailable) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *SourceBackupUnavailable) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes the Amazon FSx for NetApp ONTAP storage virtual machine (SVM) configuraton. +type StorageVirtualMachine struct { _ struct{} `type:"structure"` - // The number of days to retain automatic backups. Setting this to 0 disables - // automatic backups. You can retain automatic backups for a maximum of 90 days. - // The default is 0. - AutomaticBackupRetentionDays *int64 `type:"integer"` + // Describes the Microsoft Active Directory configuration to which the SVM is + // joined, if applicable. + ActiveDirectoryConfiguration *SvmActiveDirectoryConfiguration `type:"structure"` - // A boolean flag indicating whether tags on the file system should be copied - // to backups. If it's set to true, all tags on the file system are copied to - // all automatic backups and any user-initiated backups where the user doesn't - // specify any tags. If this value is true, and you specify one or more tags, - // only the specified tags are copied to backups. If you specify one or more - // tags when creating a user-initiated backup, no tags are copied from the file - // system, regardless of this value. (Default = false) - CopyTagsToBackups *bool `type:"boolean"` + // The time that the resource was created, in seconds (since 1970-01-01T00:00:00Z), + // also known as Unix time. + CreationTime *time.Time `type:"timestamp"` - // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of - // the day (0-23), and MM is the zero-padded minute of the hour. For example, - // 05:00 specifies 5 AM daily. - DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + // The endpoints that are used to access data or to manage the SVM using the + // NetApp ONTAP CLI, REST API, or NetApp CloudManager. They are the Iscsi, Management, + // Nfs, and Smb endpoints. + Endpoints *SvmEndpoints `type:"structure"` - // The data compression configuration for the file system. DataCompressionType - // can have the following values: + // The globally unique ID of the file system, assigned by Amazon FSx. + FileSystemId *string `min:"11" type:"string"` + + // Describes the SVM's lifecycle status. // - // * NONE - Data compression is turned off for the file system. + // * CREATED - The SVM is fully available for use. // - // * LZ4 - Data compression is turned on with the LZ4 algorithm. + // * CREATING - Amazon FSx is creating the new SVM. // - // For more information, see Lustre data compression (https://docs.aws.amazon.com/fsx/latest/LustreGuide/data-compression.html). - DataCompressionType *string `type:"string" enum:"DataCompressionType"` - - // The data repository configuration object for Lustre file systems returned - // in the response of the CreateFileSystem operation. - DataRepositoryConfiguration *DataRepositoryConfiguration `type:"structure"` - - // The deployment type of the FSX for Lustre file system. Scratch deployment - // type is designed for temporary storage and shorter-term processing of data. + // * DELETING - Amazon FSx is deleting an existing SVM. // - // SCRATCH_1 and SCRATCH_2 deployment types are best suited for when you need - // temporary storage and shorter-term processing of data. The SCRATCH_2 deployment - // type provides in-transit encryption of data and higher burst throughput capacity - // than SCRATCH_1. + // * FAILED - Amazon FSx was unable to create the SVM. // - // The PERSISTENT_1 deployment type is used for longer-term storage and workloads - // and encryption of data in transit. To learn more about deployment types, - // see FSx for Lustre Deployment Options (https://docs.aws.amazon.com/fsx/latest/LustreGuide/lustre-deployment-types.html). - // (Default = SCRATCH_1) - DeploymentType *string `type:"string" enum:"LustreDeploymentType"` - - // The type of drive cache used by PERSISTENT_1 file systems that are provisioned - // with HDD storage devices. This parameter is required when storage type is - // HDD. Set to READ, improve the performance for frequently accessed files and - // allows 20% of the total storage capacity of the file system to be cached. + // * MISCONFIGURED - The SVM is in a failed but recoverable state. // - // This parameter is required when StorageType is set to HDD. - DriveCacheType *string `type:"string" enum:"DriveCacheType"` + // * PENDING - Amazon FSx has not started creating the SVM. + Lifecycle *string `type:"string" enum:"StorageVirtualMachineLifecycle"` - // You use the MountName value when mounting the file system. - // - // For the SCRATCH_1 deployment type, this value is always "fsx". For SCRATCH_2 - // and PERSISTENT_1 deployment types, this value is a string that is unique - // within an AWS Region. - MountName *string `min:"1" type:"string"` + // Describes why the SVM lifecycle state changed. + LifecycleTransitionReason *LifecycleTransitionReason `type:"structure"` - // Per unit storage throughput represents the megabytes per second of read or - // write throughput per 1 tebibyte of storage provisioned. File system throughput - // capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput (MB/s/TiB). - // This option is only valid for PERSISTENT_1 deployment types. - // - // Valid values for SSD storage: 50, 100, 200. Valid values for HDD storage: - // 12, 40. - PerUnitStorageThroughput *int64 `min:"12" type:"integer"` + // The name of the SVM, if provisioned. + Name *string `min:"1" type:"string"` - // The preferred start time to perform weekly maintenance, formatted d:HH:MM - // in the UTC time zone. d is the weekday number, from 1 through 7, beginning - // with Monday and ending with Sunday. - WeeklyMaintenanceStartTime *string `min:"7" type:"string"` + // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify + // Amazon Web Services resources. We require an ARN when you need to specify + // a resource unambiguously across all of Amazon Web Services. For more information, + // see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + ResourceARN *string `min:"8" type:"string"` + + // The security style of the root volume of the SVM. + RootVolumeSecurityStyle *string `type:"string" enum:"StorageVirtualMachineRootVolumeSecurityStyle"` + + // The SVM's system generated unique ID. + StorageVirtualMachineId *string `min:"21" type:"string"` + + // Describes the SVM's subtype. + Subtype *string `type:"string" enum:"StorageVirtualMachineSubtype"` + + // A list of Tag values, with a maximum of 50 elements. + Tags []*Tag `min:"1" type:"list"` + + // The SVM's UUID (universally unique identifier). + UUID *string `type:"string"` } // String returns the string representation -func (s LustreFileSystemConfiguration) String() string { +func (s StorageVirtualMachine) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LustreFileSystemConfiguration) GoString() string { +func (s StorageVirtualMachine) GoString() string { return s.String() } -// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. -func (s *LustreFileSystemConfiguration) SetAutomaticBackupRetentionDays(v int64) *LustreFileSystemConfiguration { - s.AutomaticBackupRetentionDays = &v +// SetActiveDirectoryConfiguration sets the ActiveDirectoryConfiguration field's value. +func (s *StorageVirtualMachine) SetActiveDirectoryConfiguration(v *SvmActiveDirectoryConfiguration) *StorageVirtualMachine { + s.ActiveDirectoryConfiguration = v return s } -// SetCopyTagsToBackups sets the CopyTagsToBackups field's value. -func (s *LustreFileSystemConfiguration) SetCopyTagsToBackups(v bool) *LustreFileSystemConfiguration { - s.CopyTagsToBackups = &v +// SetCreationTime sets the CreationTime field's value. +func (s *StorageVirtualMachine) SetCreationTime(v time.Time) *StorageVirtualMachine { + s.CreationTime = &v return s } -// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. -func (s *LustreFileSystemConfiguration) SetDailyAutomaticBackupStartTime(v string) *LustreFileSystemConfiguration { - s.DailyAutomaticBackupStartTime = &v +// SetEndpoints sets the Endpoints field's value. +func (s *StorageVirtualMachine) SetEndpoints(v *SvmEndpoints) *StorageVirtualMachine { + s.Endpoints = v return s } -// SetDataCompressionType sets the DataCompressionType field's value. -func (s *LustreFileSystemConfiguration) SetDataCompressionType(v string) *LustreFileSystemConfiguration { - s.DataCompressionType = &v +// SetFileSystemId sets the FileSystemId field's value. +func (s *StorageVirtualMachine) SetFileSystemId(v string) *StorageVirtualMachine { + s.FileSystemId = &v return s } -// SetDataRepositoryConfiguration sets the DataRepositoryConfiguration field's value. -func (s *LustreFileSystemConfiguration) SetDataRepositoryConfiguration(v *DataRepositoryConfiguration) *LustreFileSystemConfiguration { - s.DataRepositoryConfiguration = v +// SetLifecycle sets the Lifecycle field's value. +func (s *StorageVirtualMachine) SetLifecycle(v string) *StorageVirtualMachine { + s.Lifecycle = &v return s } -// SetDeploymentType sets the DeploymentType field's value. -func (s *LustreFileSystemConfiguration) SetDeploymentType(v string) *LustreFileSystemConfiguration { - s.DeploymentType = &v +// SetLifecycleTransitionReason sets the LifecycleTransitionReason field's value. +func (s *StorageVirtualMachine) SetLifecycleTransitionReason(v *LifecycleTransitionReason) *StorageVirtualMachine { + s.LifecycleTransitionReason = v return s } -// SetDriveCacheType sets the DriveCacheType field's value. -func (s *LustreFileSystemConfiguration) SetDriveCacheType(v string) *LustreFileSystemConfiguration { - s.DriveCacheType = &v +// SetName sets the Name field's value. +func (s *StorageVirtualMachine) SetName(v string) *StorageVirtualMachine { + s.Name = &v return s } -// SetMountName sets the MountName field's value. -func (s *LustreFileSystemConfiguration) SetMountName(v string) *LustreFileSystemConfiguration { - s.MountName = &v +// SetResourceARN sets the ResourceARN field's value. +func (s *StorageVirtualMachine) SetResourceARN(v string) *StorageVirtualMachine { + s.ResourceARN = &v return s } -// SetPerUnitStorageThroughput sets the PerUnitStorageThroughput field's value. -func (s *LustreFileSystemConfiguration) SetPerUnitStorageThroughput(v int64) *LustreFileSystemConfiguration { - s.PerUnitStorageThroughput = &v +// SetRootVolumeSecurityStyle sets the RootVolumeSecurityStyle field's value. +func (s *StorageVirtualMachine) SetRootVolumeSecurityStyle(v string) *StorageVirtualMachine { + s.RootVolumeSecurityStyle = &v return s } -// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. -func (s *LustreFileSystemConfiguration) SetWeeklyMaintenanceStartTime(v string) *LustreFileSystemConfiguration { - s.WeeklyMaintenanceStartTime = &v +// SetStorageVirtualMachineId sets the StorageVirtualMachineId field's value. +func (s *StorageVirtualMachine) SetStorageVirtualMachineId(v string) *StorageVirtualMachine { + s.StorageVirtualMachineId = &v return s } -// A file system configuration is required for this operation. -type MissingFileSystemConfiguration struct { +// SetSubtype sets the Subtype field's value. +func (s *StorageVirtualMachine) SetSubtype(v string) *StorageVirtualMachine { + s.Subtype = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *StorageVirtualMachine) SetTags(v []*Tag) *StorageVirtualMachine { + s.Tags = v + return s +} + +// SetUUID sets the UUID field's value. +func (s *StorageVirtualMachine) SetUUID(v string) *StorageVirtualMachine { + s.UUID = &v + return s +} + +// A filter used to restrict the results of describe calls for Amazon FSx for +// NetApp ONTAP storage virtual machines (SVMs). You can use multiple filters +// to return results that meet all applied filter requirements. +type StorageVirtualMachineFilter struct { + _ struct{} `type:"structure"` + + // The name for this filter. + Name *string `type:"string" enum:"StorageVirtualMachineFilterName"` + + // The values of the filter. These are all the values for any of the applied + // filters. + Values []*string `type:"list"` +} + +// String returns the string representation +func (s StorageVirtualMachineFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StorageVirtualMachineFilter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *StorageVirtualMachineFilter) SetName(v string) *StorageVirtualMachineFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *StorageVirtualMachineFilter) SetValues(v []*string) *StorageVirtualMachineFilter { + s.Values = v + return s +} + +// No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. +type StorageVirtualMachineNotFound struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -7451,28 +11136,28 @@ type MissingFileSystemConfiguration struct { } // String returns the string representation -func (s MissingFileSystemConfiguration) String() string { +func (s StorageVirtualMachineNotFound) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MissingFileSystemConfiguration) GoString() string { +func (s StorageVirtualMachineNotFound) GoString() string { return s.String() } -func newErrorMissingFileSystemConfiguration(v protocol.ResponseMetadata) error { - return &MissingFileSystemConfiguration{ +func newErrorStorageVirtualMachineNotFound(v protocol.ResponseMetadata) error { + return &StorageVirtualMachineNotFound{ RespMetadata: v, } } // Code returns the exception type name. -func (s *MissingFileSystemConfiguration) Code() string { - return "MissingFileSystemConfiguration" +func (s *StorageVirtualMachineNotFound) Code() string { + return "StorageVirtualMachineNotFound" } // Message returns the exception's message. -func (s *MissingFileSystemConfiguration) Message() string { +func (s *StorageVirtualMachineNotFound) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -7480,374 +11165,460 @@ func (s *MissingFileSystemConfiguration) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *MissingFileSystemConfiguration) OrigErr() error { +func (s *StorageVirtualMachineNotFound) OrigErr() error { return nil } -func (s *MissingFileSystemConfiguration) Error() string { +func (s *StorageVirtualMachineNotFound) 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 *MissingFileSystemConfiguration) StatusCode() int { +func (s *StorageVirtualMachineNotFound) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *MissingFileSystemConfiguration) RequestID() string { +func (s *StorageVirtualMachineNotFound) RequestID() string { return s.RespMetadata.RequestID } -// The resource specified for the tagging operation is not a resource type owned -// by Amazon FSx. Use the API of the relevant service to perform the operation. -type NotServiceResourceError struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Describes the configuration of the Microsoft Active Directory (AD) directory +// to which the Amazon FSx for ONTAP storage virtual machine (SVM) is joined. +// Pleae note, account credentials are not returned in the response payload. +type SvmActiveDirectoryConfiguration struct { + _ struct{} `type:"structure"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // The NetBIOS name of the Active Directory computer object that is joined to + // your SVM. + NetBiosName *string `min:"1" type:"string"` - // The Amazon Resource Name (ARN) of the non-Amazon FSx resource. - // - // ResourceARN is a required field - ResourceARN *string `min:"8" type:"string" required:"true"` + // The configuration of the self-managed Microsoft Active Directory (AD) directory + // to which the Windows File Server or ONTAP storage virtual machine (SVM) instance + // is joined. + SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryAttributes `type:"structure"` } // String returns the string representation -func (s NotServiceResourceError) String() string { +func (s SvmActiveDirectoryConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s NotServiceResourceError) GoString() string { +func (s SvmActiveDirectoryConfiguration) GoString() string { return s.String() } -func newErrorNotServiceResourceError(v protocol.ResponseMetadata) error { - return &NotServiceResourceError{ - RespMetadata: v, - } +// SetNetBiosName sets the NetBiosName field's value. +func (s *SvmActiveDirectoryConfiguration) SetNetBiosName(v string) *SvmActiveDirectoryConfiguration { + s.NetBiosName = &v + return s } -// Code returns the exception type name. -func (s *NotServiceResourceError) Code() string { - return "NotServiceResourceError" +// SetSelfManagedActiveDirectoryConfiguration sets the SelfManagedActiveDirectoryConfiguration field's value. +func (s *SvmActiveDirectoryConfiguration) SetSelfManagedActiveDirectoryConfiguration(v *SelfManagedActiveDirectoryAttributes) *SvmActiveDirectoryConfiguration { + s.SelfManagedActiveDirectoryConfiguration = v + return s } -// Message returns the exception's message. -func (s *NotServiceResourceError) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// An Amazon FSx for NetApp ONTAP storage virtual machine (SVM) has four endpoints +// that are used to access data or to manage the SVM using the NetApp ONTAP +// CLI, REST API, or NetApp CloudManager. They are the Iscsi, Management, Nfs, +// and Smb endpoints. +type SvmEndpoint struct { + _ struct{} `type:"structure"` + + // The Domain Name Service (DNS) name for the file system. You can mount your + // file system using its DNS name. + DNSName *string `min:"16" type:"string"` + + // The SVM endpoint's IP addresses. + IpAddresses []*string `min:"1" type:"list"` } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *NotServiceResourceError) OrigErr() error { - return nil +// String returns the string representation +func (s SvmEndpoint) String() string { + return awsutil.Prettify(s) } -func (s *NotServiceResourceError) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// GoString returns the string representation +func (s SvmEndpoint) GoString() string { + return s.String() } -// Status code returns the HTTP status code for the request's response error. -func (s *NotServiceResourceError) StatusCode() int { - return s.RespMetadata.StatusCode +// SetDNSName sets the DNSName field's value. +func (s *SvmEndpoint) SetDNSName(v string) *SvmEndpoint { + s.DNSName = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *NotServiceResourceError) RequestID() string { - return s.RespMetadata.RequestID +// SetIpAddresses sets the IpAddresses field's value. +func (s *SvmEndpoint) SetIpAddresses(v []*string) *SvmEndpoint { + s.IpAddresses = v + return s } -// The resource specified does not support tagging. -type ResourceDoesNotSupportTagging struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// An Amazon FSx for NetApp ONTAP storage virtual machine (SVM) has the following +// endpoints that are used to access data or to manage the SVM using the NetApp +// ONTAP CLI, REST API, or NetApp CloudManager. +type SvmEndpoints struct { + _ struct{} `type:"structure"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // An endpoint for connecting using the Internet Small Computer Systems Interface + // (iSCSI) protocol. + Iscsi *SvmEndpoint `type:"structure"` - // The Amazon Resource Name (ARN) of the resource that doesn't support tagging. - // - // ResourceARN is a required field - ResourceARN *string `min:"8" type:"string" required:"true"` + // An endpoint for managing SVMs using the NetApp ONTAP CLI, NetApp ONTAP API, + // or NetApp CloudManager. + Management *SvmEndpoint `type:"structure"` + + // An endpoint for connecting using the Network File System (NFS) protocol. + Nfs *SvmEndpoint `type:"structure"` + + // An endpoint for connecting using the Server Message Block (SMB) protocol. + Smb *SvmEndpoint `type:"structure"` } // String returns the string representation -func (s ResourceDoesNotSupportTagging) String() string { +func (s SvmEndpoints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceDoesNotSupportTagging) GoString() string { +func (s SvmEndpoints) GoString() string { return s.String() } -func newErrorResourceDoesNotSupportTagging(v protocol.ResponseMetadata) error { - return &ResourceDoesNotSupportTagging{ - RespMetadata: v, - } +// SetIscsi sets the Iscsi field's value. +func (s *SvmEndpoints) SetIscsi(v *SvmEndpoint) *SvmEndpoints { + s.Iscsi = v + return s } -// Code returns the exception type name. -func (s *ResourceDoesNotSupportTagging) Code() string { - return "ResourceDoesNotSupportTagging" +// SetManagement sets the Management field's value. +func (s *SvmEndpoints) SetManagement(v *SvmEndpoint) *SvmEndpoints { + s.Management = v + return s } -// Message returns the exception's message. -func (s *ResourceDoesNotSupportTagging) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetNfs sets the Nfs field's value. +func (s *SvmEndpoints) SetNfs(v *SvmEndpoint) *SvmEndpoints { + s.Nfs = v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceDoesNotSupportTagging) OrigErr() error { - return nil +// SetSmb sets the Smb field's value. +func (s *SvmEndpoints) SetSmb(v *SvmEndpoint) *SvmEndpoints { + s.Smb = v + return s } -func (s *ResourceDoesNotSupportTagging) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// Specifies a key-value pair for a resource tag. +type Tag struct { + _ struct{} `type:"structure"` + + // A value that specifies the TagKey, the name of the tag. Tag keys must be + // unique for the resource to which they are attached. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // A value that specifies the TagValue, the value assigned to the corresponding + // tag key. Tag values can be null and don't have to be unique in a tag set. + // For example, you can have a key-value pair in a tag set of finances : April + // and also of payroll : April. + // + // Value is a required field + Value *string `type:"string" required:"true"` } -// Status code returns the HTTP status code for the request's response error. -func (s *ResourceDoesNotSupportTagging) StatusCode() int { - return s.RespMetadata.StatusCode +// String returns the string representation +func (s Tag) String() string { + return awsutil.Prettify(s) } -// RequestID returns the service's response RequestID for request. -func (s *ResourceDoesNotSupportTagging) RequestID() string { - return s.RespMetadata.RequestID +// GoString returns the string representation +func (s Tag) GoString() string { + return s.String() } -// The resource specified by the Amazon Resource Name (ARN) can't be found. -type ResourceNotFound struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // The resource ARN of the resource that can't be found. +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +// The request object for the TagResource operation. +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon FSx resource that you want to + // tag. // // ResourceARN is a required field ResourceARN *string `min:"8" type:"string" required:"true"` + + // A list of tags for the resource. If a tag with a given key already exists, + // the value is replaced by the one specified in this parameter. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s ResourceNotFound) String() string { +func (s TagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceNotFound) GoString() string { +func (s TagResourceInput) GoString() string { return s.String() } -func newErrorResourceNotFound(v protocol.ResponseMetadata) error { - return &ResourceNotFound{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 8)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } } -} -// Code returns the exception type name. -func (s *ResourceNotFound) Code() string { - return "ResourceNotFound" + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Message returns the exception's message. -func (s *ResourceNotFound) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceNotFound) OrigErr() error { - return nil +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s } -func (s *ResourceNotFound) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// The response object for the TagResource operation. +type TagResourceOutput struct { + _ struct{} `type:"structure"` } -// Status code returns the HTTP status code for the request's response error. -func (s *ResourceNotFound) StatusCode() int { - return s.RespMetadata.StatusCode +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) } -// RequestID returns the service's response RequestID for request. -func (s *ResourceNotFound) RequestID() string { - return s.RespMetadata.RequestID +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() } -// The configuration of the self-managed Microsoft Active Directory (AD) directory -// to which the Windows File Server instance is joined. -type SelfManagedActiveDirectoryAttributes struct { +// Describes the data tiering policy for an ONTAP volume. When enabled, Amazon +// FSx for ONTAP's intelligent tiering automatically transitions a volume's +// data between the file system's primary storage and capacity pool storage +// based on your access patterns. +type TieringPolicy struct { _ struct{} `type:"structure"` - // A list of up to two IP addresses of DNS servers or domain controllers in - // the self-managed AD directory. - DnsIps []*string `min:"1" type:"list"` + // Specifies the number of days that user data in a volume must remain inactive + // before it is considered "cold" and moved to the capacity pool. Used with + // the AUTO and SNAPSHOT_ONLY tiering policies. Enter a whole number between + // 2 and 183. Default values are 31 days for AUTO and 2 days for SNAPSHOT_ONLY. + CoolingPeriod *int64 `min:"2" type:"integer"` + + // Specifies the tiering policy used to transition data. Default value is SNAPSHOT_ONLY. + // + // * SNAPSHOT_ONLY - moves cold snapshots to the capacity pool storage tier. + // + // * AUTO - moves cold user data and snapshots to the capacity pool storage + // tier based on your access patterns. + // + // * ALL - moves all user data blocks in both the active file system and + // Snapshot copies to the storage pool tier. + // + // * NONE - keeps a volume's data in the primary storage tier, preventing + // it from being moved to the capacity pool tier. + Name *string `type:"string" enum:"TieringPolicyName"` +} + +// String returns the string representation +func (s TieringPolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TieringPolicy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TieringPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TieringPolicy"} + if s.CoolingPeriod != nil && *s.CoolingPeriod < 2 { + invalidParams.Add(request.NewErrParamMinValue("CoolingPeriod", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // The fully qualified domain name of the self-managed AD directory. - DomainName *string `min:"1" type:"string"` +// SetCoolingPeriod sets the CoolingPeriod field's value. +func (s *TieringPolicy) SetCoolingPeriod(v int64) *TieringPolicy { + s.CoolingPeriod = &v + return s +} - // The name of the domain group whose members have administrative privileges - // for the FSx file system. - FileSystemAdministratorsGroup *string `min:"1" type:"string"` +// SetName sets the Name field's value. +func (s *TieringPolicy) SetName(v string) *TieringPolicy { + s.Name = &v + return s +} - // The fully qualified distinguished name of the organizational unit within - // the self-managed AD directory to which the Windows File Server instance is - // joined. - OrganizationalUnitDistinguishedName *string `min:"1" type:"string"` +// The requested operation is not supported for this resource or API. +type UnsupportedOperation struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The user name for the service account on your self-managed AD domain that - // FSx uses to join to your AD domain. - UserName *string `min:"1" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s SelfManagedActiveDirectoryAttributes) String() string { +func (s UnsupportedOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SelfManagedActiveDirectoryAttributes) GoString() string { +func (s UnsupportedOperation) GoString() string { return s.String() } -// SetDnsIps sets the DnsIps field's value. -func (s *SelfManagedActiveDirectoryAttributes) SetDnsIps(v []*string) *SelfManagedActiveDirectoryAttributes { - s.DnsIps = v - return s +func newErrorUnsupportedOperation(v protocol.ResponseMetadata) error { + return &UnsupportedOperation{ + RespMetadata: v, + } } -// SetDomainName sets the DomainName field's value. -func (s *SelfManagedActiveDirectoryAttributes) SetDomainName(v string) *SelfManagedActiveDirectoryAttributes { - s.DomainName = &v - return s +// Code returns the exception type name. +func (s *UnsupportedOperation) Code() string { + return "UnsupportedOperation" } -// SetFileSystemAdministratorsGroup sets the FileSystemAdministratorsGroup field's value. -func (s *SelfManagedActiveDirectoryAttributes) SetFileSystemAdministratorsGroup(v string) *SelfManagedActiveDirectoryAttributes { - s.FileSystemAdministratorsGroup = &v - return s +// Message returns the exception's message. +func (s *UnsupportedOperation) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetOrganizationalUnitDistinguishedName sets the OrganizationalUnitDistinguishedName field's value. -func (s *SelfManagedActiveDirectoryAttributes) SetOrganizationalUnitDistinguishedName(v string) *SelfManagedActiveDirectoryAttributes { - s.OrganizationalUnitDistinguishedName = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnsupportedOperation) OrigErr() error { + return nil } -// SetUserName sets the UserName field's value. -func (s *SelfManagedActiveDirectoryAttributes) SetUserName(v string) *SelfManagedActiveDirectoryAttributes { - s.UserName = &v - return s +func (s *UnsupportedOperation) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// The configuration that Amazon FSx uses to join the Windows File Server instance -// to your self-managed (including on-premises) Microsoft Active Directory (AD) -// directory. For more information, see Using Amazon FSx with your self-managed -// Microsoft Active Directory (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html). -type SelfManagedActiveDirectoryConfiguration struct { - _ struct{} `type:"structure"` - - // A list of up to two IP addresses of DNS servers or domain controllers in - // the self-managed AD directory. - // - // DnsIps is a required field - DnsIps []*string `min:"1" type:"list" required:"true"` - - // The fully qualified domain name of the self-managed AD directory, such as - // corp.example.com. - // - // DomainName is a required field - DomainName *string `min:"1" type:"string" required:"true"` +// Status code returns the HTTP status code for the request's response error. +func (s *UnsupportedOperation) StatusCode() int { + return s.RespMetadata.StatusCode +} - // (Optional) The name of the domain group whose members are granted administrative - // privileges for the file system. Administrative privileges include taking - // ownership of files and folders, setting audit controls (audit ACLs) on files - // and folders, and administering the file system remotely by using the FSx - // Remote PowerShell. The group that you specify must already exist in your - // domain. If you don't provide one, your AD domain's Domain Admins group is - // used. - FileSystemAdministratorsGroup *string `min:"1" type:"string"` +// RequestID returns the service's response RequestID for request. +func (s *UnsupportedOperation) RequestID() string { + return s.RespMetadata.RequestID +} - // (Optional) The fully qualified distinguished name of the organizational unit - // within your self-managed AD directory that the Windows File Server instance - // will join. Amazon FSx only accepts OU as the direct parent of the file system. - // An example is OU=FSx,DC=yourdomain,DC=corp,DC=com. To learn more, see RFC - // 2253 (https://tools.ietf.org/html/rfc2253). If none is provided, the FSx - // file system is created in the default location of your self-managed AD directory. - // - // Only Organizational Unit (OU) objects can be the direct parent of the file - // system that you're creating. - OrganizationalUnitDistinguishedName *string `min:"1" type:"string"` +// The request object for UntagResource action. +type UntagResourceInput struct { + _ struct{} `type:"structure"` - // The password for the service account on your self-managed AD domain that - // Amazon FSx will use to join to your AD domain. + // The ARN of the Amazon FSx resource to untag. // - // Password is a required field - Password *string `min:"1" type:"string" required:"true" sensitive:"true"` + // ResourceARN is a required field + ResourceARN *string `min:"8" type:"string" required:"true"` - // The user name for the service account on your self-managed AD domain that - // Amazon FSx will use to join to your AD domain. This account must have the - // permission to join computers to the domain in the organizational unit provided - // in OrganizationalUnitDistinguishedName, or in the default location of your - // AD domain. + // A list of keys of tags on the resource to untag. In case the tag key doesn't + // exist, the call will still succeed to be idempotent. // - // UserName is a required field - UserName *string `min:"1" type:"string" required:"true"` + // TagKeys is a required field + TagKeys []*string `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s SelfManagedActiveDirectoryConfiguration) String() string { +func (s UntagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SelfManagedActiveDirectoryConfiguration) GoString() string { +func (s UntagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *SelfManagedActiveDirectoryConfiguration) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SelfManagedActiveDirectoryConfiguration"} - if s.DnsIps == nil { - invalidParams.Add(request.NewErrParamRequired("DnsIps")) - } - if s.DnsIps != nil && len(s.DnsIps) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DnsIps", 1)) - } - if s.DomainName == nil { - invalidParams.Add(request.NewErrParamRequired("DomainName")) - } - if s.DomainName != nil && len(*s.DomainName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) - } - if s.FileSystemAdministratorsGroup != nil && len(*s.FileSystemAdministratorsGroup) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FileSystemAdministratorsGroup", 1)) - } - if s.OrganizationalUnitDistinguishedName != nil && len(*s.OrganizationalUnitDistinguishedName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnitDistinguishedName", 1)) - } - if s.Password == nil { - invalidParams.Add(request.NewErrParamRequired("Password")) +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } - if s.Password != nil && len(*s.Password) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Password", 1)) + if s.ResourceARN != nil && len(*s.ResourceARN) < 8 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 8)) } - if s.UserName == nil { - invalidParams.Add(request.NewErrParamRequired("UserName")) + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) } - if s.UserName != nil && len(*s.UserName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) } if invalidParams.Len() > 0 { @@ -7856,83 +11627,124 @@ func (s *SelfManagedActiveDirectoryConfiguration) Validate() error { return nil } -// SetDnsIps sets the DnsIps field's value. -func (s *SelfManagedActiveDirectoryConfiguration) SetDnsIps(v []*string) *SelfManagedActiveDirectoryConfiguration { - s.DnsIps = v - return s -} - -// SetDomainName sets the DomainName field's value. -func (s *SelfManagedActiveDirectoryConfiguration) SetDomainName(v string) *SelfManagedActiveDirectoryConfiguration { - s.DomainName = &v +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v return s } -// SetFileSystemAdministratorsGroup sets the FileSystemAdministratorsGroup field's value. -func (s *SelfManagedActiveDirectoryConfiguration) SetFileSystemAdministratorsGroup(v string) *SelfManagedActiveDirectoryConfiguration { - s.FileSystemAdministratorsGroup = &v +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v return s } -// SetOrganizationalUnitDistinguishedName sets the OrganizationalUnitDistinguishedName field's value. -func (s *SelfManagedActiveDirectoryConfiguration) SetOrganizationalUnitDistinguishedName(v string) *SelfManagedActiveDirectoryConfiguration { - s.OrganizationalUnitDistinguishedName = &v - return s +// The response object for UntagResource action. +type UntagResourceOutput struct { + _ struct{} `type:"structure"` } -// SetPassword sets the Password field's value. -func (s *SelfManagedActiveDirectoryConfiguration) SetPassword(v string) *SelfManagedActiveDirectoryConfiguration { - s.Password = &v - return s +// String returns the string representation +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) } -// SetUserName sets the UserName field's value. -func (s *SelfManagedActiveDirectoryConfiguration) SetUserName(v string) *SelfManagedActiveDirectoryConfiguration { - s.UserName = &v - return s +// GoString returns the string representation +func (s UntagResourceOutput) GoString() string { + return s.String() } -// The configuration that Amazon FSx uses to join the Windows File Server instance -// to a self-managed Microsoft Active Directory (AD) directory. -type SelfManagedActiveDirectoryConfigurationUpdates struct { +// The request object for the UpdateFileSystem operation. +type UpdateFileSystemInput struct { _ struct{} `type:"structure"` - // A list of up to two IP addresses of DNS servers or domain controllers in - // the self-managed AD directory. - DnsIps []*string `min:"1" type:"list"` + // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent + // updates. This string is automatically filled on your behalf when you use + // the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - // The password for the service account on your self-managed AD domain that - // Amazon FSx will use to join to your AD domain. - Password *string `min:"1" type:"string" sensitive:"true"` + // Identifies the file system that you are updating. + // + // FileSystemId is a required field + FileSystemId *string `min:"11" type:"string" required:"true"` - // The user name for the service account on your self-managed AD domain that - // Amazon FSx will use to join to your AD domain. This account must have the - // permission to join computers to the domain in the organizational unit provided - // in OrganizationalUnitDistinguishedName. - UserName *string `min:"1" type:"string"` + // The configuration object for Amazon FSx for Lustre file systems used in the + // UpdateFileSystem operation. + LustreConfiguration *UpdateFileSystemLustreConfiguration `type:"structure"` + + // The configuration updates for an Amazon FSx for NetApp ONTAP file system. + OntapConfiguration *UpdateFileSystemOntapConfiguration `type:"structure"` + + // Use this parameter to increase the storage capacity of an Amazon FSx for + // Windows File Server or Amazon FSx for Lustre file system. Specifies the storage + // capacity target value, GiB, to increase the storage capacity for the file + // system that you're updating. You cannot make a storage capacity increase + // request if there is an existing storage capacity increase request in progress. + // + // For Windows file systems, the storage capacity target value must be at least + // 10 percent (%) greater than the current storage capacity value. In order + // to increase storage capacity, the file system must have at least 16 MB/s + // of throughput capacity. + // + // For Lustre file systems, the storage capacity target value can be the following: + // + // * For SCRATCH_2 and PERSISTENT_1 SSD deployment types, valid values are + // in multiples of 2400 GiB. The value must be greater than the current storage + // capacity. + // + // * For PERSISTENT HDD file systems, valid values are multiples of 6000 + // GiB for 12 MB/s/TiB file systems and multiples of 1800 GiB for 40 MB/s/TiB + // file systems. The values must be greater than the current storage capacity. + // + // * For SCRATCH_1 file systems, you cannot increase the storage capacity. + // + // For more information, see Managing storage capacity (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-storage-capacity.html) + // in the Amazon FSx for Windows File Server User Guide and Managing storage + // and throughput capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-storage-capacity.html) + // in the Amazon FSx for Lustre User Guide. + StorageCapacity *int64 `type:"integer"` + + // The configuration updates for an Amazon FSx for Windows File Server file + // system. + WindowsConfiguration *UpdateFileSystemWindowsConfiguration `type:"structure"` } // String returns the string representation -func (s SelfManagedActiveDirectoryConfigurationUpdates) String() string { +func (s UpdateFileSystemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SelfManagedActiveDirectoryConfigurationUpdates) GoString() string { +func (s UpdateFileSystemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *SelfManagedActiveDirectoryConfigurationUpdates) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SelfManagedActiveDirectoryConfigurationUpdates"} - if s.DnsIps != nil && len(s.DnsIps) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DnsIps", 1)) +func (s *UpdateFileSystemInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.Password != nil && len(*s.Password) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Password", 1)) + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } - if s.UserName != nil && len(*s.UserName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + } + if s.LustreConfiguration != nil { + if err := s.LustreConfiguration.Validate(); err != nil { + invalidParams.AddNested("LustreConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.OntapConfiguration != nil { + if err := s.OntapConfiguration.Validate(); err != nil { + invalidParams.AddNested("OntapConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.WindowsConfiguration != nil { + if err := s.WindowsConfiguration.Validate(); err != nil { + invalidParams.AddNested("WindowsConfiguration", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -7941,188 +11753,206 @@ func (s *SelfManagedActiveDirectoryConfigurationUpdates) Validate() error { return nil } -// SetDnsIps sets the DnsIps field's value. -func (s *SelfManagedActiveDirectoryConfigurationUpdates) SetDnsIps(v []*string) *SelfManagedActiveDirectoryConfigurationUpdates { - s.DnsIps = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpdateFileSystemInput) SetClientRequestToken(v string) *UpdateFileSystemInput { + s.ClientRequestToken = &v return s } -// SetPassword sets the Password field's value. -func (s *SelfManagedActiveDirectoryConfigurationUpdates) SetPassword(v string) *SelfManagedActiveDirectoryConfigurationUpdates { - s.Password = &v +// SetFileSystemId sets the FileSystemId field's value. +func (s *UpdateFileSystemInput) SetFileSystemId(v string) *UpdateFileSystemInput { + s.FileSystemId = &v return s } -// SetUserName sets the UserName field's value. -func (s *SelfManagedActiveDirectoryConfigurationUpdates) SetUserName(v string) *SelfManagedActiveDirectoryConfigurationUpdates { - s.UserName = &v +// SetLustreConfiguration sets the LustreConfiguration field's value. +func (s *UpdateFileSystemInput) SetLustreConfiguration(v *UpdateFileSystemLustreConfiguration) *UpdateFileSystemInput { + s.LustreConfiguration = v return s } -// An error indicating that a particular service limit was exceeded. You can -// increase some service limits by contacting AWS Support. -type ServiceLimitExceeded struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Enumeration of the service limit that was exceeded. - // - // Limit is a required field - Limit *string `type:"string" required:"true" enum:"ServiceLimit"` - - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` -} - -// String returns the string representation -func (s ServiceLimitExceeded) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s ServiceLimitExceeded) GoString() string { - return s.String() -} - -func newErrorServiceLimitExceeded(v protocol.ResponseMetadata) error { - return &ServiceLimitExceeded{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ServiceLimitExceeded) Code() string { - return "ServiceLimitExceeded" +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *UpdateFileSystemInput) SetOntapConfiguration(v *UpdateFileSystemOntapConfiguration) *UpdateFileSystemInput { + s.OntapConfiguration = v + return s } -// Message returns the exception's message. -func (s *ServiceLimitExceeded) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetStorageCapacity sets the StorageCapacity field's value. +func (s *UpdateFileSystemInput) SetStorageCapacity(v int64) *UpdateFileSystemInput { + s.StorageCapacity = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ServiceLimitExceeded) OrigErr() error { - return nil +// SetWindowsConfiguration sets the WindowsConfiguration field's value. +func (s *UpdateFileSystemInput) SetWindowsConfiguration(v *UpdateFileSystemWindowsConfiguration) *UpdateFileSystemInput { + s.WindowsConfiguration = v + return s } -func (s *ServiceLimitExceeded) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} +// The configuration object for Amazon FSx for Lustre file systems used in the +// UpdateFileSystem operation. +type UpdateFileSystemLustreConfiguration struct { + _ struct{} `type:"structure"` -// Status code returns the HTTP status code for the request's response error. -func (s *ServiceLimitExceeded) StatusCode() int { - return s.RespMetadata.StatusCode -} + // (Optional) When you create your file system, your existing S3 objects appear + // as file and directory listings. Use this property to choose how Amazon FSx + // keeps your file and directory listing up to date as you add or modify objects + // in your linked S3 bucket. AutoImportPolicy can have the following values: + // + // * NONE - (Default) AutoImport is off. Amazon FSx only updates file and + // directory listings from the linked S3 bucket when the file system is created. + // FSx does not update the file and directory listing for any new or changed + // objects after choosing this option. + // + // * NEW - AutoImport is on. Amazon FSx automatically imports directory listings + // of any new objects added to the linked S3 bucket that do not currently + // exist in the FSx file system. + // + // * NEW_CHANGED - AutoImport is on. Amazon FSx automatically imports file + // and directory listings of any new objects added to the S3 bucket and any + // existing objects that are changed in the S3 bucket after you choose this + // option. + // + // For more information, see Automatically import updates from your S3 bucket + // (https://docs.aws.amazon.com/fsx/latest/LustreGuide/autoimport-data-repo.html). + AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` -// RequestID returns the service's response RequestID for request. -func (s *ServiceLimitExceeded) RequestID() string { - return s.RespMetadata.RequestID -} + // The number of days to retain automatic backups. Setting this to 0 disables + // automatic backups. You can retain automatic backups for a maximum of 90 days. + // The default is 0. + AutomaticBackupRetentionDays *int64 `type:"integer"` -// The request was rejected because the lifecycle status of the source backup -// is not AVAILABLE. -type SourceBackupUnavailable struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of + // the day (0-23), and MM is the zero-padded minute of the hour. For example, + // 05:00 specifies 5 AM daily. + DailyAutomaticBackupStartTime *string `min:"5" type:"string"` - // The ID of the source backup. Specifies the backup you are copying. - BackupId *string `min:"12" type:"string"` + // Sets the data compression configuration for the file system. DataCompressionType + // can have the following values: + // + // * NONE - Data compression is turned off for the file system. + // + // * LZ4 - Data compression is turned on with the LZ4 algorithm. + // + // If you don't use DataCompressionType, the file system retains its current + // data compression configuration. + // + // For more information, see Lustre data compression (https://docs.aws.amazon.com/fsx/latest/LustreGuide/data-compression.html). + DataCompressionType *string `type:"string" enum:"DataCompressionType"` - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` + // (Optional) The preferred start time to perform weekly maintenance, formatted + // d:HH:MM in the UTC time zone. d is the weekday number, from 1 through 7, + // beginning with Monday and ending with Sunday. + WeeklyMaintenanceStartTime *string `min:"7" type:"string"` } // String returns the string representation -func (s SourceBackupUnavailable) String() string { +func (s UpdateFileSystemLustreConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SourceBackupUnavailable) GoString() string { +func (s UpdateFileSystemLustreConfiguration) GoString() string { return s.String() } -func newErrorSourceBackupUnavailable(v protocol.ResponseMetadata) error { - return &SourceBackupUnavailable{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateFileSystemLustreConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemLustreConfiguration"} + if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { + invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) + } + if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { + invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) } -} -// Code returns the exception type name. -func (s *SourceBackupUnavailable) Code() string { - return "SourceBackupUnavailable" + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Message returns the exception's message. -func (s *SourceBackupUnavailable) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetAutoImportPolicy sets the AutoImportPolicy field's value. +func (s *UpdateFileSystemLustreConfiguration) SetAutoImportPolicy(v string) *UpdateFileSystemLustreConfiguration { + s.AutoImportPolicy = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *SourceBackupUnavailable) OrigErr() error { - return nil +// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. +func (s *UpdateFileSystemLustreConfiguration) SetAutomaticBackupRetentionDays(v int64) *UpdateFileSystemLustreConfiguration { + s.AutomaticBackupRetentionDays = &v + return s } -func (s *SourceBackupUnavailable) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. +func (s *UpdateFileSystemLustreConfiguration) SetDailyAutomaticBackupStartTime(v string) *UpdateFileSystemLustreConfiguration { + s.DailyAutomaticBackupStartTime = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *SourceBackupUnavailable) StatusCode() int { - return s.RespMetadata.StatusCode +// SetDataCompressionType sets the DataCompressionType field's value. +func (s *UpdateFileSystemLustreConfiguration) SetDataCompressionType(v string) *UpdateFileSystemLustreConfiguration { + s.DataCompressionType = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *SourceBackupUnavailable) RequestID() string { - return s.RespMetadata.RequestID +// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. +func (s *UpdateFileSystemLustreConfiguration) SetWeeklyMaintenanceStartTime(v string) *UpdateFileSystemLustreConfiguration { + s.WeeklyMaintenanceStartTime = &v + return s } -// Specifies a key-value pair for a resource tag. -type Tag struct { +// The configuration updates for an Amazon FSx for NetApp ONTAP file system. +type UpdateFileSystemOntapConfiguration struct { _ struct{} `type:"structure"` - // A value that specifies the TagKey, the name of the tag. Tag keys must be - // unique for the resource to which they are attached. - // - // Key is a required field - Key *string `min:"1" type:"string" required:"true"` + // The number of days to retain automatic backups. Setting this to 0 disables + // automatic backups. You can retain automatic backups for a maximum of 90 days. + // The default is 0. + AutomaticBackupRetentionDays *int64 `type:"integer"` - // A value that specifies the TagValue, the value assigned to the corresponding - // tag key. Tag values can be null and don't have to be unique in a tag set. - // For example, you can have a key-value pair in a tag set of finances : April - // and also of payroll : April. + // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of + // the day (0-23), and MM is the zero-padded minute of the hour. For example, + // 05:00 specifies 5 AM daily. + DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + + // The ONTAP administrative password for the fsxadmin user. + FsxAdminPassword *string `min:"8" type:"string" sensitive:"true"` + + // A recurring weekly time, in the format D:HH:MM. + // + // D is the day of the week, for which 1 represents Monday and 7 represents + // Sunday. For further details, see the ISO-8601 spec as described on Wikipedia + // (https://en.wikipedia.org/wiki/ISO_week_date). // - // Value is a required field - Value *string `type:"string" required:"true"` + // HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute + // of the hour. + // + // For example, 1:05:00 specifies maintenance at 5 AM Monday. + WeeklyMaintenanceStartTime *string `min:"7" type:"string"` } // String returns the string representation -func (s Tag) String() string { +func (s UpdateFileSystemOntapConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Tag) GoString() string { +func (s UpdateFileSystemOntapConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *Tag) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Tag"} - if s.Key == nil { - invalidParams.Add(request.NewErrParamRequired("Key")) +func (s *UpdateFileSystemOntapConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemOntapConfiguration"} + if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { + invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) } - if s.Key != nil && len(*s.Key) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + if s.FsxAdminPassword != nil && len(*s.FsxAdminPassword) < 8 { + invalidParams.Add(request.NewErrParamMinLen("FsxAdminPassword", 8)) } - if s.Value == nil { - invalidParams.Add(request.NewErrParamRequired("Value")) + if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { + invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) } if invalidParams.Len() > 0 { @@ -8131,68 +11961,124 @@ func (s *Tag) Validate() error { return nil } -// SetKey sets the Key field's value. -func (s *Tag) SetKey(v string) *Tag { - s.Key = &v +// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. +func (s *UpdateFileSystemOntapConfiguration) SetAutomaticBackupRetentionDays(v int64) *UpdateFileSystemOntapConfiguration { + s.AutomaticBackupRetentionDays = &v return s } -// SetValue sets the Value field's value. -func (s *Tag) SetValue(v string) *Tag { - s.Value = &v +// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. +func (s *UpdateFileSystemOntapConfiguration) SetDailyAutomaticBackupStartTime(v string) *UpdateFileSystemOntapConfiguration { + s.DailyAutomaticBackupStartTime = &v return s } -// The request object for the TagResource operation. -type TagResourceInput struct { +// SetFsxAdminPassword sets the FsxAdminPassword field's value. +func (s *UpdateFileSystemOntapConfiguration) SetFsxAdminPassword(v string) *UpdateFileSystemOntapConfiguration { + s.FsxAdminPassword = &v + return s +} + +// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. +func (s *UpdateFileSystemOntapConfiguration) SetWeeklyMaintenanceStartTime(v string) *UpdateFileSystemOntapConfiguration { + s.WeeklyMaintenanceStartTime = &v + return s +} + +// The response object for the UpdateFileSystem operation. +type UpdateFileSystemOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the Amazon FSx resource that you want to - // tag. - // - // ResourceARN is a required field - ResourceARN *string `min:"8" type:"string" required:"true"` + // A description of the file system that was updated. + FileSystem *FileSystem `type:"structure"` +} - // A list of tags for the resource. If a tag with a given key already exists, - // the value is replaced by the one specified in this parameter. - // - // Tags is a required field - Tags []*Tag `min:"1" type:"list" required:"true"` +// String returns the string representation +func (s UpdateFileSystemOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateFileSystemOutput) GoString() string { + return s.String() +} + +// SetFileSystem sets the FileSystem field's value. +func (s *UpdateFileSystemOutput) SetFileSystem(v *FileSystem) *UpdateFileSystemOutput { + s.FileSystem = v + return s +} + +// Updates the configuration for an existing Amazon FSx for Windows File Server +// file system. Amazon FSx only overwrites existing properties with non-null +// values provided in the request. +type UpdateFileSystemWindowsConfiguration struct { + _ struct{} `type:"structure"` + + // The configuration that Amazon FSx for Windows File Server uses to audit and + // log user accesses of files, folders, and file shares on the Amazon FSx for + // Windows File Server file system.. + AuditLogConfiguration *WindowsAuditLogCreateConfiguration `type:"structure"` + + // The number of days to retain automatic daily backups. Setting this to zero + // (0) disables automatic daily backups. You can retain automatic daily backups + // for a maximum of 90 days. For more information, see Working with Automatic + // Daily Backups (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html#automatic-backups). + AutomaticBackupRetentionDays *int64 `type:"integer"` + + // The preferred time to start the daily automatic backup, in the UTC time zone, + // for example, 02:00 + DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + + // The configuration Amazon FSx uses to join the Windows File Server instance + // to the self-managed Microsoft AD directory. You cannot make a self-managed + // Microsoft AD update request if there is an existing self-managed Microsoft + // AD update request in progress. + SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfigurationUpdates `type:"structure"` + + // Sets the target value for a file system's throughput capacity, in MB/s, that + // you are updating the file system to. Valid values are 8, 16, 32, 64, 128, + // 256, 512, 1024, 2048. You cannot make a throughput capacity update request + // if there is an existing throughput capacity update request in progress. For + // more information, see Managing Throughput Capacity (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-throughput-capacity.html). + ThroughputCapacity *int64 `min:"8" type:"integer"` + + // The preferred start time to perform weekly maintenance, formatted d:HH:MM + // in the UTC time zone. Where d is the weekday number, from 1 through 7, with + // 1 = Monday and 7 = Sunday. + WeeklyMaintenanceStartTime *string `min:"7" type:"string"` } // String returns the string representation -func (s TagResourceInput) String() string { +func (s UpdateFileSystemWindowsConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagResourceInput) GoString() string { +func (s UpdateFileSystemWindowsConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} - if s.ResourceARN == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceARN")) +func (s *UpdateFileSystemWindowsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemWindowsConfiguration"} + if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { + invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) } - if s.ResourceARN != nil && len(*s.ResourceARN) < 8 { - invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 8)) + if s.ThroughputCapacity != nil && *s.ThroughputCapacity < 8 { + invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacity", 8)) } - if s.Tags == nil { - invalidParams.Add(request.NewErrParamRequired("Tags")) + if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { + invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + if s.AuditLogConfiguration != nil { + if err := s.AuditLogConfiguration.Validate(); err != nil { + invalidParams.AddNested("AuditLogConfiguration", err.(request.ErrInvalidParams)) + } } - if s.Tags != nil { - for i, v := range s.Tags { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) - } + if s.SelfManagedActiveDirectoryConfiguration != nil { + if err := s.SelfManagedActiveDirectoryConfiguration.Validate(); err != nil { + invalidParams.AddNested("SelfManagedActiveDirectoryConfiguration", err.(request.ErrInvalidParams)) } } @@ -8202,130 +12088,173 @@ func (s *TagResourceInput) Validate() error { return nil } -// SetResourceARN sets the ResourceARN field's value. -func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { - s.ResourceARN = &v +// SetAuditLogConfiguration sets the AuditLogConfiguration field's value. +func (s *UpdateFileSystemWindowsConfiguration) SetAuditLogConfiguration(v *WindowsAuditLogCreateConfiguration) *UpdateFileSystemWindowsConfiguration { + s.AuditLogConfiguration = v return s } -// SetTags sets the Tags field's value. -func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { - s.Tags = v +// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. +func (s *UpdateFileSystemWindowsConfiguration) SetAutomaticBackupRetentionDays(v int64) *UpdateFileSystemWindowsConfiguration { + s.AutomaticBackupRetentionDays = &v return s } -// The response object for the TagResource operation. -type TagResourceOutput struct { - _ struct{} `type:"structure"` +// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. +func (s *UpdateFileSystemWindowsConfiguration) SetDailyAutomaticBackupStartTime(v string) *UpdateFileSystemWindowsConfiguration { + s.DailyAutomaticBackupStartTime = &v + return s } -// String returns the string representation -func (s TagResourceOutput) String() string { - return awsutil.Prettify(s) +// SetSelfManagedActiveDirectoryConfiguration sets the SelfManagedActiveDirectoryConfiguration field's value. +func (s *UpdateFileSystemWindowsConfiguration) SetSelfManagedActiveDirectoryConfiguration(v *SelfManagedActiveDirectoryConfigurationUpdates) *UpdateFileSystemWindowsConfiguration { + s.SelfManagedActiveDirectoryConfiguration = v + return s } -// GoString returns the string representation -func (s TagResourceOutput) GoString() string { - return s.String() +// SetThroughputCapacity sets the ThroughputCapacity field's value. +func (s *UpdateFileSystemWindowsConfiguration) SetThroughputCapacity(v int64) *UpdateFileSystemWindowsConfiguration { + s.ThroughputCapacity = &v + return s } -// The requested operation is not supported for this resource or API. -type UnsupportedOperation struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. +func (s *UpdateFileSystemWindowsConfiguration) SetWeeklyMaintenanceStartTime(v string) *UpdateFileSystemWindowsConfiguration { + s.WeeklyMaintenanceStartTime = &v + return s +} - // A detailed error message. - Message_ *string `locationName:"Message" min:"1" type:"string"` +// Used to specify changes to the ONTAP configuration for the volume you are +// updating. +type UpdateOntapVolumeConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies the location in the SVM's namespace where the volume is mounted. + // The JunctionPath must have a leading forward slash, such as /vol3. + JunctionPath *string `min:"1" type:"string"` + + // The security style for the volume, which can be UNIX. NTFS, or MIXED. + SecurityStyle *string `type:"string" enum:"SecurityStyle"` + + // Specifies the size of the volume in megabytes. + SizeInMegabytes *int64 `type:"integer"` + + // Default is false. Set to true to enable the deduplication, compression, and + // compaction storage efficiency features on the volume. + StorageEfficiencyEnabled *bool `type:"boolean"` + + // Update the volume's data tiering policy. + TieringPolicy *TieringPolicy `type:"structure"` } // String returns the string representation -func (s UnsupportedOperation) String() string { +func (s UpdateOntapVolumeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UnsupportedOperation) GoString() string { +func (s UpdateOntapVolumeConfiguration) GoString() string { return s.String() } -func newErrorUnsupportedOperation(v protocol.ResponseMetadata) error { - return &UnsupportedOperation{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateOntapVolumeConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateOntapVolumeConfiguration"} + if s.JunctionPath != nil && len(*s.JunctionPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JunctionPath", 1)) + } + if s.TieringPolicy != nil { + if err := s.TieringPolicy.Validate(); err != nil { + invalidParams.AddNested("TieringPolicy", err.(request.ErrInvalidParams)) + } } -} -// Code returns the exception type name. -func (s *UnsupportedOperation) Code() string { - return "UnsupportedOperation" + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Message returns the exception's message. -func (s *UnsupportedOperation) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetJunctionPath sets the JunctionPath field's value. +func (s *UpdateOntapVolumeConfiguration) SetJunctionPath(v string) *UpdateOntapVolumeConfiguration { + s.JunctionPath = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *UnsupportedOperation) OrigErr() error { - return nil +// SetSecurityStyle sets the SecurityStyle field's value. +func (s *UpdateOntapVolumeConfiguration) SetSecurityStyle(v string) *UpdateOntapVolumeConfiguration { + s.SecurityStyle = &v + return s } -func (s *UnsupportedOperation) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetSizeInMegabytes sets the SizeInMegabytes field's value. +func (s *UpdateOntapVolumeConfiguration) SetSizeInMegabytes(v int64) *UpdateOntapVolumeConfiguration { + s.SizeInMegabytes = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *UnsupportedOperation) StatusCode() int { - return s.RespMetadata.StatusCode +// SetStorageEfficiencyEnabled sets the StorageEfficiencyEnabled field's value. +func (s *UpdateOntapVolumeConfiguration) SetStorageEfficiencyEnabled(v bool) *UpdateOntapVolumeConfiguration { + s.StorageEfficiencyEnabled = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *UnsupportedOperation) RequestID() string { - return s.RespMetadata.RequestID +// SetTieringPolicy sets the TieringPolicy field's value. +func (s *UpdateOntapVolumeConfiguration) SetTieringPolicy(v *TieringPolicy) *UpdateOntapVolumeConfiguration { + s.TieringPolicy = v + return s } -// The request object for UntagResource action. -type UntagResourceInput struct { +type UpdateStorageVirtualMachineInput struct { _ struct{} `type:"structure"` - // The ARN of the Amazon FSx resource to untag. - // - // ResourceARN is a required field - ResourceARN *string `min:"8" type:"string" required:"true"` + // Updates the Microsoft Active Directory (AD) configuration for an SVM that + // is joined to an AD. + ActiveDirectoryConfiguration *UpdateSvmActiveDirectoryConfiguration `type:"structure"` - // A list of keys of tags on the resource to untag. In case the tag key doesn't - // exist, the call will still succeed to be idempotent. + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the SVM that you want to update, in the format svm-0123456789abcdef0. // - // TagKeys is a required field - TagKeys []*string `min:"1" type:"list" required:"true"` + // StorageVirtualMachineId is a required field + StorageVirtualMachineId *string `min:"21" type:"string" required:"true"` + + // Enter a new SvmAdminPassword if you are updating it. + SvmAdminPassword *string `min:"8" type:"string" sensitive:"true"` } // String returns the string representation -func (s UntagResourceInput) String() string { +func (s UpdateStorageVirtualMachineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UntagResourceInput) GoString() string { +func (s UpdateStorageVirtualMachineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UntagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} - if s.ResourceARN == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceARN")) +func (s *UpdateStorageVirtualMachineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateStorageVirtualMachineInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.ResourceARN != nil && len(*s.ResourceARN) < 8 { - invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 8)) + if s.StorageVirtualMachineId == nil { + invalidParams.Add(request.NewErrParamRequired("StorageVirtualMachineId")) } - if s.TagKeys == nil { - invalidParams.Add(request.NewErrParamRequired("TagKeys")) + if s.StorageVirtualMachineId != nil && len(*s.StorageVirtualMachineId) < 21 { + invalidParams.Add(request.NewErrParamMinLen("StorageVirtualMachineId", 21)) } - if s.TagKeys != nil && len(s.TagKeys) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + if s.SvmAdminPassword != nil && len(*s.SvmAdminPassword) < 8 { + invalidParams.Add(request.NewErrParamMinLen("SvmAdminPassword", 8)) + } + if s.ActiveDirectoryConfiguration != nil { + if err := s.ActiveDirectoryConfiguration.Validate(); err != nil { + invalidParams.AddNested("ActiveDirectoryConfiguration", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -8334,115 +12263,137 @@ func (s *UntagResourceInput) Validate() error { return nil } -// SetResourceARN sets the ResourceARN field's value. -func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { - s.ResourceARN = &v +// SetActiveDirectoryConfiguration sets the ActiveDirectoryConfiguration field's value. +func (s *UpdateStorageVirtualMachineInput) SetActiveDirectoryConfiguration(v *UpdateSvmActiveDirectoryConfiguration) *UpdateStorageVirtualMachineInput { + s.ActiveDirectoryConfiguration = v return s } -// SetTagKeys sets the TagKeys field's value. -func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { - s.TagKeys = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpdateStorageVirtualMachineInput) SetClientRequestToken(v string) *UpdateStorageVirtualMachineInput { + s.ClientRequestToken = &v return s } -// The response object for UntagResource action. -type UntagResourceOutput struct { +// SetStorageVirtualMachineId sets the StorageVirtualMachineId field's value. +func (s *UpdateStorageVirtualMachineInput) SetStorageVirtualMachineId(v string) *UpdateStorageVirtualMachineInput { + s.StorageVirtualMachineId = &v + return s +} + +// SetSvmAdminPassword sets the SvmAdminPassword field's value. +func (s *UpdateStorageVirtualMachineInput) SetSvmAdminPassword(v string) *UpdateStorageVirtualMachineInput { + s.SvmAdminPassword = &v + return s +} + +type UpdateStorageVirtualMachineOutput struct { _ struct{} `type:"structure"` + + // Describes the Amazon FSx for NetApp ONTAP storage virtual machine (SVM) configuraton. + StorageVirtualMachine *StorageVirtualMachine `type:"structure"` } // String returns the string representation -func (s UntagResourceOutput) String() string { +func (s UpdateStorageVirtualMachineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UntagResourceOutput) GoString() string { +func (s UpdateStorageVirtualMachineOutput) GoString() string { return s.String() } -// The request object for the UpdateFileSystem operation. -type UpdateFileSystemInput struct { +// SetStorageVirtualMachine sets the StorageVirtualMachine field's value. +func (s *UpdateStorageVirtualMachineOutput) SetStorageVirtualMachine(v *StorageVirtualMachine) *UpdateStorageVirtualMachineOutput { + s.StorageVirtualMachine = v + return s +} + +// Updates the Microsoft Active Directory (AD) configuration of an SVM joined +// to an AD. Pleae note, account credentials are not returned in the response +// payload. +type UpdateSvmActiveDirectoryConfiguration struct { _ struct{} `type:"structure"` - // A string of up to 64 ASCII characters that Amazon FSx uses to ensure idempotent - // updates. This string is automatically filled on your behalf when you use - // the AWS Command Line Interface (AWS CLI) or an AWS SDK. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + // The configuration that Amazon FSx uses to join the Windows File Server instance + // to a self-managed Microsoft Active Directory (AD) directory. + SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfigurationUpdates `type:"structure"` +} - // Identifies the file system that you are updating. - // - // FileSystemId is a required field - FileSystemId *string `min:"11" type:"string" required:"true"` +// String returns the string representation +func (s UpdateSvmActiveDirectoryConfiguration) String() string { + return awsutil.Prettify(s) +} - // The configuration object for Amazon FSx for Lustre file systems used in the - // UpdateFileSystem operation. - LustreConfiguration *UpdateFileSystemLustreConfiguration `type:"structure"` +// GoString returns the string representation +func (s UpdateSvmActiveDirectoryConfiguration) GoString() string { + return s.String() +} - // Use this parameter to increase the storage capacity of an Amazon FSx file - // system. Specifies the storage capacity target value, GiB, to increase the - // storage capacity for the file system that you're updating. You cannot make - // a storage capacity increase request if there is an existing storage capacity - // increase request in progress. - // - // For Windows file systems, the storage capacity target value must be at least - // 10 percent (%) greater than the current storage capacity value. In order - // to increase storage capacity, the file system must have at least 16 MB/s - // of throughput capacity. - // - // For Lustre file systems, the storage capacity target value can be the following: - // - // * For SCRATCH_2 and PERSISTENT_1 SSD deployment types, valid values are - // in multiples of 2400 GiB. The value must be greater than the current storage - // capacity. - // - // * For PERSISTENT HDD file systems, valid values are multiples of 6000 - // GiB for 12 MB/s/TiB file systems and multiples of 1800 GiB for 40 MB/s/TiB - // file systems. The values must be greater than the current storage capacity. - // - // * For SCRATCH_1 file systems, you cannot increase the storage capacity. - // - // For more information, see Managing storage capacity (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-storage-capacity.html) - // in the Amazon FSx for Windows File Server User Guide and Managing storage - // and throughput capacity (https://docs.aws.amazon.com/fsx/latest/LustreGuide/managing-storage-capacity.html) - // in the Amazon FSx for Lustre User Guide. - StorageCapacity *int64 `type:"integer"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSvmActiveDirectoryConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSvmActiveDirectoryConfiguration"} + if s.SelfManagedActiveDirectoryConfiguration != nil { + if err := s.SelfManagedActiveDirectoryConfiguration.Validate(); err != nil { + invalidParams.AddNested("SelfManagedActiveDirectoryConfiguration", err.(request.ErrInvalidParams)) + } + } - // The configuration updates for an Amazon FSx for Windows File Server file - // system. - WindowsConfiguration *UpdateFileSystemWindowsConfiguration `type:"structure"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSelfManagedActiveDirectoryConfiguration sets the SelfManagedActiveDirectoryConfiguration field's value. +func (s *UpdateSvmActiveDirectoryConfiguration) SetSelfManagedActiveDirectoryConfiguration(v *SelfManagedActiveDirectoryConfigurationUpdates) *UpdateSvmActiveDirectoryConfiguration { + s.SelfManagedActiveDirectoryConfiguration = v + return s +} + +type UpdateVolumeInput struct { + _ struct{} `type:"structure"` + + // (Optional) An idempotency token for resource creation, in a string of up + // to 64 ASCII characters. This token is automatically filled on your behalf + // when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The ONTAP configuration of the volume you are updating. + OntapConfiguration *UpdateOntapVolumeConfiguration `type:"structure"` + + // Specifies the volume that you want to update, formatted fsvol-0123456789abcdef0. + // + // VolumeId is a required field + VolumeId *string `min:"23" type:"string" required:"true"` } // String returns the string representation -func (s UpdateFileSystemInput) String() string { +func (s UpdateVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateFileSystemInput) GoString() string { +func (s UpdateVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateFileSystemInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemInput"} +func (s *UpdateVolumeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVolumeInput"} if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.FileSystemId == nil { - invalidParams.Add(request.NewErrParamRequired("FileSystemId")) - } - if s.FileSystemId != nil && len(*s.FileSystemId) < 11 { - invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11)) + if s.VolumeId == nil { + invalidParams.Add(request.NewErrParamRequired("VolumeId")) } - if s.LustreConfiguration != nil { - if err := s.LustreConfiguration.Validate(); err != nil { - invalidParams.AddNested("LustreConfiguration", err.(request.ErrInvalidParams)) - } + if s.VolumeId != nil && len(*s.VolumeId) < 23 { + invalidParams.Add(request.NewErrParamMinLen("VolumeId", 23)) } - if s.WindowsConfiguration != nil { - if err := s.WindowsConfiguration.Validate(); err != nil { - invalidParams.AddNested("WindowsConfiguration", err.(request.ErrInvalidParams)) + if s.OntapConfiguration != nil { + if err := s.OntapConfiguration.Validate(); err != nil { + invalidParams.AddNested("OntapConfiguration", err.(request.ErrInvalidParams)) } } @@ -8453,285 +12404,261 @@ func (s *UpdateFileSystemInput) Validate() error { } // SetClientRequestToken sets the ClientRequestToken field's value. -func (s *UpdateFileSystemInput) SetClientRequestToken(v string) *UpdateFileSystemInput { +func (s *UpdateVolumeInput) SetClientRequestToken(v string) *UpdateVolumeInput { s.ClientRequestToken = &v return s } -// SetFileSystemId sets the FileSystemId field's value. -func (s *UpdateFileSystemInput) SetFileSystemId(v string) *UpdateFileSystemInput { - s.FileSystemId = &v +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *UpdateVolumeInput) SetOntapConfiguration(v *UpdateOntapVolumeConfiguration) *UpdateVolumeInput { + s.OntapConfiguration = v return s } -// SetLustreConfiguration sets the LustreConfiguration field's value. -func (s *UpdateFileSystemInput) SetLustreConfiguration(v *UpdateFileSystemLustreConfiguration) *UpdateFileSystemInput { - s.LustreConfiguration = v +// SetVolumeId sets the VolumeId field's value. +func (s *UpdateVolumeInput) SetVolumeId(v string) *UpdateVolumeInput { + s.VolumeId = &v return s } -// SetStorageCapacity sets the StorageCapacity field's value. -func (s *UpdateFileSystemInput) SetStorageCapacity(v int64) *UpdateFileSystemInput { - s.StorageCapacity = &v - return s +type UpdateVolumeOutput struct { + _ struct{} `type:"structure"` + + // Returned after a successful UpdateVolume API operation, describing the volume + // just updated. + Volume *Volume `type:"structure"` } -// SetWindowsConfiguration sets the WindowsConfiguration field's value. -func (s *UpdateFileSystemInput) SetWindowsConfiguration(v *UpdateFileSystemWindowsConfiguration) *UpdateFileSystemInput { - s.WindowsConfiguration = v +// String returns the string representation +func (s UpdateVolumeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateVolumeOutput) GoString() string { + return s.String() +} + +// SetVolume sets the Volume field's value. +func (s *UpdateVolumeOutput) SetVolume(v *Volume) *UpdateVolumeOutput { + s.Volume = v return s } -// The configuration object for Amazon FSx for Lustre file systems used in the -// UpdateFileSystem operation. -type UpdateFileSystemLustreConfiguration struct { +// Describes an Amazon FSx for NetApp ONTAP volume. +type Volume struct { _ struct{} `type:"structure"` - // (Optional) When you create your file system, your existing S3 objects appear - // as file and directory listings. Use this property to choose how Amazon FSx - // keeps your file and directory listing up to date as you add or modify objects - // in your linked S3 bucket. AutoImportPolicy can have the following values: + // The time that the resource was created, in seconds (since 1970-01-01T00:00:00Z), + // also known as Unix time. + CreationTime *time.Time `type:"timestamp"` + + // The globally unique ID of the file system, assigned by Amazon FSx. + FileSystemId *string `min:"11" type:"string"` + + // The lifecycle status of the volume. // - // * NONE - (Default) AutoImport is off. Amazon FSx only updates file and - // directory listings from the linked S3 bucket when the file system is created. - // FSx does not update the file and directory listing for any new or changed - // objects after choosing this option. + // * CREATED - The volume is fully available for use. // - // * NEW - AutoImport is on. Amazon FSx automatically imports directory listings - // of any new objects added to the linked S3 bucket that do not currently - // exist in the FSx file system. + // * CREATING - Amazon FSx is creating the new volume. // - // * NEW_CHANGED - AutoImport is on. Amazon FSx automatically imports file - // and directory listings of any new objects added to the S3 bucket and any - // existing objects that are changed in the S3 bucket after you choose this - // option. + // * DELETING - Amazon FSx is deleting an existing volume. // - // For more information, see Automatically import updates from your S3 bucket - // (https://docs.aws.amazon.com/fsx/latest/LustreGuide/autoimport-data-repo.html). - AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` + // * FAILED - Amazon FSx was unable to create the volume. + // + // * MISCONFIGURED - The volume is in a failed but recoverable state. + // + // * PENDING - Amazon FSx has not started creating the volume. + Lifecycle *string `type:"string" enum:"VolumeLifecycle"` - // The number of days to retain automatic backups. Setting this to 0 disables - // automatic backups. You can retain automatic backups for a maximum of 90 days. - // The default is 0. - AutomaticBackupRetentionDays *int64 `type:"integer"` + // Describes why the volume lifecycle state changed. + LifecycleTransitionReason *LifecycleTransitionReason `type:"structure"` - // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of - // the day (0-23), and MM is the zero-padded minute of the hour. For example, - // 05:00 specifies 5 AM daily. - DailyAutomaticBackupStartTime *string `min:"5" type:"string"` + // The name of the volume. + Name *string `min:"1" type:"string"` - // Sets the data compression configuration for the file system. DataCompressionType - // can have the following values: - // - // * NONE - Data compression is turned off for the file system. - // - // * LZ4 - Data compression is turned on with the LZ4 algorithm. - // - // If you don't use DataCompressionType, the file system retains its current - // data compression configuration. - // - // For more information, see Lustre data compression (https://docs.aws.amazon.com/fsx/latest/LustreGuide/data-compression.html). - DataCompressionType *string `type:"string" enum:"DataCompressionType"` + // The configuration of an Amazon FSx for NetApp ONTAP volume + OntapConfiguration *OntapVolumeConfiguration `type:"structure"` - // (Optional) The preferred start time to perform weekly maintenance, formatted - // d:HH:MM in the UTC time zone. d is the weekday number, from 1 through 7, - // beginning with Monday and ending with Sunday. - WeeklyMaintenanceStartTime *string `min:"7" type:"string"` + // The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify + // Amazon Web Services resources. We require an ARN when you need to specify + // a resource unambiguously across all of Amazon Web Services. For more information, + // see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the Amazon Web Services General Reference. + ResourceARN *string `min:"8" type:"string"` + + // A list of Tag values, with a maximum of 50 elements. + Tags []*Tag `min:"1" type:"list"` + + // The system-generated, unique ID of the volume. + VolumeId *string `min:"23" type:"string"` + + // The type of volume; ONTAP is the only valid volume type. + VolumeType *string `type:"string" enum:"VolumeType"` } // String returns the string representation -func (s UpdateFileSystemLustreConfiguration) String() string { +func (s Volume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateFileSystemLustreConfiguration) GoString() string { +func (s Volume) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateFileSystemLustreConfiguration) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemLustreConfiguration"} - if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { - invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) - } - if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { - invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) - } +// SetCreationTime sets the CreationTime field's value. +func (s *Volume) SetCreationTime(v time.Time) *Volume { + s.CreationTime = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetFileSystemId sets the FileSystemId field's value. +func (s *Volume) SetFileSystemId(v string) *Volume { + s.FileSystemId = &v + return s } -// SetAutoImportPolicy sets the AutoImportPolicy field's value. -func (s *UpdateFileSystemLustreConfiguration) SetAutoImportPolicy(v string) *UpdateFileSystemLustreConfiguration { - s.AutoImportPolicy = &v +// SetLifecycle sets the Lifecycle field's value. +func (s *Volume) SetLifecycle(v string) *Volume { + s.Lifecycle = &v return s } -// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. -func (s *UpdateFileSystemLustreConfiguration) SetAutomaticBackupRetentionDays(v int64) *UpdateFileSystemLustreConfiguration { - s.AutomaticBackupRetentionDays = &v +// SetLifecycleTransitionReason sets the LifecycleTransitionReason field's value. +func (s *Volume) SetLifecycleTransitionReason(v *LifecycleTransitionReason) *Volume { + s.LifecycleTransitionReason = v return s } -// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. -func (s *UpdateFileSystemLustreConfiguration) SetDailyAutomaticBackupStartTime(v string) *UpdateFileSystemLustreConfiguration { - s.DailyAutomaticBackupStartTime = &v +// SetName sets the Name field's value. +func (s *Volume) SetName(v string) *Volume { + s.Name = &v return s } -// SetDataCompressionType sets the DataCompressionType field's value. -func (s *UpdateFileSystemLustreConfiguration) SetDataCompressionType(v string) *UpdateFileSystemLustreConfiguration { - s.DataCompressionType = &v +// SetOntapConfiguration sets the OntapConfiguration field's value. +func (s *Volume) SetOntapConfiguration(v *OntapVolumeConfiguration) *Volume { + s.OntapConfiguration = v return s } -// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. -func (s *UpdateFileSystemLustreConfiguration) SetWeeklyMaintenanceStartTime(v string) *UpdateFileSystemLustreConfiguration { - s.WeeklyMaintenanceStartTime = &v +// SetResourceARN sets the ResourceARN field's value. +func (s *Volume) SetResourceARN(v string) *Volume { + s.ResourceARN = &v return s } -// The response object for the UpdateFileSystem operation. -type UpdateFileSystemOutput struct { +// SetTags sets the Tags field's value. +func (s *Volume) SetTags(v []*Tag) *Volume { + s.Tags = v + return s +} + +// SetVolumeId sets the VolumeId field's value. +func (s *Volume) SetVolumeId(v string) *Volume { + s.VolumeId = &v + return s +} + +// SetVolumeType sets the VolumeType field's value. +func (s *Volume) SetVolumeType(v string) *Volume { + s.VolumeType = &v + return s +} + +// A filter used to restrict the results of describe calls for Amazon FSx for +// NetApp ONTAP volumes. You can use multiple filters to return results that +// meet all applied filter requirements. +type VolumeFilter struct { _ struct{} `type:"structure"` - // A description of the file system that was updated. - FileSystem *FileSystem `type:"structure"` + // The name for this filter. + Name *string `type:"string" enum:"VolumeFilterName"` + + // The values of the filter. These are all the values for any of the applied + // filters. + Values []*string `type:"list"` } // String returns the string representation -func (s UpdateFileSystemOutput) String() string { +func (s VolumeFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateFileSystemOutput) GoString() string { +func (s VolumeFilter) GoString() string { return s.String() } -// SetFileSystem sets the FileSystem field's value. -func (s *UpdateFileSystemOutput) SetFileSystem(v *FileSystem) *UpdateFileSystemOutput { - s.FileSystem = v +// SetName sets the Name field's value. +func (s *VolumeFilter) SetName(v string) *VolumeFilter { + s.Name = &v return s } -// Updates the configuration for an existing Amazon FSx for Windows File Server -// file system. Amazon FSx only overwrites existing properties with non-null -// values provided in the request. -type UpdateFileSystemWindowsConfiguration struct { - _ struct{} `type:"structure"` - - // The configuration that Amazon FSx for Windows File Server uses to audit and - // log user accesses of files, folders, and file shares on the Amazon FSx for - // Windows File Server file system.. - AuditLogConfiguration *WindowsAuditLogCreateConfiguration `type:"structure"` - - // The number of days to retain automatic daily backups. Setting this to zero - // (0) disables automatic daily backups. You can retain automatic daily backups - // for a maximum of 90 days. For more information, see Working with Automatic - // Daily Backups (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html#automatic-backups). - AutomaticBackupRetentionDays *int64 `type:"integer"` - - // The preferred time to start the daily automatic backup, in the UTC time zone, - // for example, 02:00 - DailyAutomaticBackupStartTime *string `min:"5" type:"string"` - - // The configuration Amazon FSx uses to join the Windows File Server instance - // to the self-managed Microsoft AD directory. You cannot make a self-managed - // Microsoft AD update request if there is an existing self-managed Microsoft - // AD update request in progress. - SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfigurationUpdates `type:"structure"` +// SetValues sets the Values field's value. +func (s *VolumeFilter) SetValues(v []*string) *VolumeFilter { + s.Values = v + return s +} - // Sets the target value for a file system's throughput capacity, in MB/s, that - // you are updating the file system to. Valid values are 8, 16, 32, 64, 128, - // 256, 512, 1024, 2048. You cannot make a throughput capacity update request - // if there is an existing throughput capacity update request in progress. For - // more information, see Managing Throughput Capacity (https://docs.aws.amazon.com/fsx/latest/WindowsGuide/managing-throughput-capacity.html). - ThroughputCapacity *int64 `min:"8" type:"integer"` +// No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied +// parameters. +type VolumeNotFound struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The preferred start time to perform weekly maintenance, formatted d:HH:MM - // in the UTC time zone. Where d is the weekday number, from 1 through 7, with - // 1 = Monday and 7 = Sunday. - WeeklyMaintenanceStartTime *string `min:"7" type:"string"` + // A detailed error message. + Message_ *string `locationName:"Message" min:"1" type:"string"` } // String returns the string representation -func (s UpdateFileSystemWindowsConfiguration) String() string { +func (s VolumeNotFound) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateFileSystemWindowsConfiguration) GoString() string { +func (s VolumeNotFound) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateFileSystemWindowsConfiguration) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemWindowsConfiguration"} - if s.DailyAutomaticBackupStartTime != nil && len(*s.DailyAutomaticBackupStartTime) < 5 { - invalidParams.Add(request.NewErrParamMinLen("DailyAutomaticBackupStartTime", 5)) - } - if s.ThroughputCapacity != nil && *s.ThroughputCapacity < 8 { - invalidParams.Add(request.NewErrParamMinValue("ThroughputCapacity", 8)) - } - if s.WeeklyMaintenanceStartTime != nil && len(*s.WeeklyMaintenanceStartTime) < 7 { - invalidParams.Add(request.NewErrParamMinLen("WeeklyMaintenanceStartTime", 7)) - } - if s.AuditLogConfiguration != nil { - if err := s.AuditLogConfiguration.Validate(); err != nil { - invalidParams.AddNested("AuditLogConfiguration", err.(request.ErrInvalidParams)) - } - } - if s.SelfManagedActiveDirectoryConfiguration != nil { - if err := s.SelfManagedActiveDirectoryConfiguration.Validate(); err != nil { - invalidParams.AddNested("SelfManagedActiveDirectoryConfiguration", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams +func newErrorVolumeNotFound(v protocol.ResponseMetadata) error { + return &VolumeNotFound{ + RespMetadata: v, } - return nil } -// SetAuditLogConfiguration sets the AuditLogConfiguration field's value. -func (s *UpdateFileSystemWindowsConfiguration) SetAuditLogConfiguration(v *WindowsAuditLogCreateConfiguration) *UpdateFileSystemWindowsConfiguration { - s.AuditLogConfiguration = v - return s +// Code returns the exception type name. +func (s *VolumeNotFound) Code() string { + return "VolumeNotFound" } -// SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. -func (s *UpdateFileSystemWindowsConfiguration) SetAutomaticBackupRetentionDays(v int64) *UpdateFileSystemWindowsConfiguration { - s.AutomaticBackupRetentionDays = &v - return s +// Message returns the exception's message. +func (s *VolumeNotFound) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetDailyAutomaticBackupStartTime sets the DailyAutomaticBackupStartTime field's value. -func (s *UpdateFileSystemWindowsConfiguration) SetDailyAutomaticBackupStartTime(v string) *UpdateFileSystemWindowsConfiguration { - s.DailyAutomaticBackupStartTime = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *VolumeNotFound) OrigErr() error { + return nil } -// SetSelfManagedActiveDirectoryConfiguration sets the SelfManagedActiveDirectoryConfiguration field's value. -func (s *UpdateFileSystemWindowsConfiguration) SetSelfManagedActiveDirectoryConfiguration(v *SelfManagedActiveDirectoryConfigurationUpdates) *UpdateFileSystemWindowsConfiguration { - s.SelfManagedActiveDirectoryConfiguration = v - return s +func (s *VolumeNotFound) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetThroughputCapacity sets the ThroughputCapacity field's value. -func (s *UpdateFileSystemWindowsConfiguration) SetThroughputCapacity(v int64) *UpdateFileSystemWindowsConfiguration { - s.ThroughputCapacity = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *VolumeNotFound) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetWeeklyMaintenanceStartTime sets the WeeklyMaintenanceStartTime field's value. -func (s *UpdateFileSystemWindowsConfiguration) SetWeeklyMaintenanceStartTime(v string) *UpdateFileSystemWindowsConfiguration { - s.WeeklyMaintenanceStartTime = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *VolumeNotFound) RequestID() string { + return s.RespMetadata.RequestID } // The configuration that Amazon FSx for Windows File Server uses to audit and @@ -8750,8 +12677,9 @@ type WindowsAuditLogConfiguration struct { // begin with the aws-fsx prefix. // // The destination ARN (either CloudWatch Logs log group or Kinesis Data Firehose - // delivery stream) must be in the same AWS partition, AWS region, and AWS account - // as your Amazon FSx file system. + // delivery stream) must be in the same Amazon Web Services partition, Amazon + // Web Services Region, and Amazon Web Services account as your Amazon FSx file + // system. AuditLogDestination *string `min:"8" type:"string"` // Sets which attempt type is logged by Amazon FSx for file and folder accesses. @@ -8824,8 +12752,9 @@ type WindowsAuditLogCreateConfiguration struct { // Kinesis Data Firehose delivery stream ARN, with the following requirements: // // * The destination ARN that you provide (either CloudWatch Logs log group - // or Kinesis Data Firehose delivery stream) must be in the same AWS partition, - // AWS region, and AWS account as your Amazon FSx file system. + // or Kinesis Data Firehose delivery stream) must be in the same Amazon Web + // Services partition, Amazon Web Services Region, and Amazon Web Services + // account as your Amazon FSx file system. // // * The name of the Amazon CloudWatch Logs log group must begin with the // /aws/fsx prefix. The name of the Amazon Kinesis Data Firehouse delivery @@ -8923,8 +12852,8 @@ func (s *WindowsAuditLogCreateConfiguration) SetFileShareAccessAuditLogLevel(v s type WindowsFileSystemConfiguration struct { _ struct{} `type:"structure"` - // The ID for an existing AWS Managed Microsoft Active Directory instance that - // the file system is joined to. + // The ID for an existing Amazon Web Services Managed Microsoft Active Directory + // instance that the file system is joined to. ActiveDirectoryId *string `min:"12" type:"string"` // An array of one or more DNS aliases that are currently associated with the @@ -9011,7 +12940,8 @@ type WindowsFileSystemConfiguration struct { RemoteAdministrationEndpoint *string `min:"16" type:"string"` // The configuration of the self-managed Microsoft Active Directory (AD) directory - // to which the Windows File Server instance is joined. + // to which the Windows File Server or ONTAP storage virtual machine (SVM) instance + // is joined. SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryAttributes `type:"structure"` // The throughput of the Amazon FSx file system, measured in megabytes per second. @@ -9421,6 +13351,22 @@ func DataRepositoryTaskType_Values() []string { } } +const ( + // DiskIopsConfigurationModeAutomatic is a DiskIopsConfigurationMode enum value + DiskIopsConfigurationModeAutomatic = "AUTOMATIC" + + // DiskIopsConfigurationModeUserProvisioned is a DiskIopsConfigurationMode enum value + DiskIopsConfigurationModeUserProvisioned = "USER_PROVISIONED" +) + +// DiskIopsConfigurationMode_Values returns all elements of the DiskIopsConfigurationMode enum +func DiskIopsConfigurationMode_Values() []string { + return []string{ + DiskIopsConfigurationModeAutomatic, + DiskIopsConfigurationModeUserProvisioned, + } +} + const ( // DriveCacheTypeNone is a DriveCacheType enum value DriveCacheTypeNone = "NONE" @@ -9494,6 +13440,9 @@ const ( // FileSystemTypeLustre is a FileSystemType enum value FileSystemTypeLustre = "LUSTRE" + + // FileSystemTypeOntap is a FileSystemType enum value + FileSystemTypeOntap = "ONTAP" ) // FileSystemType_Values returns all elements of the FileSystemType enum @@ -9501,6 +13450,7 @@ func FileSystemType_Values() []string { return []string{ FileSystemTypeWindows, FileSystemTypeLustre, + FileSystemTypeOntap, } } @@ -9514,6 +13464,9 @@ const ( // FilterNameFileSystemType is a FilterName enum value FilterNameFileSystemType = "file-system-type" + + // FilterNameVolumeId is a FilterName enum value + FilterNameVolumeId = "volume-id" ) // FilterName_Values returns all elements of the FilterName enum @@ -9522,6 +13475,27 @@ func FilterName_Values() []string { FilterNameFileSystemId, FilterNameBackupType, FilterNameFileSystemType, + FilterNameVolumeId, + } +} + +const ( + // FlexCacheEndpointTypeNone is a FlexCacheEndpointType enum value + FlexCacheEndpointTypeNone = "NONE" + + // FlexCacheEndpointTypeOrigin is a FlexCacheEndpointType enum value + FlexCacheEndpointTypeOrigin = "ORIGIN" + + // FlexCacheEndpointTypeCache is a FlexCacheEndpointType enum value + FlexCacheEndpointTypeCache = "CACHE" +) + +// FlexCacheEndpointType_Values returns all elements of the FlexCacheEndpointType enum +func FlexCacheEndpointType_Values() []string { + return []string{ + FlexCacheEndpointTypeNone, + FlexCacheEndpointTypeOrigin, + FlexCacheEndpointTypeCache, } } @@ -9545,6 +13519,38 @@ func LustreDeploymentType_Values() []string { } } +const ( + // OntapDeploymentTypeMultiAz1 is a OntapDeploymentType enum value + OntapDeploymentTypeMultiAz1 = "MULTI_AZ_1" +) + +// OntapDeploymentType_Values returns all elements of the OntapDeploymentType enum +func OntapDeploymentType_Values() []string { + return []string{ + OntapDeploymentTypeMultiAz1, + } +} + +const ( + // OntapVolumeTypeRw is a OntapVolumeType enum value + OntapVolumeTypeRw = "RW" + + // OntapVolumeTypeDp is a OntapVolumeType enum value + OntapVolumeTypeDp = "DP" + + // OntapVolumeTypeLs is a OntapVolumeType enum value + OntapVolumeTypeLs = "LS" +) + +// OntapVolumeType_Values returns all elements of the OntapVolumeType enum +func OntapVolumeType_Values() []string { + return []string{ + OntapVolumeTypeRw, + OntapVolumeTypeDp, + OntapVolumeTypeLs, + } +} + const ( // ReportFormatReportCsv20191124 is a ReportFormat enum value ReportFormatReportCsv20191124 = "REPORT_CSV_20191124" @@ -9569,10 +13575,47 @@ func ReportScope_Values() []string { } } +const ( + // ResourceTypeFileSystem is a ResourceType enum value + ResourceTypeFileSystem = "FILE_SYSTEM" + + // ResourceTypeVolume is a ResourceType enum value + ResourceTypeVolume = "VOLUME" +) + +// ResourceType_Values returns all elements of the ResourceType enum +func ResourceType_Values() []string { + return []string{ + ResourceTypeFileSystem, + ResourceTypeVolume, + } +} + +const ( + // SecurityStyleUnix is a SecurityStyle enum value + SecurityStyleUnix = "UNIX" + + // SecurityStyleNtfs is a SecurityStyle enum value + SecurityStyleNtfs = "NTFS" + + // SecurityStyleMixed is a SecurityStyle enum value + SecurityStyleMixed = "MIXED" +) + +// SecurityStyle_Values returns all elements of the SecurityStyle enum +func SecurityStyle_Values() []string { + return []string{ + SecurityStyleUnix, + SecurityStyleNtfs, + SecurityStyleMixed, + } +} + // The types of limits on your service utilization. Limits include file system // count, total throughput capacity, total storage, and total user-initiated -// backups. These limits apply for a specific account in a specific AWS Region. -// You can increase some of them by contacting AWS Support. +// backups. These limits apply for a specific account in a specific Amazon Web +// Services Region. You can increase some of them by contacting Amazon Web Services +// Support. const ( // ServiceLimitFileSystemCount is a ServiceLimit enum value ServiceLimitFileSystemCount = "FILE_SYSTEM_COUNT" @@ -9591,6 +13634,15 @@ const ( // ServiceLimitTotalInProgressCopyBackups is a ServiceLimit enum value ServiceLimitTotalInProgressCopyBackups = "TOTAL_IN_PROGRESS_COPY_BACKUPS" + + // ServiceLimitStorageVirtualMachinesPerFileSystem is a ServiceLimit enum value + ServiceLimitStorageVirtualMachinesPerFileSystem = "STORAGE_VIRTUAL_MACHINES_PER_FILE_SYSTEM" + + // ServiceLimitVolumesPerFileSystem is a ServiceLimit enum value + ServiceLimitVolumesPerFileSystem = "VOLUMES_PER_FILE_SYSTEM" + + // ServiceLimitTotalSsdIops is a ServiceLimit enum value + ServiceLimitTotalSsdIops = "TOTAL_SSD_IOPS" ) // ServiceLimit_Values returns all elements of the ServiceLimit enum @@ -9602,6 +13654,9 @@ func ServiceLimit_Values() []string { ServiceLimitTotalUserInitiatedBackups, ServiceLimitTotalUserTags, ServiceLimitTotalInProgressCopyBackups, + ServiceLimitStorageVirtualMachinesPerFileSystem, + ServiceLimitVolumesPerFileSystem, + ServiceLimitTotalSsdIops, } } @@ -9650,6 +13705,178 @@ func StorageType_Values() []string { } } +const ( + // StorageVirtualMachineFilterNameFileSystemId is a StorageVirtualMachineFilterName enum value + StorageVirtualMachineFilterNameFileSystemId = "file-system-id" +) + +// StorageVirtualMachineFilterName_Values returns all elements of the StorageVirtualMachineFilterName enum +func StorageVirtualMachineFilterName_Values() []string { + return []string{ + StorageVirtualMachineFilterNameFileSystemId, + } +} + +const ( + // StorageVirtualMachineLifecycleCreated is a StorageVirtualMachineLifecycle enum value + StorageVirtualMachineLifecycleCreated = "CREATED" + + // StorageVirtualMachineLifecycleCreating is a StorageVirtualMachineLifecycle enum value + StorageVirtualMachineLifecycleCreating = "CREATING" + + // StorageVirtualMachineLifecycleDeleting is a StorageVirtualMachineLifecycle enum value + StorageVirtualMachineLifecycleDeleting = "DELETING" + + // StorageVirtualMachineLifecycleFailed is a StorageVirtualMachineLifecycle enum value + StorageVirtualMachineLifecycleFailed = "FAILED" + + // StorageVirtualMachineLifecycleMisconfigured is a StorageVirtualMachineLifecycle enum value + StorageVirtualMachineLifecycleMisconfigured = "MISCONFIGURED" + + // StorageVirtualMachineLifecyclePending is a StorageVirtualMachineLifecycle enum value + StorageVirtualMachineLifecyclePending = "PENDING" +) + +// StorageVirtualMachineLifecycle_Values returns all elements of the StorageVirtualMachineLifecycle enum +func StorageVirtualMachineLifecycle_Values() []string { + return []string{ + StorageVirtualMachineLifecycleCreated, + StorageVirtualMachineLifecycleCreating, + StorageVirtualMachineLifecycleDeleting, + StorageVirtualMachineLifecycleFailed, + StorageVirtualMachineLifecycleMisconfigured, + StorageVirtualMachineLifecyclePending, + } +} + +const ( + // StorageVirtualMachineRootVolumeSecurityStyleUnix is a StorageVirtualMachineRootVolumeSecurityStyle enum value + StorageVirtualMachineRootVolumeSecurityStyleUnix = "UNIX" + + // StorageVirtualMachineRootVolumeSecurityStyleNtfs is a StorageVirtualMachineRootVolumeSecurityStyle enum value + StorageVirtualMachineRootVolumeSecurityStyleNtfs = "NTFS" + + // StorageVirtualMachineRootVolumeSecurityStyleMixed is a StorageVirtualMachineRootVolumeSecurityStyle enum value + StorageVirtualMachineRootVolumeSecurityStyleMixed = "MIXED" +) + +// StorageVirtualMachineRootVolumeSecurityStyle_Values returns all elements of the StorageVirtualMachineRootVolumeSecurityStyle enum +func StorageVirtualMachineRootVolumeSecurityStyle_Values() []string { + return []string{ + StorageVirtualMachineRootVolumeSecurityStyleUnix, + StorageVirtualMachineRootVolumeSecurityStyleNtfs, + StorageVirtualMachineRootVolumeSecurityStyleMixed, + } +} + +const ( + // StorageVirtualMachineSubtypeDefault is a StorageVirtualMachineSubtype enum value + StorageVirtualMachineSubtypeDefault = "DEFAULT" + + // StorageVirtualMachineSubtypeDpDestination is a StorageVirtualMachineSubtype enum value + StorageVirtualMachineSubtypeDpDestination = "DP_DESTINATION" + + // StorageVirtualMachineSubtypeSyncDestination is a StorageVirtualMachineSubtype enum value + StorageVirtualMachineSubtypeSyncDestination = "SYNC_DESTINATION" + + // StorageVirtualMachineSubtypeSyncSource is a StorageVirtualMachineSubtype enum value + StorageVirtualMachineSubtypeSyncSource = "SYNC_SOURCE" +) + +// StorageVirtualMachineSubtype_Values returns all elements of the StorageVirtualMachineSubtype enum +func StorageVirtualMachineSubtype_Values() []string { + return []string{ + StorageVirtualMachineSubtypeDefault, + StorageVirtualMachineSubtypeDpDestination, + StorageVirtualMachineSubtypeSyncDestination, + StorageVirtualMachineSubtypeSyncSource, + } +} + +const ( + // TieringPolicyNameSnapshotOnly is a TieringPolicyName enum value + TieringPolicyNameSnapshotOnly = "SNAPSHOT_ONLY" + + // TieringPolicyNameAuto is a TieringPolicyName enum value + TieringPolicyNameAuto = "AUTO" + + // TieringPolicyNameAll is a TieringPolicyName enum value + TieringPolicyNameAll = "ALL" + + // TieringPolicyNameNone is a TieringPolicyName enum value + TieringPolicyNameNone = "NONE" +) + +// TieringPolicyName_Values returns all elements of the TieringPolicyName enum +func TieringPolicyName_Values() []string { + return []string{ + TieringPolicyNameSnapshotOnly, + TieringPolicyNameAuto, + TieringPolicyNameAll, + TieringPolicyNameNone, + } +} + +const ( + // VolumeFilterNameFileSystemId is a VolumeFilterName enum value + VolumeFilterNameFileSystemId = "file-system-id" + + // VolumeFilterNameStorageVirtualMachineId is a VolumeFilterName enum value + VolumeFilterNameStorageVirtualMachineId = "storage-virtual-machine-id" +) + +// VolumeFilterName_Values returns all elements of the VolumeFilterName enum +func VolumeFilterName_Values() []string { + return []string{ + VolumeFilterNameFileSystemId, + VolumeFilterNameStorageVirtualMachineId, + } +} + +const ( + // VolumeLifecycleCreating is a VolumeLifecycle enum value + VolumeLifecycleCreating = "CREATING" + + // VolumeLifecycleCreated is a VolumeLifecycle enum value + VolumeLifecycleCreated = "CREATED" + + // VolumeLifecycleDeleting is a VolumeLifecycle enum value + VolumeLifecycleDeleting = "DELETING" + + // VolumeLifecycleFailed is a VolumeLifecycle enum value + VolumeLifecycleFailed = "FAILED" + + // VolumeLifecycleMisconfigured is a VolumeLifecycle enum value + VolumeLifecycleMisconfigured = "MISCONFIGURED" + + // VolumeLifecyclePending is a VolumeLifecycle enum value + VolumeLifecyclePending = "PENDING" +) + +// VolumeLifecycle_Values returns all elements of the VolumeLifecycle enum +func VolumeLifecycle_Values() []string { + return []string{ + VolumeLifecycleCreating, + VolumeLifecycleCreated, + VolumeLifecycleDeleting, + VolumeLifecycleFailed, + VolumeLifecycleMisconfigured, + VolumeLifecyclePending, + } +} + +const ( + // VolumeTypeOntap is a VolumeType enum value + VolumeTypeOntap = "ONTAP" +) + +// VolumeType_Values returns all elements of the VolumeType enum +func VolumeType_Values() []string { + return []string{ + VolumeTypeOntap, + } +} + const ( // WindowsAccessAuditLogLevelDisabled is a WindowsAccessAuditLogLevel enum value WindowsAccessAuditLogLevelDisabled = "DISABLED" diff --git a/service/fsx/errors.go b/service/fsx/errors.go index 3467dcaf26e..814fc8dcd36 100644 --- a/service/fsx/errors.go +++ b/service/fsx/errors.go @@ -95,8 +95,7 @@ const ( // ErrCodeInvalidDestinationKmsKey for service response error code // "InvalidDestinationKmsKey". // - // The AWS Key Management Service (AWS KMS) key of the destination backup is - // invalid. + // The Key Management Service (KMS) key of the destination backup is invalid. ErrCodeInvalidDestinationKmsKey = "InvalidDestinationKmsKey" // ErrCodeInvalidExportPath for service response error code @@ -114,12 +113,7 @@ const ( // ErrCodeInvalidNetworkSettings for service response error code // "InvalidNetworkSettings". // - // One or more network settings specified in the request are invalid. InvalidVpcId - // means that the ID passed for the virtual private cloud (VPC) is invalid. - // InvalidSubnetIds returns the list of IDs for subnets that are either invalid - // or not part of the VPC specified. InvalidSecurityGroupIds returns the list - // of IDs for security groups that are either invalid or not part of the VPC - // specified. + // One or more network settings specified in the request are invalid. ErrCodeInvalidNetworkSettings = "InvalidNetworkSettings" // ErrCodeInvalidPerUnitStorageThroughput for service response error code @@ -132,14 +126,14 @@ const ( // ErrCodeInvalidRegion for service response error code // "InvalidRegion". // - // The Region provided for Source Region is invalid or is in a different AWS - // partition. + // The Region provided for Source Region is invalid or is in a different Amazon + // Web Services partition. ErrCodeInvalidRegion = "InvalidRegion" // ErrCodeInvalidSourceKmsKey for service response error code // "InvalidSourceKmsKey". // - // The AWS Key Management Service (AWS KMS) key of the source backup is invalid. + // The Key Management Service (KMS) key of the source backup is invalid. ErrCodeInvalidSourceKmsKey = "InvalidSourceKmsKey" // ErrCodeMissingFileSystemConfiguration for service response error code @@ -148,6 +142,12 @@ const ( // A file system configuration is required for this operation. ErrCodeMissingFileSystemConfiguration = "MissingFileSystemConfiguration" + // ErrCodeMissingVolumeConfiguration for service response error code + // "MissingVolumeConfiguration". + // + // A volume configuration is required for this operation. + ErrCodeMissingVolumeConfiguration = "MissingVolumeConfiguration" + // ErrCodeNotServiceResourceError for service response error code // "NotServiceResourceError". // @@ -171,7 +171,7 @@ const ( // "ServiceLimitExceeded". // // An error indicating that a particular service limit was exceeded. You can - // increase some service limits by contacting AWS Support. + // increase some service limits by contacting Amazon Web Services Support. ErrCodeServiceLimitExceeded = "ServiceLimitExceeded" // ErrCodeSourceBackupUnavailable for service response error code @@ -181,11 +181,24 @@ const ( // is not AVAILABLE. ErrCodeSourceBackupUnavailable = "SourceBackupUnavailable" + // ErrCodeStorageVirtualMachineNotFound for service response error code + // "StorageVirtualMachineNotFound". + // + // No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters. + ErrCodeStorageVirtualMachineNotFound = "StorageVirtualMachineNotFound" + // ErrCodeUnsupportedOperation for service response error code // "UnsupportedOperation". // // The requested operation is not supported for this resource or API. ErrCodeUnsupportedOperation = "UnsupportedOperation" + + // ErrCodeVolumeNotFound for service response error code + // "VolumeNotFound". + // + // No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied + // parameters. + ErrCodeVolumeNotFound = "VolumeNotFound" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ @@ -210,10 +223,13 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "InvalidRegion": newErrorInvalidRegion, "InvalidSourceKmsKey": newErrorInvalidSourceKmsKey, "MissingFileSystemConfiguration": newErrorMissingFileSystemConfiguration, + "MissingVolumeConfiguration": newErrorMissingVolumeConfiguration, "NotServiceResourceError": newErrorNotServiceResourceError, "ResourceDoesNotSupportTagging": newErrorResourceDoesNotSupportTagging, "ResourceNotFound": newErrorResourceNotFound, "ServiceLimitExceeded": newErrorServiceLimitExceeded, "SourceBackupUnavailable": newErrorSourceBackupUnavailable, + "StorageVirtualMachineNotFound": newErrorStorageVirtualMachineNotFound, "UnsupportedOperation": newErrorUnsupportedOperation, + "VolumeNotFound": newErrorVolumeNotFound, } diff --git a/service/fsx/examples_test.go b/service/fsx/examples_test.go index 0aaf4679708..74db3def8a4 100644 --- a/service/fsx/examples_test.go +++ b/service/fsx/examples_test.go @@ -100,6 +100,8 @@ func ExampleFSx_CreateBackup_shared00() { fmt.Println(fsx.ErrCodeUnsupportedOperation, aerr.Error()) case fsx.ErrCodeFileSystemNotFound: fmt.Println(fsx.ErrCodeFileSystemNotFound, aerr.Error()) + case fsx.ErrCodeVolumeNotFound: + fmt.Println(fsx.ErrCodeVolumeNotFound, aerr.Error()) case fsx.ErrCodeBackupInProgress: fmt.Println(fsx.ErrCodeBackupInProgress, aerr.Error()) case fsx.ErrCodeIncompatibleParameterError: @@ -349,6 +351,8 @@ func ExampleFSx_DescribeBackups_shared00() { fmt.Println(fsx.ErrCodeBadRequest, aerr.Error()) case fsx.ErrCodeFileSystemNotFound: fmt.Println(fsx.ErrCodeFileSystemNotFound, aerr.Error()) + case fsx.ErrCodeVolumeNotFound: + fmt.Println(fsx.ErrCodeVolumeNotFound, aerr.Error()) case fsx.ErrCodeBackupNotFound: fmt.Println(fsx.ErrCodeBackupNotFound, aerr.Error()) case fsx.ErrCodeInternalServerError: diff --git a/service/fsx/fsxiface/interface.go b/service/fsx/fsxiface/interface.go index c1a547824b5..d48f100f447 100644 --- a/service/fsx/fsxiface/interface.go +++ b/service/fsx/fsxiface/interface.go @@ -88,6 +88,18 @@ type FSxAPI interface { CreateFileSystemFromBackupWithContext(aws.Context, *fsx.CreateFileSystemFromBackupInput, ...request.Option) (*fsx.CreateFileSystemFromBackupOutput, error) CreateFileSystemFromBackupRequest(*fsx.CreateFileSystemFromBackupInput) (*request.Request, *fsx.CreateFileSystemFromBackupOutput) + CreateStorageVirtualMachine(*fsx.CreateStorageVirtualMachineInput) (*fsx.CreateStorageVirtualMachineOutput, error) + CreateStorageVirtualMachineWithContext(aws.Context, *fsx.CreateStorageVirtualMachineInput, ...request.Option) (*fsx.CreateStorageVirtualMachineOutput, error) + CreateStorageVirtualMachineRequest(*fsx.CreateStorageVirtualMachineInput) (*request.Request, *fsx.CreateStorageVirtualMachineOutput) + + CreateVolume(*fsx.CreateVolumeInput) (*fsx.CreateVolumeOutput, error) + CreateVolumeWithContext(aws.Context, *fsx.CreateVolumeInput, ...request.Option) (*fsx.CreateVolumeOutput, error) + CreateVolumeRequest(*fsx.CreateVolumeInput) (*request.Request, *fsx.CreateVolumeOutput) + + CreateVolumeFromBackup(*fsx.CreateVolumeFromBackupInput) (*fsx.CreateVolumeFromBackupOutput, error) + CreateVolumeFromBackupWithContext(aws.Context, *fsx.CreateVolumeFromBackupInput, ...request.Option) (*fsx.CreateVolumeFromBackupOutput, error) + CreateVolumeFromBackupRequest(*fsx.CreateVolumeFromBackupInput) (*request.Request, *fsx.CreateVolumeFromBackupOutput) + DeleteBackup(*fsx.DeleteBackupInput) (*fsx.DeleteBackupOutput, error) DeleteBackupWithContext(aws.Context, *fsx.DeleteBackupInput, ...request.Option) (*fsx.DeleteBackupOutput, error) DeleteBackupRequest(*fsx.DeleteBackupInput) (*request.Request, *fsx.DeleteBackupOutput) @@ -96,6 +108,14 @@ type FSxAPI interface { DeleteFileSystemWithContext(aws.Context, *fsx.DeleteFileSystemInput, ...request.Option) (*fsx.DeleteFileSystemOutput, error) DeleteFileSystemRequest(*fsx.DeleteFileSystemInput) (*request.Request, *fsx.DeleteFileSystemOutput) + DeleteStorageVirtualMachine(*fsx.DeleteStorageVirtualMachineInput) (*fsx.DeleteStorageVirtualMachineOutput, error) + DeleteStorageVirtualMachineWithContext(aws.Context, *fsx.DeleteStorageVirtualMachineInput, ...request.Option) (*fsx.DeleteStorageVirtualMachineOutput, error) + DeleteStorageVirtualMachineRequest(*fsx.DeleteStorageVirtualMachineInput) (*request.Request, *fsx.DeleteStorageVirtualMachineOutput) + + DeleteVolume(*fsx.DeleteVolumeInput) (*fsx.DeleteVolumeOutput, error) + DeleteVolumeWithContext(aws.Context, *fsx.DeleteVolumeInput, ...request.Option) (*fsx.DeleteVolumeOutput, error) + DeleteVolumeRequest(*fsx.DeleteVolumeInput) (*request.Request, *fsx.DeleteVolumeOutput) + DescribeBackups(*fsx.DescribeBackupsInput) (*fsx.DescribeBackupsOutput, error) DescribeBackupsWithContext(aws.Context, *fsx.DescribeBackupsInput, ...request.Option) (*fsx.DescribeBackupsOutput, error) DescribeBackupsRequest(*fsx.DescribeBackupsInput) (*request.Request, *fsx.DescribeBackupsOutput) @@ -124,6 +144,20 @@ type FSxAPI interface { DescribeFileSystemsPages(*fsx.DescribeFileSystemsInput, func(*fsx.DescribeFileSystemsOutput, bool) bool) error DescribeFileSystemsPagesWithContext(aws.Context, *fsx.DescribeFileSystemsInput, func(*fsx.DescribeFileSystemsOutput, bool) bool, ...request.Option) error + DescribeStorageVirtualMachines(*fsx.DescribeStorageVirtualMachinesInput) (*fsx.DescribeStorageVirtualMachinesOutput, error) + DescribeStorageVirtualMachinesWithContext(aws.Context, *fsx.DescribeStorageVirtualMachinesInput, ...request.Option) (*fsx.DescribeStorageVirtualMachinesOutput, error) + DescribeStorageVirtualMachinesRequest(*fsx.DescribeStorageVirtualMachinesInput) (*request.Request, *fsx.DescribeStorageVirtualMachinesOutput) + + DescribeStorageVirtualMachinesPages(*fsx.DescribeStorageVirtualMachinesInput, func(*fsx.DescribeStorageVirtualMachinesOutput, bool) bool) error + DescribeStorageVirtualMachinesPagesWithContext(aws.Context, *fsx.DescribeStorageVirtualMachinesInput, func(*fsx.DescribeStorageVirtualMachinesOutput, bool) bool, ...request.Option) error + + DescribeVolumes(*fsx.DescribeVolumesInput) (*fsx.DescribeVolumesOutput, error) + DescribeVolumesWithContext(aws.Context, *fsx.DescribeVolumesInput, ...request.Option) (*fsx.DescribeVolumesOutput, error) + DescribeVolumesRequest(*fsx.DescribeVolumesInput) (*request.Request, *fsx.DescribeVolumesOutput) + + DescribeVolumesPages(*fsx.DescribeVolumesInput, func(*fsx.DescribeVolumesOutput, bool) bool) error + DescribeVolumesPagesWithContext(aws.Context, *fsx.DescribeVolumesInput, func(*fsx.DescribeVolumesOutput, bool) bool, ...request.Option) error + DisassociateFileSystemAliases(*fsx.DisassociateFileSystemAliasesInput) (*fsx.DisassociateFileSystemAliasesOutput, error) DisassociateFileSystemAliasesWithContext(aws.Context, *fsx.DisassociateFileSystemAliasesInput, ...request.Option) (*fsx.DisassociateFileSystemAliasesOutput, error) DisassociateFileSystemAliasesRequest(*fsx.DisassociateFileSystemAliasesInput) (*request.Request, *fsx.DisassociateFileSystemAliasesOutput) @@ -132,6 +166,9 @@ type FSxAPI interface { ListTagsForResourceWithContext(aws.Context, *fsx.ListTagsForResourceInput, ...request.Option) (*fsx.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*fsx.ListTagsForResourceInput) (*request.Request, *fsx.ListTagsForResourceOutput) + ListTagsForResourcePages(*fsx.ListTagsForResourceInput, func(*fsx.ListTagsForResourceOutput, bool) bool) error + ListTagsForResourcePagesWithContext(aws.Context, *fsx.ListTagsForResourceInput, func(*fsx.ListTagsForResourceOutput, bool) bool, ...request.Option) error + TagResource(*fsx.TagResourceInput) (*fsx.TagResourceOutput, error) TagResourceWithContext(aws.Context, *fsx.TagResourceInput, ...request.Option) (*fsx.TagResourceOutput, error) TagResourceRequest(*fsx.TagResourceInput) (*request.Request, *fsx.TagResourceOutput) @@ -143,6 +180,14 @@ type FSxAPI interface { UpdateFileSystem(*fsx.UpdateFileSystemInput) (*fsx.UpdateFileSystemOutput, error) UpdateFileSystemWithContext(aws.Context, *fsx.UpdateFileSystemInput, ...request.Option) (*fsx.UpdateFileSystemOutput, error) UpdateFileSystemRequest(*fsx.UpdateFileSystemInput) (*request.Request, *fsx.UpdateFileSystemOutput) + + UpdateStorageVirtualMachine(*fsx.UpdateStorageVirtualMachineInput) (*fsx.UpdateStorageVirtualMachineOutput, error) + UpdateStorageVirtualMachineWithContext(aws.Context, *fsx.UpdateStorageVirtualMachineInput, ...request.Option) (*fsx.UpdateStorageVirtualMachineOutput, error) + UpdateStorageVirtualMachineRequest(*fsx.UpdateStorageVirtualMachineInput) (*request.Request, *fsx.UpdateStorageVirtualMachineOutput) + + UpdateVolume(*fsx.UpdateVolumeInput) (*fsx.UpdateVolumeOutput, error) + UpdateVolumeWithContext(aws.Context, *fsx.UpdateVolumeInput, ...request.Option) (*fsx.UpdateVolumeOutput, error) + UpdateVolumeRequest(*fsx.UpdateVolumeInput) (*request.Request, *fsx.UpdateVolumeOutput) } var _ FSxAPI = (*fsx.FSx)(nil) diff --git a/service/lexmodelbuildingservice/api.go b/service/lexmodelbuildingservice/api.go index 293ca22348a..3d539acc263 100644 --- a/service/lexmodelbuildingservice/api.go +++ b/service/lexmodelbuildingservice/api.go @@ -14153,6 +14153,9 @@ const ( // LocaleJaJp is a Locale enum value LocaleJaJp = "ja-JP" + + // LocaleKoKr is a Locale enum value + LocaleKoKr = "ko-KR" ) // Locale_Values returns all elements of the Locale enum @@ -14170,6 +14173,7 @@ func Locale_Values() []string { LocaleFrCa, LocaleItIt, LocaleJaJp, + LocaleKoKr, } } diff --git a/service/quicksight/api.go b/service/quicksight/api.go index a94e2909c5b..daa78b335c6 100644 --- a/service/quicksight/api.go +++ b/service/quicksight/api.go @@ -156,15 +156,15 @@ func (c *QuickSight) CreateAccountCustomizationRequest(input *CreateAccountCusto // // Creates Amazon QuickSight customizations the current Amazon Web Services // Region;. Currently, you can add a custom default theme by using the CreateAccountCustomization -// or UpdateAccountCustomization API operation. To further customize QuickSight -// by removing QuickSight sample assets and videos for all new users, see Customizing -// QuickSight (https://docs.aws.amazon.com/quicksight/latest/user/customizing-quicksight.html) +// or UpdateAccountCustomization API operation. To further customize Amazon +// QuickSight by removing Amazon QuickSight sample assets and videos for all +// new users, see Customizing Amazon QuickSight (https://docs.aws.amazon.com/quicksight/latest/user/customizing-quicksight.html) // in the Amazon QuickSight User Guide. // -// You can create customizations for your Amazon Web Services account; or, if -// you specify a namespace, for a QuickSight namespace instead. Customizations +// You can create customizations for your Amazon Web Services account or, if +// you specify a namespace, for a Amazon QuickSight namespace instead. Customizations // that apply to a namespace always override customizations that apply to an -// Amazon Web Services account;. To find out which customizations apply, use +// Amazon Web Services account. To find out which customizations apply, use // the DescribeAccountCustomization API operation. // // Before you use the CreateAccountCustomization API operation to add a theme @@ -302,7 +302,7 @@ func (c *QuickSight) CreateAnalysisRequest(input *CreateAnalysisInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -377,11 +377,11 @@ func (c *QuickSight) CreateDashboardRequest(input *CreateDashboardInput) (req *r // Creates a dashboard from a template. To first create a template, see the // CreateTemplate API operation. // -// A dashboard is an entity in QuickSight that identifies QuickSight reports, -// created from analyses. You can share QuickSight dashboards. With the right -// permissions, you can create scheduled email reports from them. If you have -// the correct permissions, you can create a dashboard from a template that -// exists in a different Amazon Web Services account;. +// A dashboard is an entity in Amazon QuickSight that identifies Amazon QuickSight +// reports, created from analyses. You can share Amazon QuickSight dashboards. +// With the right permissions, you can create scheduled email reports from them. +// If you have the correct permissions, you can create a dashboard from a template +// that exists in a different Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -409,7 +409,7 @@ func (c *QuickSight) CreateDashboardRequest(input *CreateDashboardInput) (req *r // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -519,7 +519,7 @@ func (c *QuickSight) CreateDataSetRequest(input *CreateDataSetInput) (req *reque // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -723,7 +723,7 @@ func (c *QuickSight) CreateFolderRequest(input *CreateFolderInput) (req *request // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * AccessDeniedException @@ -840,7 +840,7 @@ func (c *QuickSight) CreateFolderMembershipRequest(input *CreateFolderMembership // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -1124,10 +1124,10 @@ func (c *QuickSight) CreateIAMPolicyAssignmentRequest(input *CreateIAMPolicyAssi // CreateIAMPolicyAssignment API operation for Amazon QuickSight. // -// Creates an assignment with one specified IAM policy, identified by its Amazon +// Creates an assignment with one specified IAMpolicy, identified by its Amazon // Resource Name (ARN). This policy assignment is attached to the specified // groups or users of Amazon QuickSight. Assignment names are unique per Amazon -// Web Services account;. To avoid overwriting rules in other namespaces, use +// Web Services account. To avoid overwriting rules in other namespaces, use // assignment names that are unique. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1340,13 +1340,13 @@ func (c *QuickSight) CreateNamespaceRequest(input *CreateNamespaceInput) (req *r // (Enterprise edition only) Creates a new namespace for you to use with Amazon // QuickSight. // -// A namespace allows you to isolate the QuickSight users and groups that are -// registered for that namespace. Users that access the namespace can share -// assets only with other users or groups in the same namespace. They can't -// see users and groups in other namespaces. You can create a namespace after -// your Amazon Web Services account; is subscribed to QuickSight. The namespace -// must be unique within the Amazon Web Services account;. By default, there -// is a limit of 100 namespaces per Amazon Web Services account;. To increase +// A namespace allows you to isolate the Amazon QuickSight users and groups +// that are registered for that namespace. Users that access the namespace can +// share assets only with other users or groups in the same namespace. They +// can't see users and groups in other namespaces. You can create a namespace +// after your Amazon Web Services account is subscribed to Amazon QuickSight. +// The namespace must be unique within the Amazon Web Services account. By default, +// there is a limit of 100 namespaces per Amazon Web Services account. To increase // your limit, create a ticket with Amazon Web Services Support. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1460,10 +1460,10 @@ func (c *QuickSight) CreateTemplateRequest(input *CreateTemplateInput) (req *req // Creates a template from an existing Amazon QuickSight analysis or template. // You can use the resulting template to create a dashboard. // -// A template is an entity in QuickSight that encapsulates the metadata required -// to create an analysis and that you can use to create s dashboard. A template -// adds a layer of abstraction by using placeholders to replace the dataset -// associated with the analysis. You can use templates to create dashboards +// A template is an entity in Amazon QuickSight that encapsulates the metadata +// required to create an analysis and that you can use to create s dashboard. +// A template adds a layer of abstraction by using placeholders to replace the +// dataset associated with the analysis. You can use templates to create dashboards // by replacing dataset placeholders with datasets that follow the same schema // that was used to create the source analysis and template. // @@ -1500,7 +1500,7 @@ func (c *QuickSight) CreateTemplateRequest(input *CreateTemplateInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * ConflictException @@ -1603,7 +1603,7 @@ func (c *QuickSight) CreateTemplateAliasRequest(input *CreateTemplateAliasInput) // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * ConflictException @@ -1715,7 +1715,7 @@ func (c *QuickSight) CreateThemeRequest(input *CreateThemeInput) (req *request.R // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * LimitExceededException @@ -1821,7 +1821,7 @@ func (c *QuickSight) CreateThemeAliasRequest(input *CreateThemeAliasInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -1894,7 +1894,8 @@ func (c *QuickSight) DeleteAccountCustomizationRequest(input *DeleteAccountCusto // DeleteAccountCustomization API operation for Amazon QuickSight. // // Deletes all Amazon QuickSight customizations in this Amazon Web Services -// Region; for the specified Amazon Web Services account; and QuickSight namespace. +// Region; for the specified Amazon Web Services account and Amazon QuickSight +// namespace. // // 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 @@ -1994,19 +1995,19 @@ func (c *QuickSight) DeleteAnalysisRequest(input *DeleteAnalysisInput) (req *req // // Deletes an analysis from Amazon QuickSight. You can optionally include a // recovery window during which you can restore the analysis. If you don't specify -// a recovery window value, the operation defaults to 30 days. QuickSight attaches -// a DeletionTime stamp to the response that specifies the end of the recovery -// window. At the end of the recovery window, QuickSight deletes the analysis -// permanently. +// a recovery window value, the operation defaults to 30 days. Amazon QuickSight +// attaches a DeletionTime stamp to the response that specifies the end of the +// recovery window. At the end of the recovery window, Amazon QuickSight deletes +// the analysis permanently. // // At any time before recovery window ends, you can use the RestoreAnalysis // API operation to remove the DeletionTime stamp and cancel the deletion of // the analysis. The analysis remains visible in the API until it's deleted, // so you can describe it but you can't make a template from it. // -// An analysis that's scheduled for deletion isn't accessible in the QuickSight -// console. To access it in the console, restore it. Deleting an analysis doesn't -// delete the dashboards that you publish from it. +// An analysis that's scheduled for deletion isn't accessible in the Amazon +// QuickSight console. To access it in the console, restore it. Deleting an +// analysis doesn't delete the dashboards that you publish from it. // // 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 @@ -2031,7 +2032,7 @@ func (c *QuickSight) DeleteAnalysisRequest(input *DeleteAnalysisInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -2128,7 +2129,7 @@ func (c *QuickSight) DeleteDashboardRequest(input *DeleteDashboardInput) (req *r // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -2426,7 +2427,7 @@ func (c *QuickSight) DeleteFolderRequest(input *DeleteFolderInput) (req *request // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -2527,7 +2528,7 @@ func (c *QuickSight) DeleteFolderMembershipRequest(input *DeleteFolderMembership // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -2802,7 +2803,7 @@ func (c *QuickSight) DeleteIAMPolicyAssignmentRequest(input *DeleteIAMPolicyAssi // DeleteIAMPolicyAssignment API operation for Amazon QuickSight. // -// Deletes an existing IAM policy assignment. +// Deletes an existing IAMpolicy assignment. // // 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 @@ -3036,7 +3037,7 @@ func (c *QuickSight) DeleteTemplateRequest(input *DeleteTemplateInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -3129,7 +3130,7 @@ func (c *QuickSight) DeleteTemplateAliasRequest(input *DeleteTemplateAliasInput) // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * ConflictException @@ -3236,7 +3237,7 @@ func (c *QuickSight) DeleteThemeRequest(input *DeleteThemeInput) (req *request.R // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -3335,7 +3336,7 @@ func (c *QuickSight) DeleteThemeAliasRequest(input *DeleteThemeAliasInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -3612,48 +3613,49 @@ func (c *QuickSight) DescribeAccountCustomizationRequest(input *DescribeAccountC // DescribeAccountCustomization API operation for Amazon QuickSight. // // Describes the customizations associated with the provided Amazon Web Services -// account; and Amazon QuickSight namespace in an Amazon Web Services Region;. -// The QuickSight console evaluates which customizations to apply by running -// this API operation with the Resolved flag included. +// account and Amazon Amazon QuickSight namespace in an Amazon Web Services +// Region;. The Amazon QuickSight console evaluates which customizations to +// apply by running this API operation with the Resolved flag included. // // To determine what customizations display when you run this command, it can // help to visualize the relationship of the entities involved. // -// * Amazon Web Services account; - The Amazon Web Services account; exists +// * Amazon Web Services account - The Amazon Web Services account exists // at the top of the hierarchy. It has the potential to use all of the Amazon -// Web Services Regions; and AWS Services. When you subscribe to QuickSight, +// Web Services Regions; and AWS Services. When you subscribe to Amazon QuickSight, // you choose one Amazon Web Services Region; to use as your home Region. -// That's where your free SPICE capacity is located. You can use QuickSight +// That's where your free SPICE capacity is located. You can use Amazon QuickSight // in any supported Amazon Web Services Region;. // // * Amazon Web Services Region; - In each Amazon Web Services Region; where -// you sign in to QuickSight at least once, QuickSight acts as a separate -// instance of the same service. If you have a user directory, it resides -// in us-east-1, which is the US East (N. Virginia). Generally speaking, -// these users have access to QuickSight in any Amazon Web Services Region;, -// unless they are constrained to a namespace. To run the command in a different -// Amazon Web Services Region;, you change your Region settings. If you're -// using the AWS CLI, you can use one of the following options: Use command -// line options (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-options.html). +// you sign in to Amazon QuickSight at least once, Amazon QuickSight acts +// as a separate instance of the same service. If you have a user directory, +// it resides in us-east-1, which is the US East (N. Virginia). Generally +// speaking, these users have access to Amazon QuickSight in any Amazon Web +// Services Region;, unless they are constrained to a namespace. To run the +// command in a different Amazon Web Services Region;, you change your Region +// settings. If you're using the AWS CLI, you can use one of the following +// options: Use command line options (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-options.html). // Use named profiles (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html). // Run aws configure to change your default Amazon Web Services Region;. // Use Enter to key the same settings for your keys. For more information, // see Configuring the AWS CLI (https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html). // -// * Namespace - A QuickSight namespace is a partition that contains users -// and assets (data sources, datasets, dashboards, and so on). To access +// * Namespace - A Amazon QuickSight namespace is a partition that contains +// users and assets (data sources, datasets, dashboards, and so on). To access // assets that are in a specific namespace, users and groups must also be // part of the same namespace. People who share a namespace are completely // isolated from users and assets in other namespaces, even if they are in -// the same Amazon Web Services account; and Amazon Web Services Region;. +// the same Amazon Web Services account and Amazon Web Services Region;. // // * Applied customizations - Within an Amazon Web Services Region;, a set -// of QuickSight customizations can apply to an Amazon Web Services account; -// or to a namespace. Settings that you apply to a namespace override settings -// that you apply to an Amazon Web Services account;. All settings are isolated -// to a single Amazon Web Services Region;. To apply them in other Amazon -// Web Services Regions;, run the CreateAccountCustomization command in each -// Amazon Web Services Region; where you want to apply the same customizations. +// of Amazon QuickSight customizations can apply to an Amazon Web Services +// account or to a namespace. Settings that you apply to a namespace override +// settings that you apply to an Amazon Web Services account. All settings +// are isolated to a single Amazon Web Services Region;. To apply them in +// other Amazon Web Services Regions;, run the CreateAccountCustomization +// command in each Amazon Web Services Region; where you want to apply the +// same customizations. // // 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 @@ -3751,8 +3753,8 @@ func (c *QuickSight) DescribeAccountSettingsRequest(input *DescribeAccountSettin // DescribeAccountSettings API operation for Amazon QuickSight. // -// Describes the settings that were used when your QuickSight subscription was -// first created in this Amazon Web Services account;. +// Describes the settings that were used when your Amazon QuickSight subscription +// was first created in this Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3879,7 +3881,7 @@ func (c *QuickSight) DescribeAnalysisRequest(input *DescribeAnalysisInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -3973,7 +3975,7 @@ func (c *QuickSight) DescribeAnalysisPermissionsRequest(input *DescribeAnalysisP // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -4074,7 +4076,7 @@ func (c *QuickSight) DescribeDashboardRequest(input *DescribeDashboardInput) (re // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -4168,7 +4170,7 @@ func (c *QuickSight) DescribeDashboardPermissionsRequest(input *DescribeDashboar // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -4651,7 +4653,7 @@ func (c *QuickSight) DescribeFolderRequest(input *DescribeFolderInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -4752,7 +4754,7 @@ func (c *QuickSight) DescribeFolderPermissionsRequest(input *DescribeFolderPermi // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -4854,7 +4856,7 @@ func (c *QuickSight) DescribeFolderResolvedPermissionsRequest(input *DescribeFol // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -5028,7 +5030,7 @@ func (c *QuickSight) DescribeIAMPolicyAssignmentRequest(input *DescribeIAMPolicy // DescribeIAMPolicyAssignment API operation for Amazon QuickSight. // -// Describes an existing IAM policy assignment, as specified by the assignment +// Describes an existing IAMpolicy assignment, as specified by the assignment // name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -5358,7 +5360,7 @@ func (c *QuickSight) DescribeTemplateRequest(input *DescribeTemplateInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -5449,7 +5451,7 @@ func (c *QuickSight) DescribeTemplateAliasRequest(input *DescribeTemplateAliasIn // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -5546,7 +5548,7 @@ func (c *QuickSight) DescribeTemplatePermissionsRequest(input *DescribeTemplateP // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -5650,7 +5652,7 @@ func (c *QuickSight) DescribeThemeRequest(input *DescribeThemeInput) (req *reque // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -5747,7 +5749,7 @@ func (c *QuickSight) DescribeThemeAliasRequest(input *DescribeThemeAliasInput) ( // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -5848,7 +5850,7 @@ func (c *QuickSight) DescribeThemePermissionsRequest(input *DescribeThemePermiss // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -6077,15 +6079,15 @@ func (c *QuickSight) GenerateEmbedUrlForAnonymousUserRequest(input *GenerateEmbe // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * UnsupportedPricingPlanException // This error indicates that you are calling an embedding operation in Amazon // QuickSight without the required pricing plan on your Amazon Web Services -// account;. Before you can use embedding for anonymous users, a QuickSight -// administrator needs to add capacity pricing to QuickSight. You can do this -// on the Manage QuickSight page. +// account. Before you can use embedding for anonymous users, a Amazon QuickSight +// administrator needs to add capacity pricing to Amazon QuickSight. You can +// do this on the Manage Amazon QuickSight page. // // After capacity pricing is added, you can use the GetDashboardEmbedUrl API // operation with the --identity-type ANONYMOUS option. @@ -6221,15 +6223,15 @@ func (c *QuickSight) GenerateEmbedUrlForRegisteredUserRequest(input *GenerateEmb // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * UnsupportedPricingPlanException // This error indicates that you are calling an embedding operation in Amazon // QuickSight without the required pricing plan on your Amazon Web Services -// account;. Before you can use embedding for anonymous users, a QuickSight -// administrator needs to add capacity pricing to QuickSight. You can do this -// on the Manage QuickSight page. +// account. Before you can use embedding for anonymous users, a Amazon QuickSight +// administrator needs to add capacity pricing to Amazon QuickSight. You can +// do this on the Manage Amazon QuickSight page. // // After capacity pricing is added, you can use the GetDashboardEmbedUrl API // operation with the --identity-type ANONYMOUS option. @@ -6304,9 +6306,9 @@ func (c *QuickSight) GetDashboardEmbedUrlRequest(input *GetDashboardEmbedUrlInpu // GetDashboardEmbedUrl API operation for Amazon QuickSight. // // Generates a session URL and authorization code that you can use to embed -// an Amazon QuickSight read-only dashboard in your web server code. Before -// you use this command, make sure that you have configured the dashboards and -// permissions. +// an Amazon Amazon QuickSight read-only dashboard in your web server code. +// Before you use this command, make sure that you have configured the dashboards +// and permissions. // // Currently, you can use GetDashboardEmbedURL only from the server, not from // the user's browser. The following rules apply to the combination of URL and @@ -6375,15 +6377,15 @@ func (c *QuickSight) GetDashboardEmbedUrlRequest(input *GetDashboardEmbedUrlInpu // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * UnsupportedPricingPlanException // This error indicates that you are calling an embedding operation in Amazon // QuickSight without the required pricing plan on your Amazon Web Services -// account;. Before you can use embedding for anonymous users, a QuickSight -// administrator needs to add capacity pricing to QuickSight. You can do this -// on the Manage QuickSight page. +// account. Before you can use embedding for anonymous users, a Amazon QuickSight +// administrator needs to add capacity pricing to Amazon QuickSight. You can +// do this on the Manage Amazon QuickSight page. // // After capacity pricing is added, you can use the GetDashboardEmbedUrl API // operation with the --identity-type ANONYMOUS option. @@ -6458,17 +6460,17 @@ func (c *QuickSight) GetSessionEmbedUrlRequest(input *GetSessionEmbedUrlInput) ( // GetSessionEmbedUrl API operation for Amazon QuickSight. // // Generates a session URL and authorization code that you can use to embed -// the Amazon QuickSight console in your web server code. Use GetSessionEmbedUrl +// the Amazon Amazon QuickSight console in your web server code. Use GetSessionEmbedUrl // where you want to provide an authoring portal that allows users to create // data sources, datasets, analyses, and dashboards. The users who access an -// embedded QuickSight console need belong to the author or admin security cohort. -// If you want to restrict permissions to some of these features, add a custom -// permissions profile to the user with the UpdateUser API operation. Use RegisterUser -// API operation to add a new user with a custom permission profile attached. -// For more information, see the following sections in the Amazon QuickSight -// User Guide: +// embedded Amazon QuickSight console need belong to the author or admin security +// cohort. If you want to restrict permissions to some of these features, add +// a custom permissions profile to the user with the UpdateUser API operation. +// Use RegisterUser API operation to add a new user with a custom permission +// profile attached. For more information, see the following sections in the +// Amazon QuickSight User Guide: // -// * Embedding the Amazon QuickSight Console Using GetSessionEmbedUrl (https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-full-console-for-authenticated-users-get.html) +// * Embedding Analytics (https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics.html) // // * Customizing Access to the Amazon QuickSight Console (https://docs.aws.amazon.com/quicksight/latest/user/customizing-permissions-to-the-quicksight-console.html) // @@ -6511,7 +6513,7 @@ func (c *QuickSight) GetSessionEmbedUrlRequest(input *GetSessionEmbedUrlInput) ( // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -6590,7 +6592,7 @@ func (c *QuickSight) ListAnalysesRequest(input *ListAnalysesInput) (req *request // ListAnalyses API operation for Amazon QuickSight. // // Lists Amazon QuickSight analyses that exist in the specified Amazon Web Services -// account;. +// account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6609,7 +6611,7 @@ func (c *QuickSight) ListAnalysesRequest(input *ListAnalysesInput) (req *request // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -6739,7 +6741,7 @@ func (c *QuickSight) ListDashboardVersionsRequest(input *ListDashboardVersionsIn // ListDashboardVersions API operation for Amazon QuickSight. // -// Lists all the versions of the dashboards in the QuickSight subscription. +// Lists all the versions of the dashboards in the Amazon QuickSight subscription. // // 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 @@ -6764,7 +6766,7 @@ func (c *QuickSight) ListDashboardVersionsRequest(input *ListDashboardVersionsIn // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -6894,7 +6896,7 @@ func (c *QuickSight) ListDashboardsRequest(input *ListDashboardsInput) (req *req // ListDashboards API operation for Amazon QuickSight. // -// Lists dashboards in an Amazon Web Services account;. +// Lists dashboards in an Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6913,7 +6915,7 @@ func (c *QuickSight) ListDashboardsRequest(input *ListDashboardsInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -7043,7 +7045,7 @@ func (c *QuickSight) ListDataSetsRequest(input *ListDataSetsInput) (req *request // ListDataSets API operation for Amazon QuickSight. // -// Lists all of the datasets belonging to the current Amazon Web Services account; +// Lists all of the datasets belonging to the current Amazon Web Services account // in an Amazon Web Services Region;. // // The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/*. @@ -7200,7 +7202,7 @@ func (c *QuickSight) ListDataSourcesRequest(input *ListDataSourcesInput) (req *r // ListDataSources API operation for Amazon QuickSight. // // Lists data sources in current Amazon Web Services Region; that belong to -// this Amazon Web Services account;. +// this Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7379,7 +7381,7 @@ func (c *QuickSight) ListFolderMembersRequest(input *ListFolderMembersInput) (re // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -7483,7 +7485,7 @@ func (c *QuickSight) ListFoldersRequest(input *ListFoldersInput) (req *request.R // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -7763,7 +7765,7 @@ func (c *QuickSight) ListIAMPolicyAssignmentsRequest(input *ListIAMPolicyAssignm // ListIAMPolicyAssignments API operation for Amazon QuickSight. // -// Lists IAM policy assignments in the current Amazon QuickSight account. +// Lists IAMpolicy assignments in the current Amazon QuickSight account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7861,7 +7863,7 @@ func (c *QuickSight) ListIAMPolicyAssignmentsForUserRequest(input *ListIAMPolicy // ListIAMPolicyAssignmentsForUser API operation for Amazon QuickSight. // -// Lists all the IAM policy assignments, including the Amazon Resource Names +// Lists all the IAMpolicy assignments, including the Amazon Resource Names // (ARNs) for the IAM policies assigned to the specified user and group or groups // that the user belongs to. // @@ -8130,7 +8132,7 @@ func (c *QuickSight) ListNamespacesRequest(input *ListNamespacesInput) (req *req // ListNamespaces API operation for Amazon QuickSight. // -// Lists the namespaces for the specified Amazon Web Services account;. +// Lists the namespaces for the specified Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -8409,7 +8411,7 @@ func (c *QuickSight) ListTemplateAliasesRequest(input *ListTemplateAliasesInput) // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -8565,7 +8567,7 @@ func (c *QuickSight) ListTemplateVersionsRequest(input *ListTemplateVersionsInpu // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -8720,7 +8722,7 @@ func (c *QuickSight) ListTemplatesRequest(input *ListTemplatesInput) (req *reque // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -8872,7 +8874,7 @@ func (c *QuickSight) ListThemeAliasesRequest(input *ListThemeAliasesInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -8950,7 +8952,7 @@ func (c *QuickSight) ListThemeVersionsRequest(input *ListThemeVersionsInput) (re // ListThemeVersions API operation for Amazon QuickSight. // -// Lists all the versions of the themes in the current Amazon Web Services account;. +// Lists all the versions of the themes in the current Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -8982,7 +8984,7 @@ func (c *QuickSight) ListThemeVersionsRequest(input *ListThemeVersionsInput) (re // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -9112,7 +9114,7 @@ func (c *QuickSight) ListThemesRequest(input *ListThemesInput) (req *request.Req // ListThemes API operation for Amazon QuickSight. // -// Lists all the themes in the current Amazon Web Services account;. +// Lists all the themes in the current Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -9144,7 +9146,7 @@ func (c *QuickSight) ListThemesRequest(input *ListThemesInput) (req *request.Req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -9608,7 +9610,7 @@ func (c *QuickSight) RestoreAnalysisRequest(input *RestoreAnalysisInput) (req *r // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -9711,7 +9713,7 @@ func (c *QuickSight) SearchAnalysesRequest(input *SearchAnalysesInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InvalidNextTokenException @@ -9869,7 +9871,7 @@ func (c *QuickSight) SearchDashboardsRequest(input *SearchDashboardsInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InvalidNextTokenException @@ -10028,7 +10030,7 @@ func (c *QuickSight) SearchFoldersRequest(input *SearchFoldersInput) (req *reque // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -10100,7 +10102,8 @@ func (c *QuickSight) TagResourceRequest(input *TagResourceInput) (req *request.R // TagResource API operation for Amazon QuickSight. // -// Assigns one or more tags (key-value pairs) to the specified QuickSight resource. +// Assigns one or more tags (key-value pairs) to the specified Amazon QuickSight +// resource. // // Tags can help you organize and categorize your resources. You can also use // them to scope user permissions, by granting a user permission to access or @@ -10111,17 +10114,18 @@ func (c *QuickSight) TagResourceRequest(input *TagResourceInput) (req *request.R // the resource, the new tag value that you specify replaces the previous value // for that tag. // -// You can associate as many as 50 tags with a resource. QuickSight supports +// You can associate as many as 50 tags with a resource. Amazon QuickSight supports // tagging on data set, data source, dashboard, and template. // -// Tagging for QuickSight works in a similar way to tagging for other AWS services, -// except for the following: +// Tagging for Amazon QuickSight works in a similar way to tagging for other +// AWS services, except for the following: // -// * You can't use tags to track AWS costs for QuickSight. This restriction -// is because QuickSight costs are based on users and SPICE capacity, which -// aren't taggable resources. +// * You can't use tags to track AWS costs for Amazon QuickSight. This restriction +// is because Amazon QuickSight costs are based on users and SPICE capacity, +// which aren't taggable resources. // -// * QuickSight doesn't currently support the Tag Editor for Resource Groups. +// * Amazon QuickSight doesn't currently support the Tag Editor for Resource +// Groups. // // 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 @@ -10317,10 +10321,10 @@ func (c *QuickSight) UpdateAccountCustomizationRequest(input *UpdateAccountCusto // Updates Amazon QuickSight customizations the current Amazon Web Services // Region;. Currently, the only customization you can use is a theme. // -// You can use customizations for your Amazon Web Services account; or, if you -// specify a namespace, for a QuickSight namespace instead. Customizations that -// apply to a namespace override customizations that apply to an Amazon Web -// Services account;. To find out which customizations apply, use the DescribeAccountCustomization +// You can use customizations for your Amazon Web Services account or, if you +// specify a namespace, for a Amazon QuickSight namespace instead. Customizations +// that apply to a namespace override customizations that apply to an Amazon +// Web Services account. To find out which customizations apply, use the DescribeAccountCustomization // API operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -10419,7 +10423,7 @@ func (c *QuickSight) UpdateAccountSettingsRequest(input *UpdateAccountSettingsIn // UpdateAccountSettings API operation for Amazon QuickSight. // -// Updates the Amazon QuickSight settings in your Amazon Web Services account;. +// Updates the Amazon QuickSight settings in your Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -10545,7 +10549,7 @@ func (c *QuickSight) UpdateAnalysisRequest(input *UpdateAnalysisInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -10639,7 +10643,7 @@ func (c *QuickSight) UpdateAnalysisPermissionsRequest(input *UpdateAnalysisPermi // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * ConflictException @@ -10714,7 +10718,7 @@ func (c *QuickSight) UpdateDashboardRequest(input *UpdateDashboardInput) (req *r // UpdateDashboard API operation for Amazon QuickSight. // -// Updates a dashboard in an Amazon Web Services account;. +// Updates a dashboard in an Amazon Web Services account. // // Updating a Dashboard creates a new dashboard version but does not immediately // publish the new version. You can update the published version of a dashboard @@ -10746,7 +10750,7 @@ func (c *QuickSight) UpdateDashboardRequest(input *UpdateDashboardInput) (req *r // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -10840,7 +10844,7 @@ func (c *QuickSight) UpdateDashboardPermissionsRequest(input *UpdateDashboardPer // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * ConflictException @@ -10940,7 +10944,7 @@ func (c *QuickSight) UpdateDashboardPublishedVersionRequest(input *UpdateDashboa // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -11047,7 +11051,7 @@ func (c *QuickSight) UpdateDataSetRequest(input *UpdateDataSetInput) (req *reque // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -11450,7 +11454,7 @@ func (c *QuickSight) UpdateFolderRequest(input *UpdateFolderInput) (req *request // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -11554,7 +11558,7 @@ func (c *QuickSight) UpdateFolderPermissionsRequest(input *UpdateFolderPermissio // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -11727,7 +11731,7 @@ func (c *QuickSight) UpdateIAMPolicyAssignmentRequest(input *UpdateIAMPolicyAssi // UpdateIAMPolicyAssignment API operation for Amazon QuickSight. // -// Updates an existing IAM policy assignment. This operation updates only the +// Updates an existing IAMpolicy assignment. This operation updates only the // optional parameter or parameters that are specified in the request. This // overwrites all of the users included in Identities. // @@ -11863,7 +11867,7 @@ func (c *QuickSight) UpdateTemplateRequest(input *UpdateTemplateInput) (req *req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -11957,7 +11961,7 @@ func (c *QuickSight) UpdateTemplateAliasRequest(input *UpdateTemplateAliasInput) // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * ConflictException @@ -12057,7 +12061,7 @@ func (c *QuickSight) UpdateTemplatePermissionsRequest(input *UpdateTemplatePermi // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -12164,7 +12168,7 @@ func (c *QuickSight) UpdateThemeRequest(input *UpdateThemeInput) (req *request.R // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -12264,7 +12268,7 @@ func (c *QuickSight) UpdateThemeAliasRequest(input *UpdateThemeAliasInput) (req // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -12379,7 +12383,7 @@ func (c *QuickSight) UpdateThemePermissionsRequest(input *UpdateThemePermissions // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // // * InternalFailureException @@ -12572,11 +12576,12 @@ func (s *AccessDeniedException) RequestID() string { } // The Amazon QuickSight customizations associated with your Amazon Web Services -// account; or a QuickSight namespace in a specific Amazon Web Services Region;. +// account or a Amazon QuickSight namespace in a specific Amazon Web Services +// Region;. type AccountCustomization struct { _ struct{} `type:"structure"` - // The default theme for this QuickSight subscription. + // The default theme for this Amazon QuickSight subscription. DefaultTheme *string `type:"string"` } @@ -12596,24 +12601,24 @@ func (s *AccountCustomization) SetDefaultTheme(v string) *AccountCustomization { return s } -// The QuickSight settings associated with your Amazon Web Services account;. +// The Amazon QuickSight settings associated with your Amazon Web Services account. type AccountSettings struct { _ struct{} `type:"structure"` - // The "account name" you provided for the QuickSight subscription in your Amazon - // Web Services account;. You create this name when you sign up for QuickSight. - // It is unique in all of Amazon Web Services and it appears only when users - // sign in. + // The "account name" you provided for the Amazon QuickSight subscription in + // your Amazon Web Services account. You create this name when you sign up for + // Amazon QuickSight. It is unique in all of Amazon Web Services and it appears + // only when users sign in. AccountName *string `type:"string"` - // The default QuickSight namespace for your Amazon Web Services account;. + // The default Amazon QuickSight namespace for your Amazon Web Services account. DefaultNamespace *string `type:"string"` - // The edition of QuickSight that you're currently subscribed to: Enterprise + // The edition of Amazon QuickSight that you're currently subscribed to: Enterprise // edition or Standard edition. Edition *string `type:"string" enum:"Edition"` - // The main notification email for your QuickSight subscription. + // The main notification email for your Amazon QuickSight subscription. NotificationEmail *string `type:"string"` } @@ -12655,7 +12660,7 @@ func (s *AccountSettings) SetNotificationEmail(v string) *AccountSettings { type ActiveIAMPolicyAssignment struct { _ struct{} `type:"structure"` - // A name for the IAM policy assignment. + // A name for the IAMpolicy assignment. AssignmentName *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the resource. @@ -12708,11 +12713,11 @@ func (s *AdHocFilteringOption) SetAvailabilityStatus(v string) *AdHocFilteringOp return s } -// Amazon Elasticsearch Service parameters. +// The parameters for Elasticsearch. type AmazonElasticsearchParameters struct { _ struct{} `type:"structure"` - // The Amazon Elasticsearch Service domain. + // The Elasticsearch domain. // // Domain is a required field Domain *string `min:"1" type:"string" required:"true"` @@ -12856,7 +12861,7 @@ func (s *Analysis) SetThemeArn(v string) *Analysis { return s } -// A metadata error structure for an analysis. +// Analysis error. type AnalysisError struct { _ struct{} `type:"structure"` @@ -13055,7 +13060,8 @@ type AnalysisSummary struct { // The time that the analysis was last updated. LastUpdatedTime *time.Time `type:"timestamp"` - // The name of the analysis. This name is displayed in the QuickSight console. + // The name of the analysis. This name is displayed in the Amazon QuickSight + // console. Name *string `min:"1" type:"string"` // The last known status for the analysis. @@ -13195,7 +13201,7 @@ func (s *AnonymousUserEmbeddingExperienceConfiguration) SetDashboard(v *Anonymou return s } -// Amazon Athena parameters. +// Parameters for Amazon Athena. type AthenaParameters struct { _ struct{} `type:"structure"` @@ -13232,7 +13238,7 @@ func (s *AthenaParameters) SetWorkGroup(v string) *AthenaParameters { return s } -// Amazon Aurora parameters. +// Parameters for Amazon Aurora. type AuroraParameters struct { _ struct{} `type:"structure"` @@ -13308,21 +13314,21 @@ func (s *AuroraParameters) SetPort(v int64) *AuroraParameters { return s } -// Amazon Aurora with PostgreSQL compatibility parameters. +// Parameters for Amazon Aurora PostgreSQL-Compatible Edition. type AuroraPostgreSqlParameters struct { _ struct{} `type:"structure"` - // Database. + // The Amazon Aurora PostgreSQL database to connect to. // // Database is a required field Database *string `min:"1" type:"string" required:"true"` - // Host. + // The Amazon Aurora PostgreSQL-Compatible host to connect to. // // Host is a required field Host *string `min:"1" type:"string" required:"true"` - // Port. + // The port that Amazon Aurora PostgreSQL is listening on. // // Port is a required field Port *int64 `min:"1" type:"integer" required:"true"` @@ -13384,7 +13390,7 @@ func (s *AuroraPostgreSqlParameters) SetPort(v int64) *AuroraPostgreSqlParameter return s } -// Amazon Web Services IoT Analytics parameters. +// The parameters for IoT Analytics. type AwsIotAnalyticsParameters struct { _ struct{} `type:"structure"` @@ -13531,7 +13537,7 @@ func (s *CalculatedColumn) SetExpression(v string) *CalculatedColumn { type CancelIngestionInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -13852,7 +13858,7 @@ type ColumnLevelPermissionRule struct { // An array of column names. ColumnNames []*string `min:"1" type:"list"` - // An array of Amazon Resource Names (ARNs) for QuickSight users or groups. + // An array of Amazon Resource Names (ARNs) for Amazon QuickSight users or groups. Principals []*string `min:"1" type:"list"` } @@ -14092,9 +14098,9 @@ func (s *ConflictException) RequestID() string { type CreateAccountCustomizationInput struct { _ struct{} `type:"structure"` - // The QuickSight customizations you're adding in the current Amazon Web Services - // Region;. You can add these to an Amazon Web Services account; and a QuickSight - // namespace. + // The Amazon QuickSight customizations you're adding in the current Amazon + // Web Services Region;. You can add these to an Amazon Web Services account + // and a Amazon QuickSight namespace. // // For example, you can add a default theme by setting AccountCustomization // to the midnight theme: "AccountCustomization": { "DefaultTheme": "arn:aws:quicksight::aws:theme/MIDNIGHT" @@ -14105,13 +14111,13 @@ type CreateAccountCustomizationInput struct { // AccountCustomization is a required field AccountCustomization *AccountCustomization `type:"structure" required:"true"` - // The ID for the Amazon Web Services account; that you want to customize QuickSight - // for. + // The ID for the Amazon Web Services account that you want to customize Amazon + // QuickSight for. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The QuickSight namespace that you want to add customizations to. + // The Amazon QuickSight namespace that you want to add customizations to. Namespace *string `location:"querystring" locationName:"namespace" type:"string"` // A list of the tags that you want to attach to this resource. @@ -14187,16 +14193,16 @@ func (s *CreateAccountCustomizationInput) SetTags(v []*Tag) *CreateAccountCustom type CreateAccountCustomizationOutput struct { _ struct{} `type:"structure"` - // The QuickSight customizations you're adding in the current Amazon Web Services - // Region;. + // The Amazon QuickSight customizations you're adding in the current Amazon + // Web Services Region;. AccountCustomization *AccountCustomization `type:"structure"` // The Amazon Resource Name (ARN) for the customization that you created for - // this Amazon Web Services account;. + // this Amazon Web Services account. Arn *string `type:"string"` - // The ID for the Amazon Web Services account; that you want to customize QuickSight - // for. + // The ID for the Amazon Web Services account that you want to customize Amazon + // QuickSight for. AwsAccountId *string `min:"12" type:"string"` // The namespace associated with the customization you're creating. @@ -14264,13 +14270,13 @@ type CreateAnalysisInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; where you are creating an analysis. + // The ID of the Amazon Web Services account where you are creating an analysis. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // A descriptive name for the analysis that you're creating. This name displays - // for the analysis in the QuickSight console. + // for the analysis in the Amazon QuickSight console. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -14299,7 +14305,8 @@ type CreateAnalysisInput struct { Tags []*Tag `min:"1" type:"list"` // The ARN for the theme to apply to the analysis that you're creating. To see - // the theme in the QuickSight console, make sure that you have access to it. + // the theme in the Amazon QuickSight console, make sure that you have access + // to it. ThemeArn *string `type:"string"` } @@ -14543,12 +14550,12 @@ func (s *CreateColumnsOperation) SetColumns(v []*CalculatedColumn) *CreateColumn type CreateDashboardInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; where you want to create the dashboard. + // The ID of the Amazon Web Services account where you want to create the dashboard. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard, also added to the IAM policy. + // The ID for the dashboard, also added to the IAMpolicy. // // DashboardId is a required field DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` @@ -14556,7 +14563,7 @@ type CreateDashboardInput struct { // Options for publishing the dashboard when you create it: // // * AvailabilityStatus for AdHocFilteringOption - This status can be either - // ENABLED or DISABLED. When this is set to DISABLED, QuickSight disables + // ENABLED or DISABLED. When this is set to DISABLED, Amazon QuickSight disables // the left filter pane on the published dashboard, which can be used for // ad hoc (one-time) filtering. This option is ENABLED by default. // @@ -14579,7 +14586,7 @@ type CreateDashboardInput struct { Parameters *Parameters `type:"structure"` // A structure that contains the permissions of the dashboard. You can use this - // structure for granting permissions by providing a list of IAM action information + // structure for granting permissions by providing a list of IAMaction information // for each principal ARN. // // To specify no permissions, omit the permissions list. @@ -14591,8 +14598,8 @@ type CreateDashboardInput struct { // entity. If you need to create a dashboard from an analysis, first convert // the analysis to a template by using the CreateTemplate API operation. For // SourceTemplate, specify the Amazon Resource Name (ARN) of the source template. - // The SourceTemplateARN can contain any Amazon Web Services account; and any - // QuickSight-supported Amazon Web Services Region;. + // The SourceTemplateARN can contain any Amazon Web Services account and any + // Amazon QuickSight-supported Amazon Web Services Region;. // // Use the DataSetReferences entity within SourceTemplate to list the replacement // datasets for the placeholders listed in the original. The schema in each @@ -14608,7 +14615,7 @@ type CreateDashboardInput struct { // The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. // If you add a value for this field, it overrides the value that is used in // the source entity. The theme ARN must exist in the same Amazon Web Services - // account; where you create the dashboard. + // account where you create the dashboard. ThemeArn *string `type:"string"` // A description for the first version of the dashboard being created. @@ -14827,24 +14834,28 @@ func (s *CreateDashboardOutput) SetVersionArn(v string) *CreateDashboardOutput { type CreateDataSetInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Groupings of columns that work together in certain QuickSight features. Currently, - // only geospatial hierarchy is supported. + // Groupings of columns that work together in certain Amazon QuickSight features. + // Currently, only geospatial hierarchy is supported. ColumnGroups []*ColumnGroup `min:"1" type:"list"` // A set of one or more definitions of a ColumnLevelPermissionRule . ColumnLevelPermissionRules []*ColumnLevelPermissionRule `min:"1" type:"list"` // An ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. // // DataSetId is a required field DataSetId *string `type:"string" required:"true"` + // The usage configuration to apply to child datasets that reference this dataset + // as a source. + DataSetUsageConfiguration *DataSetUsageConfiguration `type:"structure"` + // The folder that contains fields and nested subfolders for your dataset. FieldFolders map[string]*FieldFolder `type:"map"` @@ -14868,7 +14879,7 @@ type CreateDataSetInput struct { // Declares the physical tables that are available in the underlying data sources. // // PhysicalTableMap is a required field - PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map" required:"true"` + PhysicalTableMap map[string]*PhysicalTable `type:"map" required:"true"` // The row-level security configuration for the data that you want to create. RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` @@ -14928,9 +14939,6 @@ func (s *CreateDataSetInput) Validate() error { if s.PhysicalTableMap == nil { invalidParams.Add(request.NewErrParamRequired("PhysicalTableMap")) } - if s.PhysicalTableMap != nil && len(s.PhysicalTableMap) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PhysicalTableMap", 1)) - } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } @@ -15035,6 +15043,12 @@ func (s *CreateDataSetInput) SetDataSetId(v string) *CreateDataSetInput { return s } +// SetDataSetUsageConfiguration sets the DataSetUsageConfiguration field's value. +func (s *CreateDataSetInput) SetDataSetUsageConfiguration(v *DataSetUsageConfiguration) *CreateDataSetInput { + s.DataSetUsageConfiguration = v + return s +} + // SetFieldFolders sets the FieldFolders field's value. func (s *CreateDataSetInput) SetFieldFolders(v map[string]*FieldFolder) *CreateDataSetInput { s.FieldFolders = v @@ -15096,7 +15110,7 @@ type CreateDataSetOutput struct { Arn *string `type:"string"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. DataSetId *string `type:"string"` // The ARN for the ingestion, which is triggered as a result of dataset creation @@ -15163,22 +15177,23 @@ func (s *CreateDataSetOutput) SetStatus(v int64) *CreateDataSetOutput { type CreateDataSourceInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The credentials QuickSight that uses to connect to your underlying source. - // Currently, only credentials based on user name and password are supported. + // The credentials Amazon QuickSight that uses to connect to your underlying + // source. Currently, only credentials based on user name and password are supported. Credentials *DataSourceCredentials `type:"structure" sensitive:"true"` // An ID for the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. // // DataSourceId is a required field DataSourceId *string `type:"string" required:"true"` - // The parameters that QuickSight uses to connect to your underlying source. + // The parameters that Amazon QuickSight uses to connect to your underlying + // source. DataSourceParameters *DataSourceParameters `type:"structure"` // A display name for the data source. @@ -15189,7 +15204,7 @@ type CreateDataSourceInput struct { // A list of resource permissions on the data source. Permissions []*ResourcePermission `min:"1" type:"list"` - // Secure Socket Layer (SSL) properties that apply when QuickSight connects + // Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects // to your underlying source. SslProperties *SslProperties `type:"structure"` @@ -15197,17 +15212,14 @@ type CreateDataSourceInput struct { // to the data source. Tags []*Tag `min:"1" type:"list"` - // The type of the data source. Currently, the supported types for this operation - // are: ATHENA, AURORA, AURORA_POSTGRESQL, AMAZON_ELASTICSEARCH, MARIADB, MYSQL, - // POSTGRESQL, PRESTO, REDSHIFT, S3, SNOWFLAKE, SPARK, SQLSERVER, TERADATA. - // Use ListDataSources to return a list of all data sources. + // The type of the data source. To return a list of all data sources, use ListDataSources. // - // AMAZON_ELASTICSEARCH is for Amazon managed Elasticsearch Service. + // Use AMAZON_ELASTICSEARCH for Amazon Elasticsearch Service. // // Type is a required field Type *string `type:"string" required:"true" enum:"DataSourceType"` - // Use this parameter only when you want QuickSight to use a VPC connection + // Use this parameter only when you want Amazon QuickSight to use a VPC connection // when connecting to your underlying source. VpcConnectionProperties *VpcConnectionProperties `type:"structure"` } @@ -15361,7 +15373,7 @@ type CreateDataSourceOutput struct { CreationStatus *string `type:"string" enum:"ResourceStatus"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. DataSourceId *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -15737,8 +15749,8 @@ func (s *CreateFolderOutput) SetStatus(v int64) *CreateFolderOutput { type CreateGroupInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -15826,8 +15838,8 @@ func (s *CreateGroupInput) SetNamespace(v string) *CreateGroupInput { type CreateGroupMembershipInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -16004,7 +16016,7 @@ type CreateIAMPolicyAssignmentInput struct { _ struct{} `type:"structure"` // The name of the assignment, also called a rule. It must be unique within - // an Amazon Web Services account;. + // an Amazon Web Services account. // // AssignmentName is a required field AssignmentName *string `min:"1" type:"string" required:"true"` @@ -16022,14 +16034,14 @@ type CreateIAMPolicyAssignmentInput struct { // AssignmentStatus is a required field AssignmentStatus *string `type:"string" required:"true" enum:"AssignmentStatus"` - // The ID of the Amazon Web Services account; where you want to assign an IAM - // policy to QuickSight users or groups. + // The ID of the Amazon Web Services account where you want to assign an IAMpolicy + // to Amazon QuickSight users or groups. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The QuickSight users, groups, or both that you want to assign the policy - // to. + // The Amazon QuickSight users, groups, or both that you want to assign the + // policy to. Identities map[string][]*string `type:"map"` // The namespace that contains the assignment. @@ -16037,8 +16049,8 @@ type CreateIAMPolicyAssignmentInput struct { // Namespace is a required field Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // The ARN for the IAM policy to apply to the QuickSight users and groups specified - // in this assignment. + // The ARN for the IAMpolicy to apply to the Amazon QuickSight users and groups + // specified in this assignment. PolicyArn *string `type:"string"` } @@ -16126,7 +16138,7 @@ type CreateIAMPolicyAssignmentOutput struct { AssignmentId *string `type:"string"` // The name of the assignment. This name must be unique within the Amazon Web - // Services account;. + // Services account. AssignmentName *string `min:"1" type:"string"` // The status of the assignment. Possible values are as follows: @@ -16140,11 +16152,12 @@ type CreateIAMPolicyAssignmentOutput struct { // the data source. AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // The QuickSight users, groups, or both that the IAM policy is assigned to. + // The Amazon QuickSight users, groups, or both that the IAMpolicy is assigned + // to. Identities map[string][]*string `type:"map"` - // The ARN for the IAM policy that is applied to the QuickSight users and groups - // specified in this assignment. + // The ARN for the IAMpolicy that is applied to the Amazon QuickSight users + // and groups specified in this assignment. PolicyArn *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -16209,7 +16222,7 @@ func (s *CreateIAMPolicyAssignmentOutput) SetStatus(v int64) *CreateIAMPolicyAss type CreateIngestionInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -16343,8 +16356,8 @@ func (s *CreateIngestionOutput) SetStatus(v int64) *CreateIngestionOutput { type CreateNamespaceInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that you want to create the QuickSight - // namespace in. + // The ID for the Amazon Web Services account that you want to create the Amazon + // QuickSight namespace in. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -16436,7 +16449,7 @@ func (s *CreateNamespaceInput) SetTags(v []*Tag) *CreateNamespaceInput { type CreateNamespaceOutput struct { _ struct{} `type:"structure"` - // The ARN of the QuickSight namespace you created. + // The ARN of the Amazon QuickSight namespace you created. Arn *string `type:"string"` // The Amazon Web Services Region; that you want to use for the free SPICE capacity @@ -16526,7 +16539,7 @@ type CreateTemplateAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the template that + // The ID of the Amazon Web Services account that contains the template that // you creating an alias for. // // AwsAccountId is a required field @@ -16655,9 +16668,9 @@ func (s *CreateTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *CreateTe type CreateTemplateInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon - // QuickSight account. + // The ID for the Amazon Web Services account that the group is in. You use + // the ID for the Amazon Web Services account that contains your Amazon QuickSight + // account. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -16673,8 +16686,8 @@ type CreateTemplateInput struct { // for a template or SourceAnalysis for an analysis. Both of these require an // Amazon Resource Name (ARN). For SourceTemplate, specify the ARN of the source // template. For SourceAnalysis, specify the ARN of the source analysis. The - // SourceTemplate ARN can contain any Amazon Web Services account; and any QuickSight-supported - // Amazon Web Services Region;. + // SourceTemplate ARN can contain any Amazon Web Services account and any Amazon + // QuickSight-supported Amazon Web Services Region;. // // Use the DataSetReferences entity within SourceTemplate or SourceAnalysis // to list the replacement datasets for the placeholders listed in the original. @@ -16688,7 +16701,7 @@ type CreateTemplateInput struct { Tags []*Tag `min:"1" type:"list"` // An ID for the template that you want to create. This template is unique per - // Amazon Web Services Region; in each Amazon Web Services account;. + // Amazon Web Services Region; in each Amazon Web Services account. // // TemplateId is a required field TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` @@ -16893,7 +16906,7 @@ type CreateThemeAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the theme for the + // The ID of the Amazon Web Services account that contains the theme for the // new theme alias. // // AwsAccountId is a required field @@ -17022,7 +17035,7 @@ func (s *CreateThemeAliasOutput) SetThemeAlias(v *ThemeAlias) *CreateThemeAliasO type CreateThemeInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; where you want to store the new + // The ID of the Amazon Web Services account where you want to store the new // theme. // // AwsAccountId is a required field @@ -17030,8 +17043,8 @@ type CreateThemeInput struct { // The ID of the theme that a custom theme will inherit from. All themes inherit // from one of the starting themes defined by Amazon QuickSight. For a list - // of the starting themes, use ListThemes or choose Themes from within a QuickSight - // analysis. + // of the starting themes, use ListThemes or choose Themes from within a Amazon + // QuickSight analysis. // // BaseThemeId is a required field BaseThemeId *string `min:"1" type:"string" required:"true"` @@ -17054,7 +17067,7 @@ type CreateThemeInput struct { Tags []*Tag `min:"1" type:"list"` // An ID for the theme that you want to create. The theme ID is unique per Amazon - // Web Services Region; in each Amazon Web Services account;. + // Web Services Region in each Amazon Web Services account. // // ThemeId is a required field ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` @@ -18082,6 +18095,10 @@ type DataSet struct { // The ID of the dataset. DataSetId *string `type:"string"` + // The usage configuration to apply to child datasets that reference this dataset + // as a source. + DataSetUsageConfiguration *DataSetUsageConfiguration `type:"structure"` + // The folder that contains fields and nested subfolders for your dataset. FieldFolders map[string]*FieldFolder `type:"map"` @@ -18103,7 +18120,7 @@ type DataSet struct { OutputColumns []*OutputColumn `type:"list"` // Declares the physical tables that are available in the underlying data sources. - PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map"` + PhysicalTableMap map[string]*PhysicalTable `type:"map"` // The row-level security configuration for the dataset. RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` @@ -18158,6 +18175,12 @@ func (s *DataSet) SetDataSetId(v string) *DataSet { return s } +// SetDataSetUsageConfiguration sets the DataSetUsageConfiguration field's value. +func (s *DataSet) SetDataSetUsageConfiguration(v *DataSetUsageConfiguration) *DataSet { + s.DataSetUsageConfiguration = v + return s +} + // SetFieldFolders sets the FieldFolders field's value. func (s *DataSet) SetFieldFolders(v map[string]*FieldFolder) *DataSet { s.FieldFolders = v @@ -18427,6 +18450,42 @@ func (s *DataSetSummary) SetRowLevelPermissionTagConfigurationApplied(v bool) *D return s } +// The usage configuration to apply to child datasets that reference this dataset +// as a source. +type DataSetUsageConfiguration struct { + _ struct{} `type:"structure"` + + // An option that controls whether a child dataset of a direct query can use + // this dataset as a source. + DisableUseAsDirectQuerySource *bool `type:"boolean"` + + // An option that controls whether a child dataset that's stored in QuickSight + // can use this dataset as a source. + DisableUseAsImportedSource *bool `type:"boolean"` +} + +// String returns the string representation +func (s DataSetUsageConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataSetUsageConfiguration) GoString() string { + return s.String() +} + +// SetDisableUseAsDirectQuerySource sets the DisableUseAsDirectQuerySource field's value. +func (s *DataSetUsageConfiguration) SetDisableUseAsDirectQuerySource(v bool) *DataSetUsageConfiguration { + s.DisableUseAsDirectQuerySource = &v + return s +} + +// SetDisableUseAsImportedSource sets the DisableUseAsImportedSource field's value. +func (s *DataSetUsageConfiguration) SetDisableUseAsImportedSource(v bool) *DataSetUsageConfiguration { + s.DisableUseAsImportedSource = &v + return s +} + // The structure of a data source. type DataSource struct { _ struct{} `type:"structure"` @@ -18449,7 +18508,7 @@ type DataSource struct { CreatedTime *time.Time `type:"timestamp"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. DataSourceId *string `type:"string"` // The parameters that Amazon QuickSight uses to connect to your underlying @@ -18466,7 +18525,7 @@ type DataSource struct { // A display name for the data source. Name *string `min:"1" type:"string"` - // Secure Socket Layer (SSL) properties that apply when QuickSight connects + // Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects // to your underlying source. SslProperties *SslProperties `type:"structure"` @@ -18478,8 +18537,8 @@ type DataSource struct { Type *string `type:"string" enum:"DataSourceType"` // The VPC connection information. You need to use this parameter only when - // you want QuickSight to use a VPC connection when connecting to your underlying - // source. + // you want Amazon QuickSight to use a VPC connection when connecting to your + // underlying source. VpcConnectionProperties *VpcConnectionProperties `type:"structure"` } @@ -18656,64 +18715,64 @@ func (s *DataSourceErrorInfo) SetType(v string) *DataSourceErrorInfo { type DataSourceParameters struct { _ struct{} `type:"structure"` - // Amazon Elasticsearch Service parameters. + // The parameters for Elasticsearch. AmazonElasticsearchParameters *AmazonElasticsearchParameters `type:"structure"` - // Amazon Athena parameters. + // The parameters for Amazon Athena. AthenaParameters *AthenaParameters `type:"structure"` - // Amazon Aurora MySQL parameters. + // The parameters for Amazon Aurora MySQL. AuroraParameters *AuroraParameters `type:"structure"` - // Aurora PostgreSQL parameters. + // The parameters for Amazon Aurora. AuroraPostgreSqlParameters *AuroraPostgreSqlParameters `type:"structure"` - // Amazon Web Services IoT Analytics parameters. + // The parameters for IoT Analytics. AwsIotAnalyticsParameters *AwsIotAnalyticsParameters `type:"structure"` - // Jira parameters. + // The parameters for Jira. JiraParameters *JiraParameters `type:"structure"` - // MariaDB parameters. + // The parameters for MariaDB. MariaDbParameters *MariaDbParameters `type:"structure"` - // MySQL parameters. + // The parameters for MySQL. MySqlParameters *MySqlParameters `type:"structure"` - // Oracle parameters. + // The parameters for Oracle. OracleParameters *OracleParameters `type:"structure"` - // PostgreSQL parameters. + // The parameters for PostgreSQL. PostgreSqlParameters *PostgreSqlParameters `type:"structure"` - // Presto parameters. + // The parameters for Presto. PrestoParameters *PrestoParameters `type:"structure"` - // Amazon RDS parameters. + // The parameters for Amazon RDS. RdsParameters *RdsParameters `type:"structure"` - // Amazon Redshift parameters. + // The parameters for Amazon Redshift. RedshiftParameters *RedshiftParameters `type:"structure"` - // S3 parameters. + // The parameters for S3. S3Parameters *S3Parameters `type:"structure"` - // ServiceNow parameters. + // The parameters for ServiceNow. ServiceNowParameters *ServiceNowParameters `type:"structure"` - // Snowflake parameters. + // The parameters for Snowflake. SnowflakeParameters *SnowflakeParameters `type:"structure"` - // Spark parameters. + // The parameters for Spark. SparkParameters *SparkParameters `type:"structure"` - // SQL Server parameters. + // The parameters for SQL Server. SqlServerParameters *SqlServerParameters `type:"structure"` - // Teradata parameters. + // The parameters for Teradata. TeradataParameters *TeradataParameters `type:"structure"` - // Twitter parameters. + // The parameters for Twitter. TwitterParameters *TwitterParameters `type:"structure"` } @@ -19066,13 +19125,13 @@ func (s *DecimalParameter) SetValues(v []*float64) *DecimalParameter { type DeleteAccountCustomizationInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that you want to delete QuickSight - // customizations from in this Amazon Web Services Region;. + // The ID for the Amazon Web Services account that you want to delete Amazon + // QuickSight customizations from in this Amazon Web Services Region;. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The QuickSight namespace that you're deleting the customizations from. + // The Amazon QuickSight namespace that you're deleting the customizations from. Namespace *string `location:"querystring" locationName:"namespace" type:"string"` } @@ -19154,7 +19213,7 @@ type DeleteAnalysisInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; where you want to delete an analysis. + // The ID of the Amazon Web Services account where you want to delete an analysis. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -19164,8 +19223,8 @@ type DeleteAnalysisInput struct { // restore an analysis after it's deleted. ForceDeleteWithoutRecovery *bool `location:"querystring" locationName:"force-delete-without-recovery" type:"boolean"` - // A value that specifies the number of days that QuickSight waits before it - // deletes the analysis. You can't use this parameter with the ForceDeleteWithoutRecovery + // A value that specifies the number of days that Amazon QuickSight waits before + // it deletes the analysis. You can't use this parameter with the ForceDeleteWithoutRecovery // option in the same API call. The default value is 30. RecoveryWindowInDays *int64 `location:"querystring" locationName:"recovery-window-in-days" min:"7" type:"long"` } @@ -19291,7 +19350,7 @@ func (s *DeleteAnalysisOutput) SetStatus(v int64) *DeleteAnalysisOutput { type DeleteDashboardInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboard that + // The ID of the Amazon Web Services account that contains the dashboard that // you're deleting. // // AwsAccountId is a required field @@ -19413,13 +19472,13 @@ func (s *DeleteDashboardOutput) SetStatus(v int64) *DeleteDashboardOutput { type DeleteDataSetInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. // // DataSetId is a required field DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` @@ -19476,7 +19535,7 @@ type DeleteDataSetOutput struct { Arn *string `type:"string"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. DataSetId *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -19523,13 +19582,13 @@ func (s *DeleteDataSetOutput) SetStatus(v int64) *DeleteDataSetOutput { type DeleteDataSourceInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` @@ -19586,7 +19645,7 @@ type DeleteDataSourceOutput struct { Arn *string `type:"string"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. DataSourceId *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -19866,8 +19925,8 @@ func (s *DeleteFolderOutput) SetStatus(v int64) *DeleteFolderOutput { type DeleteGroupInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -19943,8 +20002,8 @@ func (s *DeleteGroupInput) SetNamespace(v string) *DeleteGroupInput { type DeleteGroupMembershipInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -20106,7 +20165,7 @@ type DeleteIAMPolicyAssignmentInput struct { // AssignmentName is a required field AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` - // The Amazon Web Services account; ID where you want to delete the IAM policy + // The Amazon Web Services account ID where you want to delete the IAMpolicy // assignment. // // AwsAccountId is a required field @@ -20218,8 +20277,8 @@ func (s *DeleteIAMPolicyAssignmentOutput) SetStatus(v int64) *DeleteIAMPolicyAss type DeleteNamespaceInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that you want to delete the QuickSight - // namespace from. + // The ID for the Amazon Web Services account that you want to delete the Amazon + // QuickSight namespace from. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -20317,7 +20376,7 @@ type DeleteTemplateAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the item to delete. + // The ID of the Amazon Web Services account that contains the item to delete. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -20446,7 +20505,7 @@ func (s *DeleteTemplateAliasOutput) SetTemplateId(v string) *DeleteTemplateAlias type DeleteTemplateInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the template that + // The ID of the Amazon Web Services account that contains the template that // you're deleting. // // AwsAccountId is a required field @@ -20573,8 +20632,8 @@ type DeleteThemeAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the theme alias - // to delete. + // The ID of the Amazon Web Services account that contains the theme alias to + // delete. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -20703,7 +20762,7 @@ func (s *DeleteThemeAliasOutput) SetThemeId(v string) *DeleteThemeAliasOutput { type DeleteThemeInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the theme that you're + // The ID of the Amazon Web Services account that contains the theme that you're // deleting. // // AwsAccountId is a required field @@ -20827,8 +20886,8 @@ func (s *DeleteThemeOutput) SetThemeId(v string) *DeleteThemeOutput { type DeleteUserByPrincipalIdInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the user is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the user is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -20936,8 +20995,8 @@ func (s *DeleteUserByPrincipalIdOutput) SetStatus(v int64) *DeleteUserByPrincipa type DeleteUserInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the user is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the user is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -21045,21 +21104,21 @@ func (s *DeleteUserOutput) SetStatus(v int64) *DeleteUserOutput { type DescribeAccountCustomizationInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that you want to describe QuickSight - // customizations for. + // The ID for the Amazon Web Services account that you want to describe Amazon + // QuickSight customizations for. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The QuickSight namespace that you want to describe QuickSight customizations - // for. + // The Amazon QuickSight namespace that you want to describe Amazon QuickSight + // customizations for. Namespace *string `location:"querystring" locationName:"namespace" type:"string"` // The Resolved flag works with the other parameters to determine which view - // of QuickSight customizations is returned. You can add this flag to your command - // to use the same view that QuickSight uses to identify which customizations - // to apply to the console. Omit this flag, or set it to no-resolved, to reveal - // customizations that are configured at different levels. + // of Amazon QuickSight customizations is returned. You can add this flag to + // your command to use the same view that Amazon QuickSight uses to identify + // which customizations to apply to the console. Omit this flag, or set it to + // no-resolved, to reveal customizations that are configured at different levels. Resolved *bool `location:"querystring" locationName:"resolved" type:"boolean"` } @@ -21110,18 +21169,18 @@ func (s *DescribeAccountCustomizationInput) SetResolved(v bool) *DescribeAccount type DescribeAccountCustomizationOutput struct { _ struct{} `type:"structure"` - // The QuickSight customizations that exist in the current Amazon Web Services - // Region;. + // The Amazon QuickSight customizations that exist in the current Amazon Web + // Services Region;. AccountCustomization *AccountCustomization `type:"structure"` // The Amazon Resource Name (ARN) of the customization that's associated with - // this Amazon Web Services account;. + // this Amazon Web Services account. Arn *string `type:"string"` - // The ID for the Amazon Web Services account; that you're describing. + // The ID for the Amazon Web Services account that you're describing. AwsAccountId *string `min:"12" type:"string"` - // The QuickSight namespace that you're describing. + // The Amazon QuickSight namespace that you're describing. Namespace *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -21180,7 +21239,7 @@ func (s *DescribeAccountCustomizationOutput) SetStatus(v int64) *DescribeAccount type DescribeAccountSettingsInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that contains the settings that + // The ID for the Amazon Web Services account that contains the settings that // you want to list. // // AwsAccountId is a required field @@ -21222,14 +21281,15 @@ func (s *DescribeAccountSettingsInput) SetAwsAccountId(v string) *DescribeAccoun type DescribeAccountSettingsOutput struct { _ struct{} `type:"structure"` - // The QuickSight settings for this Amazon Web Services account;. This information - // includes the edition of Amazon QuickSight that you subscribed to (Standard - // or Enterprise) and the notification email for the QuickSight subscription. - // In the QuickSight console, the QuickSight subscription is sometimes referred - // to as a QuickSight "account" even though it's technically not an account - // by itself. Instead, it's a subscription to the QuickSight service for your - // Amazon Web Services account;. The edition that you subscribe to applies to - // QuickSight in every Amazon Web Services Region; where you use it. + // The Amazon QuickSight settings for this Amazon Web Services account. This + // information includes the edition of Amazon Amazon QuickSight that you subscribed + // to (Standard or Enterprise) and the notification email for the Amazon QuickSight + // subscription. In the Amazon QuickSight console, the Amazon QuickSight subscription + // is sometimes referred to as a Amazon QuickSight "account" even though it's + // technically not an account by itself. Instead, it's a subscription to the + // Amazon QuickSight service for your Amazon Web Services account. The edition + // that you subscribe to applies to Amazon QuickSight in every Amazon Web Services + // Region; where you use it. AccountSettings *AccountSettings `type:"structure"` // The Amazon Web Services request ID for this operation. @@ -21276,8 +21336,8 @@ type DescribeAnalysisInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the analysis. You - // must be using the Amazon Web Services account; that the analysis is in. + // The ID of the Amazon Web Services account that contains the analysis. You + // must be using the Amazon Web Services account that the analysis is in. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -21378,9 +21438,9 @@ type DescribeAnalysisPermissionsInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the analysis whose + // The ID of the Amazon Web Services account that contains the analysis whose // permissions you're describing. You must be using the Amazon Web Services - // account; that the analysis is in. + // account that the analysis is in. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -21496,7 +21556,7 @@ type DescribeDashboardInput struct { // The alias name. AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` - // The ID of the Amazon Web Services account; that contains the dashboard that + // The ID of the Amazon Web Services account that contains the dashboard that // you're describing. // // AwsAccountId is a required field @@ -21618,13 +21678,13 @@ func (s *DescribeDashboardOutput) SetStatus(v int64) *DescribeDashboardOutput { type DescribeDashboardPermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboard that + // The ID of the Amazon Web Services account that contains the dashboard that // you're describing permissions for. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard, also added to the IAM policy. + // The ID for the dashboard, also added to the IAMpolicy. // // DashboardId is a required field DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` @@ -21736,13 +21796,13 @@ func (s *DescribeDashboardPermissionsOutput) SetStatus(v int64) *DescribeDashboa type DescribeDataSetInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. // // DataSetId is a required field DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` @@ -21836,13 +21896,13 @@ func (s *DescribeDataSetOutput) SetStatus(v int64) *DescribeDataSetOutput { type DescribeDataSetPermissionsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. // // DataSetId is a required field DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` @@ -21899,7 +21959,7 @@ type DescribeDataSetPermissionsOutput struct { DataSetArn *string `type:"string"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. DataSetId *string `type:"string"` // A list of resource permissions on the dataset. @@ -21955,13 +22015,13 @@ func (s *DescribeDataSetPermissionsOutput) SetStatus(v int64) *DescribeDataSetPe type DescribeDataSourceInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` @@ -22055,13 +22115,13 @@ func (s *DescribeDataSourceOutput) SetStatus(v int64) *DescribeDataSourceOutput type DescribeDataSourcePermissionsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` @@ -22118,7 +22178,7 @@ type DescribeDataSourcePermissionsOutput struct { DataSourceArn *string `type:"string"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. DataSourceId *string `type:"string"` // A list of resource permissions on the data source. @@ -22507,8 +22567,8 @@ func (s *DescribeFolderResolvedPermissionsOutput) SetStatus(v int64) *DescribeFo type DescribeGroupInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -22630,7 +22690,7 @@ type DescribeIAMPolicyAssignmentInput struct { // AssignmentName is a required field AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the assignment that + // The ID of the Amazon Web Services account that contains the assignment that // you want to describe. // // AwsAccountId is a required field @@ -22701,7 +22761,7 @@ func (s *DescribeIAMPolicyAssignmentInput) SetNamespace(v string) *DescribeIAMPo type DescribeIAMPolicyAssignmentOutput struct { _ struct{} `type:"structure"` - // Information describing the IAM policy assignment. + // Information describing the IAMpolicy assignment. IAMPolicyAssignment *IAMPolicyAssignment `type:"structure"` // The Amazon Web Services request ID for this operation. @@ -22742,7 +22802,7 @@ func (s *DescribeIAMPolicyAssignmentOutput) SetStatus(v int64) *DescribeIAMPolic type DescribeIngestionInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -22858,7 +22918,7 @@ func (s *DescribeIngestionOutput) SetStatus(v int64) *DescribeIngestionOutput { type DescribeNamespaceInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that contains the QuickSight + // The ID for the Amazon Web Services account that contains the Amazon QuickSight // namespace that you want to describe. // // AwsAccountId is a required field @@ -22971,7 +23031,7 @@ type DescribeTemplateAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the template alias + // The ID of the Amazon Web Services account that contains the template alias // that you're describing. // // AwsAccountId is a required field @@ -23089,7 +23149,7 @@ type DescribeTemplateInput struct { // AliasName parameter. The keyword $PUBLISHED doesn't apply to templates. AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` - // The ID of the Amazon Web Services account; that contains the template that + // The ID of the Amazon Web Services account that contains the template that // you're describing. // // AwsAccountId is a required field @@ -23211,7 +23271,7 @@ func (s *DescribeTemplateOutput) SetTemplate(v *Template) *DescribeTemplateOutpu type DescribeTemplatePermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the template that + // The ID of the Amazon Web Services account that contains the template that // you're describing. // // AwsAccountId is a required field @@ -23334,8 +23394,8 @@ type DescribeThemeAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the theme alias - // that you're describing. + // The ID of the Amazon Web Services account that contains the theme alias that + // you're describing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -23452,7 +23512,7 @@ type DescribeThemeInput struct { // parameter. The keyword $PUBLISHED doesn't apply to themes. AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` - // The ID of the Amazon Web Services account; that contains the theme that you're + // The ID of the Amazon Web Services account that contains the theme that you're // describing. // // AwsAccountId is a required field @@ -23574,7 +23634,7 @@ func (s *DescribeThemeOutput) SetTheme(v *Theme) *DescribeThemeOutput { type DescribeThemePermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the theme that you're + // The ID of the Amazon Web Services account that contains the theme that you're // describing. // // AwsAccountId is a required field @@ -23692,8 +23752,8 @@ func (s *DescribeThemePermissionsOutput) SetThemeId(v string) *DescribeThemePerm type DescribeUserInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the user is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the user is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -24621,13 +24681,13 @@ type GetDashboardEmbedUrlInput struct { // A list of one or more dashboard IDs that you want to add to a session that // includes anonymous users. The IdentityType parameter must be set to ANONYMOUS - // for this to work, because other identity types authenticate as QuickSight - // or IAM users. For example, if you set "--dashboard-id dash_id1 --dashboard-id + // for this to work, because other identity types authenticate as Amazon QuickSight + // or IAMusers. For example, if you set "--dashboard-id dash_id1 --dashboard-id // dash_id2 dash_id3 identity-type ANONYMOUS", the session can access all three // dashboards. AdditionalDashboardIds []*string `location:"querystring" locationName:"additional-dashboard-ids" min:"1" type:"list"` - // The ID for the Amazon Web Services account; that contains the dashboard that + // The ID for the Amazon Web Services account that contains the dashboard that // you're embedding. // // AwsAccountId is a required field @@ -24644,8 +24704,8 @@ type GetDashboardEmbedUrlInput struct { // IdentityType is a required field IdentityType *string `location:"querystring" locationName:"creds-type" type:"string" required:"true" enum:"EmbeddingIdentityType"` - // The Amazon QuickSight namespace that the user virtually belongs to. If you - // are not using an Amazon QuickSight custom namespace, set this to default. + // The Amazon QuickSight namespace that contains the dashboard IDs in this request. + // If you're not using a custom namespace, set Namespace = default. Namespace *string `location:"querystring" locationName:"namespace" type:"string"` // Remove the reset button on the embedded dashboard. The default is FALSE, @@ -24658,11 +24718,11 @@ type GetDashboardEmbedUrlInput struct { // Adds persistence of state for the user session in an embedded dashboard. // Persistence applies to the sheet and the parameter settings. These are control - // settings that the dashboard subscriber (QuickSight reader) chooses while - // viewing the dashboard. If this is set to TRUE, the settings are the same - // when the subscriber reopens the same dashboard URL. The state is stored in - // QuickSight, not in a browser cookie. If this is set to FALSE, the state of - // the user session is not persisted. The default is FALSE. + // settings that the dashboard subscriber (Amazon QuickSight reader) chooses + // while viewing the dashboard. If this is set to TRUE, the settings are the + // same when the subscriber reopens the same dashboard URL. The state is stored + // in Amazon QuickSight, not in a browser cookie. If this is set to FALSE, the + // state of the user session is not persisted. The default is FALSE. StatePersistenceEnabled *bool `location:"querystring" locationName:"state-persistence-enabled" type:"boolean"` // Remove the undo/redo button on the embedded dashboard. The default is FALSE, @@ -24677,10 +24737,10 @@ type GetDashboardEmbedUrlInput struct { // // * Invited nonfederated users // - // * IAM users and IAM role-based sessions authenticated through Federated - // Single Sign-On using SAML, OpenID Connect, or IAM federation. + // * IAMusers and IAMrole-based sessions authenticated through Federated + // Single Sign-On using SAML, OpenID Connect, or IAMfederation. // - // Omit this parameter for users in the third group – IAM users and IAM role-based + // Omit this parameter for users in the third group – IAMusers and IAM role-based // sessions. UserArn *string `location:"querystring" locationName:"user-arn" type:"string"` } @@ -24834,7 +24894,7 @@ func (s *GetDashboardEmbedUrlOutput) SetStatus(v int64) *GetDashboardEmbedUrlOut type GetSessionEmbedUrlInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; associated with your QuickSight + // The ID for the Amazon Web Services account associated with your Amazon QuickSight // subscription. // // AwsAccountId is a required field @@ -24852,10 +24912,10 @@ type GetSessionEmbedUrlInput struct { // * /start/favorites // // * /dashboards/DashboardId - where DashboardId is the actual ID key from - // the QuickSight console URL of the dashboard + // the Amazon QuickSight console URL of the dashboard // // * /analyses/AnalysisId - where AnalysisId is the actual ID key from the - // QuickSight console URL of the analysis + // Amazon QuickSight console URL of the analysis EntryPoint *string `location:"querystring" locationName:"entry-point" min:"1" type:"string"` // How many minutes the session is valid. The session lifetime must be 15-600 @@ -24939,9 +24999,9 @@ type GetSessionEmbedUrlOutput struct { _ struct{} `type:"structure"` // A single-use URL that you can put into your server-side web page to embed - // your QuickSight session. This URL is valid for 5 minutes. The API operation - // provides the URL with an auth_code value that enables one (and only one) - // sign-on to a user session that is valid for 10 hours. + // your Amazon QuickSight session. This URL is valid for 5 minutes. The API + // operation provides the URL with an auth_code value that enables one (and + // only one) sign-on to a user session that is valid for 10 hours. EmbedUrl *string `type:"string" sensitive:"true"` // The Amazon Web Services request ID for this operation. @@ -25103,13 +25163,13 @@ type IAMPolicyAssignment struct { // Assignment status. AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. AwsAccountId *string `min:"12" type:"string"` // Identities. Identities map[string][]*string `type:"map"` - // The Amazon Resource Name (ARN) for the IAM policy. + // The Amazon Resource Name (ARN) for the IAMpolicy. PolicyArn *string `type:"string"` } @@ -25159,7 +25219,7 @@ func (s *IAMPolicyAssignment) SetPolicyArn(v string) *IAMPolicyAssignment { return s } -// IAM policy assignment summary. +// IAMpolicy assignment summary. type IAMPolicyAssignmentSummary struct { _ struct{} `type:"structure"` @@ -25658,7 +25718,7 @@ func (s *InvalidParameterValueException) RequestID() string { return s.RespMetadata.RequestID } -// Jira parameters. +// The parameters for Jira. type JiraParameters struct { _ struct{} `type:"structure"` @@ -25813,7 +25873,8 @@ type JoinKeyProperties struct { _ struct{} `type:"structure"` // A value that indicates that a row in a table is uniquely identified by the - // columns in a join key. This is used by QuickSight to optimize query performance. + // columns in a join key. This is used by Amazon QuickSight to optimize query + // performance. UniqueKey *bool `type:"boolean"` } @@ -25898,7 +25959,7 @@ func (s *LimitExceededException) RequestID() string { type ListAnalysesInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the analyses. + // The ID of the Amazon Web Services account that contains the analyses. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -26010,7 +26071,7 @@ func (s *ListAnalysesOutput) SetStatus(v int64) *ListAnalysesOutput { type ListDashboardVersionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboard that + // The ID of the Amazon Web Services account that contains the dashboard that // you're listing versions for. // // AwsAccountId is a required field @@ -26140,7 +26201,7 @@ func (s *ListDashboardVersionsOutput) SetStatus(v int64) *ListDashboardVersionsO type ListDashboardsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboards that + // The ID of the Amazon Web Services account that contains the dashboards that // you're listing. // // AwsAccountId is a required field @@ -26204,7 +26265,7 @@ type ListDashboardsOutput struct { _ struct{} `type:"structure"` // A structure that contains all of the dashboards in your Amazon Web Services - // account;. This structure provides basic information about the dashboards. + // account. This structure provides basic information about the dashboards. DashboardSummaryList []*DashboardSummary `type:"list"` // The token for the next set of results, or null if there are no more results. @@ -26254,7 +26315,7 @@ func (s *ListDashboardsOutput) SetStatus(v int64) *ListDashboardsOutput { type ListDataSetsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -26366,7 +26427,7 @@ func (s *ListDataSetsOutput) SetStatus(v int64) *ListDataSetsOutput { type ListDataSourcesInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -26721,8 +26782,8 @@ func (s *ListFoldersOutput) SetStatus(v int64) *ListFoldersOutput { type ListGroupMembershipsInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -26869,8 +26930,8 @@ func (s *ListGroupMembershipsOutput) SetStatus(v int64) *ListGroupMembershipsOut type ListGroupsInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -27000,7 +27061,7 @@ func (s *ListGroupsOutput) SetStatus(v int64) *ListGroupsOutput { type ListIAMPolicyAssignmentsForUserInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the assignments. + // The ID of the Amazon Web Services account that contains the assignments. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -27149,8 +27210,7 @@ type ListIAMPolicyAssignmentsInput struct { // The status of the assignments. AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // The ID of the Amazon Web Services account; that contains these IAM policy - // assignments. + // The ID of the Amazon Web Services account that contains these IAMpolicy assignments. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -27235,7 +27295,7 @@ func (s *ListIAMPolicyAssignmentsInput) SetNextToken(v string) *ListIAMPolicyAss type ListIAMPolicyAssignmentsOutput struct { _ struct{} `type:"structure"` - // Information describing the IAM policy assignments. + // Information describing the IAMpolicy assignments. IAMPolicyAssignments []*IAMPolicyAssignmentSummary `type:"list"` // The token for the next set of results, or null if there are no more results. @@ -27285,7 +27345,7 @@ func (s *ListIAMPolicyAssignmentsOutput) SetStatus(v int64) *ListIAMPolicyAssign type ListIngestionsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -27414,7 +27474,7 @@ func (s *ListIngestionsOutput) SetStatus(v int64) *ListIngestionsOutput { type ListNamespacesInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that contains the QuickSight + // The ID for the Amazon Web Services account that contains the Amazon QuickSight // namespaces that you want to list. // // AwsAccountId is a required field @@ -27477,7 +27537,7 @@ func (s *ListNamespacesInput) SetNextToken(v string) *ListNamespacesInput { type ListNamespacesOutput struct { _ struct{} `type:"structure"` - // The information about the namespaces in this Amazon Web Services account;. + // The information about the namespaces in this Amazon Web Services account. // The response includes the namespace ARN, name, Amazon Web Services Region;, // notification email address, creation status, and identity store. Namespaces []*NamespaceInfoV2 `type:"list"` @@ -27613,7 +27673,7 @@ func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput type ListTemplateAliasesInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the template aliases + // The ID of the Amazon Web Services account that contains the template aliases // that you're listing. // // AwsAccountId is a required field @@ -27743,7 +27803,7 @@ func (s *ListTemplateAliasesOutput) SetTemplateAliasList(v []*TemplateAlias) *Li type ListTemplateVersionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the templates that + // The ID of the Amazon Web Services account that contains the templates that // you're listing. // // AwsAccountId is a required field @@ -27873,7 +27933,7 @@ func (s *ListTemplateVersionsOutput) SetTemplateVersionSummaryList(v []*Template type ListTemplatesInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the templates that + // The ID of the Amazon Web Services account that contains the templates that // you're listing. // // AwsAccountId is a required field @@ -27986,7 +28046,7 @@ func (s *ListTemplatesOutput) SetTemplateSummaryList(v []*TemplateSummary) *List type ListThemeAliasesInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the theme aliases + // The ID of the Amazon Web Services account that contains the theme aliases // that you're listing. // // AwsAccountId is a required field @@ -28116,8 +28176,8 @@ func (s *ListThemeAliasesOutput) SetThemeAliasList(v []*ThemeAlias) *ListThemeAl type ListThemeVersionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the themes that - // you're listing. + // The ID of the Amazon Web Services account that contains the themes that you're + // listing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -28246,8 +28306,8 @@ func (s *ListThemeVersionsOutput) SetThemeVersionSummaryList(v []*ThemeVersionSu type ListThemesInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the themes that - // you're listing. + // The ID of the Amazon Web Services account that contains the themes that you're + // listing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -28374,8 +28434,8 @@ func (s *ListThemesOutput) SetThemeSummaryList(v []*ThemeSummary) *ListThemesOut type ListUserGroupsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID that the user is in. Currently, you use - // the ID for the Amazon Web Services account; that contains your Amazon QuickSight + // The Amazon Web Services account ID that the user is in. Currently, you use + // the ID for the Amazon Web Services account that contains your Amazon QuickSight // account. // // AwsAccountId is a required field @@ -28522,8 +28582,8 @@ func (s *ListUserGroupsOutput) SetStatus(v int64) *ListUserGroupsOutput { type ListUsersInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the user is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the user is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -28741,6 +28801,9 @@ func (s *LogicalTable) SetSource(v *LogicalTableSource) *LogicalTable { type LogicalTableSource struct { _ struct{} `type:"structure"` + // The Amazon Resource Number (ARN) of the parent dataset. + DataSetArn *string `type:"string"` + // Specifies the result of a join of two logical tables. JoinInstruction *JoinInstruction `type:"structure"` @@ -28776,6 +28839,12 @@ func (s *LogicalTableSource) Validate() error { return nil } +// SetDataSetArn sets the DataSetArn field's value. +func (s *LogicalTableSource) SetDataSetArn(v string) *LogicalTableSource { + s.DataSetArn = &v + return s +} + // SetJoinInstruction sets the JoinInstruction field's value. func (s *LogicalTableSource) SetJoinInstruction(v *JoinInstruction) *LogicalTableSource { s.JoinInstruction = v @@ -28871,7 +28940,7 @@ func (s *MarginStyle) SetShow(v bool) *MarginStyle { return s } -// MariaDB parameters. +// The parameters for MariaDB. type MariaDbParameters struct { _ struct{} `type:"structure"` @@ -28981,7 +29050,7 @@ func (s *MemberIdArnPair) SetMemberId(v string) *MemberIdArnPair { return s } -// MySQL parameters. +// The parameters for MySQL. type MySqlParameters struct { _ struct{} `type:"structure"` @@ -29159,7 +29228,7 @@ func (s *NamespaceInfoV2) SetNamespaceError(v *NamespaceError) *NamespaceInfoV2 return s } -// Oracle parameters. +// The parameters for Oracle. type OracleParameters struct { _ struct{} `type:"structure"` @@ -29277,20 +29346,20 @@ func (s *OutputColumn) SetType(v string) *OutputColumn { return s } -// A list of QuickSight parameters and the list's override values. +// A list of Amazon QuickSight parameters and the list's override values. type Parameters struct { _ struct{} `type:"structure"` - // Date-time parameters. + // The parameters that have a data type of date-time. DateTimeParameters []*DateTimeParameter `type:"list"` - // Decimal parameters. + // The parameters that have a data type of decimal. DecimalParameters []*DecimalParameter `type:"list"` - // Integer parameters. + // The parameters that have a data type of integer. IntegerParameters []*IntegerParameter `type:"list"` - // String parameters. + // The parameters that have a data type of string. StringParameters []*StringParameter `type:"list"` } @@ -29447,7 +29516,7 @@ func (s *PhysicalTable) SetS3Source(v *S3Source) *PhysicalTable { return s } -// PostgreSQL parameters. +// The parameters for PostgreSQL. type PostgreSqlParameters struct { _ struct{} `type:"structure"` @@ -29582,7 +29651,7 @@ func (s *PreconditionNotMetException) RequestID() string { return s.RespMetadata.RequestID } -// Presto parameters. +// The parameters for Presto. type PrestoParameters struct { _ struct{} `type:"structure"` @@ -29736,7 +29805,7 @@ func (s *QueueInfo) SetWaitingOnIngestion(v string) *QueueInfo { return s } -// Amazon RDS parameters. +// The parameters for Amazon RDS. type RdsParameters struct { _ struct{} `type:"structure"` @@ -29795,8 +29864,8 @@ func (s *RdsParameters) SetInstanceId(v string) *RdsParameters { return s } -// Amazon Redshift parameters. The ClusterId field can be blank if Host and -// Port are both set. The Host and Port fields can be blank if the ClusterId +// The parameters for Amazon Redshift. The ClusterId field can be blank if Host +// and Port are both set. The Host and Port fields can be blank if the ClusterId // field is set. type RedshiftParameters struct { _ struct{} `type:"structure"` @@ -29875,17 +29944,17 @@ func (s *RedshiftParameters) SetPort(v int64) *RedshiftParameters { type RegisterUserInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the user is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the user is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The URL of the custom OpenID Connect (OIDC) provider that provides identity - // to let a user federate into QuickSight with an associated AWS Identity and - // Access Management (IAM) role. This parameter should only be used when ExternalLoginFederationProviderType - // parameter is set to CUSTOM_OIDC. + // to let a user federate into Amazon QuickSight with an associated Identity + // and Access Management(IAM) role. This parameter should only be used when + // ExternalLoginFederationProviderType parameter is set to CUSTOM_OIDC. CustomFederationProviderUrl *string `type:"string"` // (Enterprise edition only) The name of the custom permissions profile that @@ -29904,14 +29973,15 @@ type RegisterUserInput struct { // // A set of custom permissions includes any combination of these restrictions. // Currently, you need to create the profile names for custom permission sets - // by using the QuickSight console. Then, you use the RegisterUser API operation - // to assign the named set of permissions to a QuickSight user. + // by using the Amazon QuickSight console. Then, you use the RegisterUser API + // operation to assign the named set of permissions to a Amazon QuickSight user. // - // QuickSight custom permissions are applied through IAM policies. Therefore, - // they override the permissions typically granted by assigning QuickSight users - // to one of the default security cohorts in QuickSight (admin, author, reader). + // Amazon QuickSight custom permissions are applied through IAMpolicies. Therefore, + // they override the permissions typically granted by assigning Amazon QuickSight + // users to one of the default security cohorts in Amazon QuickSight (admin, + // author, reader). // - // This feature is available only to QuickSight Enterprise edition subscriptions. + // This feature is available only to Amazon QuickSight Enterprise edition subscriptions. CustomPermissionsName *string `min:"1" type:"string"` // The email address of the user that you want to register. @@ -29920,9 +29990,9 @@ type RegisterUserInput struct { Email *string `type:"string" required:"true"` // The type of supported external login provider that provides identity to let - // a user federate into Amazon QuickSight with an associated AWS Identity and - // Access Management (IAM) role. The type of supported external login provider - // can be one of the following. + // a user federate into Amazon QuickSight with an associated Identity and Access + // Management(IAM) role. The type of supported external login provider can be + // one of the following. // // * COGNITO: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. // When choosing the COGNITO provider type, don’t use the "CustomFederationProviderUrl" @@ -29936,13 +30006,13 @@ type RegisterUserInput struct { // The identity ID for a user in the external login provider. ExternalLoginId *string `type:"string"` - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. + // The ARN of the IAMuser or role that you are registering with Amazon QuickSight. IamArn *string `type:"string"` // Amazon QuickSight supports several ways of managing the identity of users. // This parameter accepts two values: // - // * IAM: A user whose identity maps to an existing IAM user or role. + // * IAM: A user whose identity maps to an existing IAMuser or role. // // * QUICKSIGHT: A user whose identity is owned and managed internally by // Amazon QuickSight. @@ -29956,11 +30026,11 @@ type RegisterUserInput struct { Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` // You need to use this parameter only when you register one or more users using - // an assumed IAM role. You don't need to provide the session name for other - // scenarios, for example when you are registering an IAM user or an Amazon - // QuickSight user. You can register multiple users using the same IAM role - // if each user has a different session name. For more information on assuming - // IAM roles, see assume-role (https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role.html) + // an assumed IAMrole. You don't need to provide the session name for other + // scenarios, for example when you are registering an IAMuser or an Amazon QuickSight + // user. You can register multiple users using the same IAMrole if each user + // has a different session name. For more information on assuming IAMroles, + // see assume-role (https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role.html) // in the AWS CLI Reference. SessionName *string `min:"2" type:"string"` @@ -30628,7 +30698,7 @@ func (s *ResourceNotFoundException) RequestID() string { type ResourcePermission struct { _ struct{} `type:"structure"` - // The IAM action to grant or revoke permissions on. + // The IAMaction to grant or revoke permissions on. // // Actions is a required field Actions []*string `min:"1" type:"list" required:"true"` @@ -30641,8 +30711,8 @@ type ResourcePermission struct { // * The ARN of an Amazon QuickSight user, group, or namespace associated // with an analysis, dashboard, template, or theme. (This is common.) // - // * The ARN of an Amazon Web Services account; root: This is an IAM ARN - // rather than a QuickSight ARN. Use this option only to share resources + // * The ARN of an Amazon Web Services account root: This is an IAMARN rather + // than a Amazon QuickSight ARN. Use this option only to share resources // (templates) across Amazon Web Services accounts. (This is less common.) // // Principal is a required field @@ -30763,7 +30833,7 @@ type RestoreAnalysisInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the analysis. + // The ID of the Amazon Web Services account that contains the analysis. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -30923,7 +30993,7 @@ type RowLevelPermissionDataSet struct { // The namespace associated with the dataset that contains permissions for RLS. Namespace *string `type:"string"` - // The type of permissions to use when interpretting the permissions for RLS. + // The type of permissions to use when interpreting the permissions for RLS. // DENY_ACCESS is included for backward compatibility only. // // PermissionPolicy is a required field @@ -31133,12 +31203,12 @@ func (s *RowLevelPermissionTagRule) SetTagMultiValueDelimiter(v string) *RowLeve return s } -// S3 parameters. +// The parameters for S3. type S3Parameters struct { _ struct{} `type:"structure"` // Location of the Amazon S3 manifest file. This is NULL if the manifest file - // was uploaded into QuickSight. + // was uploaded into Amazon QuickSight. // // ManifestFileLocation is a required field ManifestFileLocation *ManifestFileLocation `type:"structure" required:"true"` @@ -31189,7 +31259,8 @@ type S3Source struct { // A physical table type for an S3 data source. // - // For non-JSON files, only STRING data types are supported in input columns. + // For files that aren't JSON, only STRING data types are supported in input + // columns. // // InputColumns is a required field InputColumns []*InputColumn `min:"1" type:"list" required:"true"` @@ -31263,7 +31334,7 @@ func (s *S3Source) SetUploadSettings(v *UploadSettings) *S3Source { type SearchAnalysesInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the analyses that + // The ID of the Amazon Web Services account that contains the analyses that // you're searching for. // // AwsAccountId is a required field @@ -31393,7 +31464,7 @@ func (s *SearchAnalysesOutput) SetStatus(v int64) *SearchAnalysesOutput { type SearchDashboardsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the user whose dashboards + // The ID of the Amazon Web Services account that contains the user whose dashboards // you're searching for. // // AwsAccountId is a required field @@ -31663,7 +31734,7 @@ func (s *SearchFoldersOutput) SetStatus(v int64) *SearchFoldersOutput { return s } -// ServiceNow parameters. +// The parameters for ServiceNow. type ServiceNowParameters struct { _ struct{} `type:"structure"` @@ -31832,8 +31903,8 @@ func (s *SessionTag) SetValue(v string) *SessionTag { type Sheet struct { _ struct{} `type:"structure"` - // The name of a sheet. This name is displayed on the sheet's tab in the QuickSight - // console. + // The name of a sheet. This name is displayed on the sheet's tab in the Amazon + // QuickSight console. Name *string `type:"string"` // The unique identifier associated with a sheet. @@ -31919,7 +31990,7 @@ func (s *SheetStyle) SetTileLayout(v *TileLayoutStyle) *SheetStyle { return s } -// Snowflake parameters. +// The parameters for Snowflake. type SnowflakeParameters struct { _ struct{} `type:"structure"` @@ -31992,7 +32063,7 @@ func (s *SnowflakeParameters) SetWarehouse(v string) *SnowflakeParameters { return s } -// Spark parameters. +// The parameters for Spark. type SparkParameters struct { _ struct{} `type:"structure"` @@ -32051,7 +32122,7 @@ func (s *SparkParameters) SetPort(v int64) *SparkParameters { return s } -// SQL Server parameters. +// The parameters for SQL Server. type SqlServerParameters struct { _ struct{} `type:"structure"` @@ -32127,7 +32198,7 @@ func (s *SqlServerParameters) SetPort(v int64) *SqlServerParameters { return s } -// Secure Socket Layer (SSL) properties that apply when QuickSight connects +// Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects // to your underlying data source. type SslProperties struct { _ struct{} `type:"structure"` @@ -32427,7 +32498,7 @@ func (s *TagResourceOutput) SetStatus(v int64) *TagResourceOutput { return s } -// A template object. A template is an entity in QuickSight that encapsulates +// A template object. A template is an entity in Amazon QuickSight that encapsulates // the metadata required to create an analysis and that you can use to create // a dashboard. A template adds a layer of abstraction by using placeholders // to replace the dataset associated with an analysis. You can use templates @@ -32453,7 +32524,7 @@ type Template struct { Name *string `min:"1" type:"string"` // The ID for the template. This is unique per Amazon Web Services Region; for - // each Amazon Web Services account;. + // each Amazon Web Services account. TemplateId *string `min:"1" type:"string"` // A structure describing the versions of the template. @@ -32760,7 +32831,7 @@ type TemplateSummary struct { Name *string `min:"1" type:"string"` // The ID of the template. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. TemplateId *string `min:"1" type:"string"` } @@ -32970,7 +33041,7 @@ func (s *TemplateVersionSummary) SetVersionNumber(v int64) *TemplateVersionSumma return s } -// Teradata parameters. +// The parameters for Teradata. type TeradataParameters struct { _ struct{} `type:"structure"` @@ -33264,7 +33335,7 @@ type ThemeSummary struct { Name *string `min:"1" type:"string"` // The ID of the theme. This ID is unique per Amazon Web Services Region; for - // each Amazon Web Services account;. + // each Amazon Web Services account. ThemeId *string `min:"1" type:"string"` } @@ -33322,7 +33393,7 @@ type ThemeVersion struct { Arn *string `type:"string"` // The Amazon QuickSight-defined ID of the theme that a custom theme inherits - // from. All themes initially inherit from a default QuickSight theme. + // from. All themes initially inherit from a default Amazon QuickSight theme. BaseThemeId *string `min:"1" type:"string"` // The theme configuration, which contains all the theme display properties. @@ -33602,6 +33673,9 @@ type TransformOperation struct { // An operation that tags a column with additional information. TagColumnOperation *TagColumnOperation `type:"structure"` + + // A transform operation that removes tags associated with a column. + UntagColumnOperation *UntagColumnOperation `type:"structure"` } // String returns the string representation @@ -33647,6 +33721,11 @@ func (s *TransformOperation) Validate() error { invalidParams.AddNested("TagColumnOperation", err.(request.ErrInvalidParams)) } } + if s.UntagColumnOperation != nil { + if err := s.UntagColumnOperation.Validate(); err != nil { + invalidParams.AddNested("UntagColumnOperation", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -33690,7 +33769,13 @@ func (s *TransformOperation) SetTagColumnOperation(v *TagColumnOperation) *Trans return s } -// Twitter parameters. +// SetUntagColumnOperation sets the UntagColumnOperation field's value. +func (s *TransformOperation) SetUntagColumnOperation(v *UntagColumnOperation) *TransformOperation { + s.UntagColumnOperation = v + return s +} + +// The parameters for Twitter. type TwitterParameters struct { _ struct{} `type:"structure"` @@ -33924,9 +34009,9 @@ func (s *UIColorPalette) SetWarningForeground(v string) *UIColorPalette { // This error indicates that you are calling an embedding operation in Amazon // QuickSight without the required pricing plan on your Amazon Web Services -// account;. Before you can use embedding for anonymous users, a QuickSight -// administrator needs to add capacity pricing to QuickSight. You can do this -// on the Manage QuickSight page. +// account. Before you can use embedding for anonymous users, a Amazon QuickSight +// administrator needs to add capacity pricing to Amazon QuickSight. You can +// do this on the Manage Amazon QuickSight page. // // After capacity pricing is added, you can use the GetDashboardEmbedUrl API // operation with the --identity-type ANONYMOUS option. @@ -33990,7 +34075,7 @@ func (s *UnsupportedPricingPlanException) RequestID() string { // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. -// Amazon QuickSight currently has Standard Edition and Enterprise Edition. +// Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. type UnsupportedUserEditionException struct { _ struct{} `type:"structure"` @@ -34050,6 +34135,62 @@ func (s *UnsupportedUserEditionException) RequestID() string { return s.RespMetadata.RequestID } +// A transform operation that removes tags associated with a column. +type UntagColumnOperation struct { + _ struct{} `type:"structure"` + + // The column that this operation acts on. + // + // ColumnName is a required field + ColumnName *string `min:"1" type:"string" required:"true"` + + // The column tags to remove from this column. + // + // TagNames is a required field + TagNames []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagColumnOperation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagColumnOperation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagColumnOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagColumnOperation"} + if s.ColumnName == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnName")) + } + if s.ColumnName != nil && len(*s.ColumnName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnName", 1)) + } + if s.TagNames == nil { + invalidParams.Add(request.NewErrParamRequired("TagNames")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumnName sets the ColumnName field's value. +func (s *UntagColumnOperation) SetColumnName(v string) *UntagColumnOperation { + s.ColumnName = &v + return s +} + +// SetTagNames sets the TagNames field's value. +func (s *UntagColumnOperation) SetTagNames(v []*string) *UntagColumnOperation { + s.TagNames = v + return s +} + type UntagResourceInput struct { _ struct{} `type:"structure"` @@ -34144,19 +34285,19 @@ func (s *UntagResourceOutput) SetStatus(v int64) *UntagResourceOutput { type UpdateAccountCustomizationInput struct { _ struct{} `type:"structure"` - // The QuickSight customizations you're updating in the current Amazon Web Services - // Region;. + // The Amazon QuickSight customizations you're updating in the current Amazon + // Web Services Region;. // // AccountCustomization is a required field AccountCustomization *AccountCustomization `type:"structure" required:"true"` - // The ID for the Amazon Web Services account; that you want to update QuickSight - // customizations for. + // The ID for the Amazon Web Services account that you want to update Amazon + // QuickSight customizations for. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The namespace that you want to update QuickSight customizations for. + // The namespace that you want to update Amazon QuickSight customizations for. Namespace *string `location:"querystring" locationName:"namespace" type:"string"` } @@ -34210,16 +34351,16 @@ func (s *UpdateAccountCustomizationInput) SetNamespace(v string) *UpdateAccountC type UpdateAccountCustomizationOutput struct { _ struct{} `type:"structure"` - // The QuickSight customizations you're updating in the current Amazon Web Services - // Region;. + // The Amazon QuickSight customizations you're updating in the current Amazon + // Web Services Region;. AccountCustomization *AccountCustomization `type:"structure"` // The Amazon Resource Name (ARN) for the updated customization for this Amazon - // Web Services account;. + // Web Services account. Arn *string `type:"string"` - // The ID for the Amazon Web Services account; that you want to update QuickSight - // customizations for. + // The ID for the Amazon Web Services account that you want to update Amazon + // QuickSight customizations for. AwsAccountId *string `min:"12" type:"string"` // The namespace associated with the customization that you're updating. @@ -34281,22 +34422,22 @@ func (s *UpdateAccountCustomizationOutput) SetStatus(v int64) *UpdateAccountCust type UpdateAccountSettingsInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that contains the QuickSight + // The ID for the Amazon Web Services account that contains the Amazon QuickSight // settings that you want to list. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The default namespace for this Amazon Web Services account;. Currently, the + // The default namespace for this Amazon Web Services account. Currently, the // default is default. Identity and Access Management (IAM) users that register - // for the first time with QuickSight provide an email that becomes associated + // for the first time with Amazon QuickSight provide an email that becomes associated // with the default namespace. // // DefaultNamespace is a required field DefaultNamespace *string `type:"string" required:"true"` - // The email address that you want QuickSight to send notifications to regarding - // your Amazon Web Services account; or QuickSight subscription. + // The email address that you want Amazon QuickSight to send notifications to + // regarding your Amazon Web Services account or Amazon QuickSight subscription. NotificationEmail *string `type:"string"` } @@ -34388,14 +34529,14 @@ type UpdateAnalysisInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the analysis that + // The ID of the Amazon Web Services account that contains the analysis that // you're updating. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // A descriptive name for the analysis that you're updating. This name displays - // for the analysis in the QuickSight console. + // for the analysis in the Amazon QuickSight console. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -34412,8 +34553,8 @@ type UpdateAnalysisInput struct { SourceEntity *AnalysisSourceEntity `type:"structure" required:"true"` // The Amazon Resource Name (ARN) for the theme to apply to the analysis that - // you're creating. To see the theme in the QuickSight console, make sure that - // you have access to it. + // you're creating. To see the theme in the Amazon QuickSight console, make + // sure that you have access to it. ThemeArn *string `type:"string"` } @@ -34572,8 +34713,8 @@ type UpdateAnalysisPermissionsInput struct { // AnalysisId is a required field AnalysisId *string `location:"uri" locationName:"AnalysisId" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the analysis whose - // permissions you're updating. You must be using the Amazon Web Services account; + // The ID of the Amazon Web Services account that contains the analysis whose + // permissions you're updating. You must be using the Amazon Web Services account // that the analysis is in. // // AwsAccountId is a required field @@ -34727,7 +34868,7 @@ func (s *UpdateAnalysisPermissionsOutput) SetStatus(v int64) *UpdateAnalysisPerm type UpdateDashboardInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboard that + // The ID of the Amazon Web Services account that contains the dashboard that // you're updating. // // AwsAccountId is a required field @@ -34741,7 +34882,7 @@ type UpdateDashboardInput struct { // Options for publishing the dashboard when you create it: // // * AvailabilityStatus for AdHocFilteringOption - This status can be either - // ENABLED or DISABLED. When this is set to DISABLED, QuickSight disables + // ENABLED or DISABLED. When this is set to DISABLED, Amazon QuickSight disables // the left filter pane on the published dashboard, which can be used for // ad hoc (one-time) filtering. This option is ENABLED by default. // @@ -34769,8 +34910,8 @@ type UpdateDashboardInput struct { // entity. If you need to update a dashboard from an analysis, first convert // the analysis to a template by using the CreateTemplate API operation. For // SourceTemplate, specify the Amazon Resource Name (ARN) of the source template. - // The SourceTemplate ARN can contain any Amazon Web Services account; and any - // QuickSight-supported Amazon Web Services Region;. + // The SourceTemplate ARN can contain any Amazon Web Services account and any + // Amazon QuickSight-supported Amazon Web Services Region;. // // Use the DataSetReferences entity within SourceTemplate to list the replacement // datasets for the placeholders listed in the original. The schema in each @@ -34782,7 +34923,7 @@ type UpdateDashboardInput struct { // The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. // If you add a value for this field, it overrides the value that was originally // associated with the entity. The theme ARN must exist in the same Amazon Web - // Services account; where you create the dashboard. + // Services account where you create the dashboard. ThemeArn *string `type:"string"` // A description for the first version of the dashboard being created. @@ -34962,7 +35103,7 @@ func (s *UpdateDashboardOutput) SetVersionArn(v string) *UpdateDashboardOutput { type UpdateDashboardPermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboard whose + // The ID of the Amazon Web Services account that contains the dashboard whose // permissions you're updating. // // AwsAccountId is a required field @@ -35118,7 +35259,7 @@ func (s *UpdateDashboardPermissionsOutput) SetStatus(v int64) *UpdateDashboardPe type UpdateDashboardPublishedVersionInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the dashboard that + // The ID of the Amazon Web Services account that contains the dashboard that // you're updating. // // AwsAccountId is a required field @@ -35244,24 +35385,28 @@ func (s *UpdateDashboardPublishedVersionOutput) SetStatus(v int64) *UpdateDashbo type UpdateDataSetInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Groupings of columns that work together in certain QuickSight features. Currently, - // only geospatial hierarchy is supported. + // Groupings of columns that work together in certain Amazon QuickSight features. + // Currently, only geospatial hierarchy is supported. ColumnGroups []*ColumnGroup `min:"1" type:"list"` // A set of one or more definitions of a ColumnLevelPermissionRule . ColumnLevelPermissionRules []*ColumnLevelPermissionRule `min:"1" type:"list"` // The ID for the dataset that you want to update. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. // // DataSetId is a required field DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // The usage configuration to apply to child datasets that reference this dataset + // as a source. + DataSetUsageConfiguration *DataSetUsageConfiguration `type:"structure"` + // The folder that contains fields and nested subfolders for your dataset. FieldFolders map[string]*FieldFolder `type:"map"` @@ -35282,7 +35427,7 @@ type UpdateDataSetInput struct { // Declares the physical tables that are available in the underlying data sources. // // PhysicalTableMap is a required field - PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map" required:"true"` + PhysicalTableMap map[string]*PhysicalTable `type:"map" required:"true"` // The row-level security configuration for the data you want to create. RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` @@ -35338,9 +35483,6 @@ func (s *UpdateDataSetInput) Validate() error { if s.PhysicalTableMap == nil { invalidParams.Add(request.NewErrParamRequired("PhysicalTableMap")) } - if s.PhysicalTableMap != nil && len(s.PhysicalTableMap) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PhysicalTableMap", 1)) - } if s.ColumnGroups != nil { for i, v := range s.ColumnGroups { if v == nil { @@ -35422,6 +35564,12 @@ func (s *UpdateDataSetInput) SetDataSetId(v string) *UpdateDataSetInput { return s } +// SetDataSetUsageConfiguration sets the DataSetUsageConfiguration field's value. +func (s *UpdateDataSetInput) SetDataSetUsageConfiguration(v *DataSetUsageConfiguration) *UpdateDataSetInput { + s.DataSetUsageConfiguration = v + return s +} + // SetFieldFolders sets the FieldFolders field's value. func (s *UpdateDataSetInput) SetFieldFolders(v map[string]*FieldFolder) *UpdateDataSetInput { s.FieldFolders = v @@ -35471,7 +35619,7 @@ type UpdateDataSetOutput struct { Arn *string `type:"string"` // The ID for the dataset that you want to create. This ID is unique per Amazon - // Web Services Region; for each Amazon Web Services account;. + // Web Services Region; for each Amazon Web Services account. DataSetId *string `type:"string"` // The ARN for the ingestion, which is triggered as a result of dataset creation @@ -35538,13 +35686,13 @@ func (s *UpdateDataSetOutput) SetStatus(v int64) *UpdateDataSetOutput { type UpdateDataSetPermissionsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID for the dataset whose permissions you want to update. This ID is unique - // per Amazon Web Services Region; for each Amazon Web Services account;. + // per Amazon Web Services Region; for each Amazon Web Services account. // // DataSetId is a required field DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` @@ -35645,7 +35793,7 @@ type UpdateDataSetPermissionsOutput struct { DataSetArn *string `type:"string"` // The ID for the dataset whose permissions you want to update. This ID is unique - // per Amazon Web Services Region; for each Amazon Web Services account;. + // per Amazon Web Services Region; for each Amazon Web Services account. DataSetId *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -35692,22 +35840,23 @@ func (s *UpdateDataSetPermissionsOutput) SetStatus(v int64) *UpdateDataSetPermis type UpdateDataSourceInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The credentials that QuickSight that uses to connect to your underlying source. - // Currently, only credentials based on user name and password are supported. + // The credentials that Amazon QuickSight that uses to connect to your underlying + // source. Currently, only credentials based on user name and password are supported. Credentials *DataSourceCredentials `type:"structure" sensitive:"true"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` - // The parameters that QuickSight uses to connect to your underlying source. + // The parameters that Amazon QuickSight uses to connect to your underlying + // source. DataSourceParameters *DataSourceParameters `type:"structure"` // A display name for the data source. @@ -35715,11 +35864,11 @@ type UpdateDataSourceInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // Secure Socket Layer (SSL) properties that apply when QuickSight connects + // Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects // to your underlying source. SslProperties *SslProperties `type:"structure"` - // Use this parameter only when you want QuickSight to use a VPC connection + // Use this parameter only when you want Amazon QuickSight to use a VPC connection // when connecting to your underlying source. VpcConnectionProperties *VpcConnectionProperties `type:"structure"` } @@ -35826,7 +35975,7 @@ type UpdateDataSourceOutput struct { Arn *string `type:"string"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. DataSourceId *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -35882,13 +36031,13 @@ func (s *UpdateDataSourceOutput) SetUpdateStatus(v string) *UpdateDataSourceOutp type UpdateDataSourcePermissionsInput struct { _ struct{} `type:"structure"` - // The Amazon Web Services account; ID. + // The Amazon Web Services account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. // // DataSourceId is a required field DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` @@ -35989,7 +36138,7 @@ type UpdateDataSourcePermissionsOutput struct { DataSourceArn *string `type:"string"` // The ID of the data source. This ID is unique per Amazon Web Services Region; - // for each Amazon Web Services account;. + // for each Amazon Web Services account. DataSourceId *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -36322,8 +36471,8 @@ func (s *UpdateFolderPermissionsOutput) SetStatus(v int64) *UpdateFolderPermissi type UpdateGroupInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the group is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the group is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field @@ -36453,7 +36602,7 @@ type UpdateIAMPolicyAssignmentInput struct { _ struct{} `type:"structure"` // The name of the assignment, also called a rule. This name must be unique - // within an Amazon Web Services account;. + // within an Amazon Web Services account. // // AssignmentName is a required field AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` @@ -36469,13 +36618,13 @@ type UpdateIAMPolicyAssignmentInput struct { // the data source. AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // The ID of the Amazon Web Services account; that contains the IAM policy assignment. + // The ID of the Amazon Web Services account that contains the IAMpolicy assignment. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The QuickSight users, groups, or both that you want to assign the policy - // to. + // The Amazon QuickSight users, groups, or both that you want to assign the + // policy to. Identities map[string][]*string `type:"map"` // The namespace of the assignment. @@ -36483,8 +36632,8 @@ type UpdateIAMPolicyAssignmentInput struct { // Namespace is a required field Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // The ARN for the IAM policy to apply to the QuickSight users and groups specified - // in this assignment. + // The ARN for the IAMpolicy to apply to the Amazon QuickSight users and groups + // specified in this assignment. PolicyArn *string `type:"string"` } @@ -36582,11 +36731,12 @@ type UpdateIAMPolicyAssignmentOutput struct { // the data source. AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // The QuickSight users, groups, or both that the IAM policy is assigned to. + // The Amazon QuickSight users, groups, or both that the IAMpolicy is assigned + // to. Identities map[string][]*string `type:"map"` - // The ARN for the IAM policy applied to the QuickSight users and groups specified - // in this assignment. + // The ARN for the IAMpolicy applied to the Amazon QuickSight users and groups + // specified in this assignment. PolicyArn *string `type:"string"` // The Amazon Web Services request ID for this operation. @@ -36659,7 +36809,7 @@ type UpdateTemplateAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the template alias + // The ID of the Amazon Web Services account that contains the template alias // that you're updating. // // AwsAccountId is a required field @@ -36788,7 +36938,7 @@ func (s *UpdateTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *UpdateTe type UpdateTemplateInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the template that + // The ID of the Amazon Web Services account that contains the template that // you're updating. // // AwsAccountId is a required field @@ -36802,8 +36952,8 @@ type UpdateTemplateInput struct { // for a template or SourceAnalysis for an analysis. Both of these require an // Amazon Resource Name (ARN). For SourceTemplate, specify the ARN of the source // template. For SourceAnalysis, specify the ARN of the source analysis. The - // SourceTemplate ARN can contain any Amazon Web Services account; and any QuickSight-supported - // Amazon Web Services Region;. + // SourceTemplate ARN can contain any Amazon Web Services account and any Amazon + // QuickSight-supported Amazon Web Services Region;. // // Use the DataSetReferences entity within SourceTemplate or SourceAnalysis // to list the replacement datasets for the placeholders listed in the original. @@ -36972,7 +37122,7 @@ func (s *UpdateTemplateOutput) SetVersionArn(v string) *UpdateTemplateOutput { type UpdateTemplatePermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the template. + // The ID of the Amazon Web Services account that contains the template. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -37132,8 +37282,8 @@ type UpdateThemeAliasInput struct { // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the Amazon Web Services account; that contains the theme alias - // that you're updating. + // The ID of the Amazon Web Services account that contains the theme alias that + // you're updating. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -37261,7 +37411,7 @@ func (s *UpdateThemeAliasOutput) SetThemeAlias(v *ThemeAlias) *UpdateThemeAliasO type UpdateThemeInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the theme that you're + // The ID of the Amazon Web Services account that contains the theme that you're // updating. // // AwsAccountId is a required field @@ -37441,7 +37591,7 @@ func (s *UpdateThemeOutput) SetVersionArn(v string) *UpdateThemeOutput { type UpdateThemePermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the Amazon Web Services account; that contains the theme. + // The ID of the Amazon Web Services account that contains the theme. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -37596,17 +37746,17 @@ func (s *UpdateThemePermissionsOutput) SetThemeId(v string) *UpdateThemePermissi type UpdateUserInput struct { _ struct{} `type:"structure"` - // The ID for the Amazon Web Services account; that the user is in. Currently, - // you use the ID for the Amazon Web Services account; that contains your Amazon + // The ID for the Amazon Web Services account that the user is in. Currently, + // you use the ID for the Amazon Web Services account that contains your Amazon // QuickSight account. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The URL of the custom OpenID Connect (OIDC) provider that provides identity - // to let a user federate into QuickSight with an associated AWS Identity and - // Access Management (IAM) role. This parameter should only be used when ExternalLoginFederationProviderType - // parameter is set to CUSTOM_OIDC. + // to let a user federate into Amazon QuickSight with an associated Identity + // and Access Management(IAM) role. This parameter should only be used when + // ExternalLoginFederationProviderType parameter is set to CUSTOM_OIDC. CustomFederationProviderUrl *string `type:"string"` // (Enterprise edition only) The name of the custom permissions profile that @@ -37623,14 +37773,15 @@ type UpdateUserInput struct { // // A set of custom permissions includes any combination of these restrictions. // Currently, you need to create the profile names for custom permission sets - // by using the QuickSight console. Then, you use the RegisterUser API operation - // to assign the named set of permissions to a QuickSight user. + // by using the Amazon QuickSight console. Then, you use the RegisterUser API + // operation to assign the named set of permissions to a Amazon QuickSight user. // - // QuickSight custom permissions are applied through IAM policies. Therefore, - // they override the permissions typically granted by assigning QuickSight users - // to one of the default security cohorts in QuickSight (admin, author, reader). + // Amazon QuickSight custom permissions are applied through IAMpolicies. Therefore, + // they override the permissions typically granted by assigning Amazon QuickSight + // users to one of the default security cohorts in Amazon QuickSight (admin, + // author, reader). // - // This feature is available only to QuickSight Enterprise edition subscriptions. + // This feature is available only to Amazon QuickSight Enterprise edition subscriptions. CustomPermissionsName *string `min:"1" type:"string"` // The email address of the user that you want to update. @@ -37639,9 +37790,9 @@ type UpdateUserInput struct { Email *string `type:"string" required:"true"` // The type of supported external login provider that provides identity to let - // a user federate into QuickSight with an associated AWS Identity and Access - // Management (IAM) role. The type of supported external login provider can - // be one of the following. + // a user federate into Amazon QuickSight with an associated Identity and Access + // Management(IAM) role. The type of supported external login provider can be + // one of the following. // // * COGNITO: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. // When choosing the COGNITO provider type, don’t use the "CustomFederationProviderUrl" @@ -37674,8 +37825,8 @@ type UpdateUserInput struct { // * ADMIN: A user who is an author, who can also manage Amazon QuickSight // settings. // - // The name of the QuickSight role is invisible to the user except for the console - // screens dealing with permissions. + // The name of the Amazon QuickSight role is invisible to the user except for + // the console screens dealing with permissions. // // Role is a required field Role *string `type:"string" required:"true" enum:"UserRole"` @@ -37935,7 +38086,7 @@ type User struct { Email *string `type:"string"` // The type of supported external login provider that provides identity to let - // the user federate into Amazon QuickSight with an associated IAM role. The + // the user federate into Amazon QuickSight with an associated IAMrole. The // type can be one of the following. // // * COGNITO: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. @@ -37963,7 +38114,7 @@ type User struct { // * AUTHOR: A user who can create data sources, datasets, analyses, and // dashboards. // - // * ADMIN: A user who is an author, who can also manage Amazon QuickSight + // * ADMIN: A user who is an author, who can also manage Amazon Amazon QuickSight // settings. // // * RESTRICTED_READER: This role isn't currently available for use. @@ -38255,6 +38406,22 @@ func ColumnDataType_Values() []string { } } +const ( + // ColumnTagNameColumnGeographicRole is a ColumnTagName enum value + ColumnTagNameColumnGeographicRole = "COLUMN_GEOGRAPHIC_ROLE" + + // ColumnTagNameColumnDescription is a ColumnTagName enum value + ColumnTagNameColumnDescription = "COLUMN_DESCRIPTION" +) + +// ColumnTagName_Values returns all elements of the ColumnTagName enum +func ColumnTagName_Values() []string { + return []string{ + ColumnTagNameColumnGeographicRole, + ColumnTagNameColumnDescription, + } +} + const ( // DashboardBehaviorEnabled is a DashboardBehavior enum value DashboardBehaviorEnabled = "ENABLED" diff --git a/service/quicksight/errors.go b/service/quicksight/errors.go index 05a7b3db6ac..bf3a99925e2 100644 --- a/service/quicksight/errors.go +++ b/service/quicksight/errors.go @@ -111,9 +111,9 @@ const ( // // This error indicates that you are calling an embedding operation in Amazon // QuickSight without the required pricing plan on your Amazon Web Services - // account;. Before you can use embedding for anonymous users, a QuickSight - // administrator needs to add capacity pricing to QuickSight. You can do this - // on the Manage QuickSight page. + // account. Before you can use embedding for anonymous users, a Amazon QuickSight + // administrator needs to add capacity pricing to Amazon QuickSight. You can + // do this on the Manage Amazon QuickSight page. // // After capacity pricing is added, you can use the GetDashboardEmbedUrl API // operation with the --identity-type ANONYMOUS option. @@ -124,7 +124,7 @@ const ( // // This error indicates that you are calling an operation on an Amazon QuickSight // subscription where the edition doesn't include support for that operation. - // Amazon QuickSight currently has Standard Edition and Enterprise Edition. + // Amazon Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. ErrCodeUnsupportedUserEditionException = "UnsupportedUserEditionException" diff --git a/service/s3control/api.go b/service/s3control/api.go index 156cc6d5bf1..1f60ef1f831 100644 --- a/service/s3control/api.go +++ b/service/s3control/api.go @@ -432,6 +432,108 @@ func (c *S3Control) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, return out, req.Send() } +const opCreateMultiRegionAccessPoint = "CreateMultiRegionAccessPoint" + +// CreateMultiRegionAccessPointRequest generates a "aws/request.Request" representing the +// client's request for the CreateMultiRegionAccessPoint 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 CreateMultiRegionAccessPoint for more information on using the CreateMultiRegionAccessPoint +// 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 CreateMultiRegionAccessPointRequest method. +// req, resp := client.CreateMultiRegionAccessPointRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateMultiRegionAccessPoint +func (c *S3Control) CreateMultiRegionAccessPointRequest(input *CreateMultiRegionAccessPointInput) (req *request.Request, output *CreateMultiRegionAccessPointOutput) { + op := &request.Operation{ + Name: opCreateMultiRegionAccessPoint, + HTTPMethod: "POST", + HTTPPath: "/v20180820/async-requests/mrap/create", + } + + if input == nil { + input = &CreateMultiRegionAccessPointInput{} + } + + output = &CreateMultiRegionAccessPointOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// CreateMultiRegionAccessPoint API operation for AWS S3 Control. +// +// Creates a Multi-Region Access Point and associates it with the specified +// buckets. For more information about creating Multi-Region Access Points, +// see Creating Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// This request is asynchronous, meaning that you might receive a response before +// the command has completed. When this request provides a response, it provides +// a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation. +// +// The following actions are related to CreateMultiRegionAccessPoint: +// +// * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) +// +// * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) +// +// * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) +// +// * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation CreateMultiRegionAccessPoint for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateMultiRegionAccessPoint +func (c *S3Control) CreateMultiRegionAccessPoint(input *CreateMultiRegionAccessPointInput) (*CreateMultiRegionAccessPointOutput, error) { + req, out := c.CreateMultiRegionAccessPointRequest(input) + return out, req.Send() +} + +// CreateMultiRegionAccessPointWithContext is the same as CreateMultiRegionAccessPoint with the addition of +// the ability to pass a context and additional request options. +// +// See CreateMultiRegionAccessPoint 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 *S3Control) CreateMultiRegionAccessPointWithContext(ctx aws.Context, input *CreateMultiRegionAccessPointInput, opts ...request.Option) (*CreateMultiRegionAccessPointOutput, error) { + req, out := c.CreateMultiRegionAccessPointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAccessPoint = "DeleteAccessPoint" // DeleteAccessPointRequest generates a "aws/request.Request" representing the @@ -1065,11 +1167,11 @@ func (c *S3Control) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (r // // This implementation of the DELETE action uses the policy subresource to delete // the policy of a specified Amazon S3 on Outposts bucket. If you are using -// an identity other than the root user of the account that owns the bucket, -// the calling identity must have the s3-outposts:DeleteBucketPolicy permissions -// on the specified Outposts bucket and belong to the bucket owner's account -// to use this action. For more information, see Using Amazon S3 on Outposts -// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) +// an identity other than the root user of the Amazon Web Services account that +// owns the bucket, the calling identity must have the s3-outposts:DeleteBucketPolicy +// permissions on the specified Outposts bucket and belong to the bucket owner's +// account to use this action. For more information, see Using Amazon S3 on +// Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in Amazon S3 User Guide. // // If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 @@ -1077,9 +1179,9 @@ func (c *S3Control) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (r // using an identity that belongs to the bucket owner's account, Amazon S3 returns // a 405 Method Not Allowed error. // -// As a security precaution, the root user of the account that owns a bucket -// can always use this action, even if the policy explicitly denies the root -// user the ability to perform this action. +// As a security precaution, the root user of the Amazon Web Services account +// that owns a bucket can always use this action, even if the policy explicitly +// denies the root user the ability to perform this action. // // For more information about bucket policies, see Using Bucket Policies and // User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). @@ -1328,6 +1430,107 @@ func (c *S3Control) DeleteJobTaggingWithContext(ctx aws.Context, input *DeleteJo return out, req.Send() } +const opDeleteMultiRegionAccessPoint = "DeleteMultiRegionAccessPoint" + +// DeleteMultiRegionAccessPointRequest generates a "aws/request.Request" representing the +// client's request for the DeleteMultiRegionAccessPoint 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 DeleteMultiRegionAccessPoint for more information on using the DeleteMultiRegionAccessPoint +// 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 DeleteMultiRegionAccessPointRequest method. +// req, resp := client.DeleteMultiRegionAccessPointRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteMultiRegionAccessPoint +func (c *S3Control) DeleteMultiRegionAccessPointRequest(input *DeleteMultiRegionAccessPointInput) (req *request.Request, output *DeleteMultiRegionAccessPointOutput) { + op := &request.Operation{ + Name: opDeleteMultiRegionAccessPoint, + HTTPMethod: "POST", + HTTPPath: "/v20180820/async-requests/mrap/delete", + } + + if input == nil { + input = &DeleteMultiRegionAccessPointInput{} + } + + output = &DeleteMultiRegionAccessPointOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DeleteMultiRegionAccessPoint API operation for AWS S3 Control. +// +// Deletes a Multi-Region Access Point. This action does not delete the buckets +// associated with the Multi-Region Access Point, only the Multi-Region Access +// Point itself. +// +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// This request is asynchronous, meaning that you might receive a response before +// the command has completed. When this request provides a response, it provides +// a token that you can use to monitor the status of the request with DescribeMultiRegionAccessPointOperation. +// +// The following actions are related to DeleteMultiRegionAccessPoint: +// +// * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) +// +// * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) +// +// * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) +// +// * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DeleteMultiRegionAccessPoint for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteMultiRegionAccessPoint +func (c *S3Control) DeleteMultiRegionAccessPoint(input *DeleteMultiRegionAccessPointInput) (*DeleteMultiRegionAccessPointOutput, error) { + req, out := c.DeleteMultiRegionAccessPointRequest(input) + return out, req.Send() +} + +// DeleteMultiRegionAccessPointWithContext is the same as DeleteMultiRegionAccessPoint with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteMultiRegionAccessPoint 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 *S3Control) DeleteMultiRegionAccessPointWithContext(ctx aws.Context, input *DeleteMultiRegionAccessPointInput, opts ...request.Option) (*DeleteMultiRegionAccessPointOutput, error) { + req, out := c.DeleteMultiRegionAccessPointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeletePublicAccessBlock = "DeletePublicAccessBlock" // DeletePublicAccessBlockRequest generates a "aws/request.Request" representing the @@ -1375,8 +1578,8 @@ func (c *S3Control) DeletePublicAccessBlockRequest(input *DeletePublicAccessBloc // DeletePublicAccessBlock API operation for AWS S3 Control. // -// Removes the PublicAccessBlock configuration for an account. For more information, -// see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). +// Removes the PublicAccessBlock configuration for an Amazon Web Services account. +// For more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // // Related actions include: // @@ -1680,6 +1883,100 @@ func (c *S3Control) DescribeJobWithContext(ctx aws.Context, input *DescribeJobIn return out, req.Send() } +const opDescribeMultiRegionAccessPointOperation = "DescribeMultiRegionAccessPointOperation" + +// DescribeMultiRegionAccessPointOperationRequest generates a "aws/request.Request" representing the +// client's request for the DescribeMultiRegionAccessPointOperation 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 DescribeMultiRegionAccessPointOperation for more information on using the DescribeMultiRegionAccessPointOperation +// 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 DescribeMultiRegionAccessPointOperationRequest method. +// req, resp := client.DescribeMultiRegionAccessPointOperationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeMultiRegionAccessPointOperation +func (c *S3Control) DescribeMultiRegionAccessPointOperationRequest(input *DescribeMultiRegionAccessPointOperationInput) (req *request.Request, output *DescribeMultiRegionAccessPointOperationOutput) { + op := &request.Operation{ + Name: opDescribeMultiRegionAccessPointOperation, + HTTPMethod: "GET", + HTTPPath: "/v20180820/async-requests/mrap/{request_token+}", + } + + if input == nil { + input = &DescribeMultiRegionAccessPointOperationInput{} + } + + output = &DescribeMultiRegionAccessPointOperationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// DescribeMultiRegionAccessPointOperation API operation for AWS S3 Control. +// +// Retrieves the status of an asynchronous request to manage a Multi-Region +// Access Point. For more information about managing Multi-Region Access Points +// and how asynchronous requests work, see Managing Multi-Region Access Points +// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// The following actions are related to GetMultiRegionAccessPoint: +// +// * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) +// +// * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) +// +// * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) +// +// * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation DescribeMultiRegionAccessPointOperation for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeMultiRegionAccessPointOperation +func (c *S3Control) DescribeMultiRegionAccessPointOperation(input *DescribeMultiRegionAccessPointOperationInput) (*DescribeMultiRegionAccessPointOperationOutput, error) { + req, out := c.DescribeMultiRegionAccessPointOperationRequest(input) + return out, req.Send() +} + +// DescribeMultiRegionAccessPointOperationWithContext is the same as DescribeMultiRegionAccessPointOperation with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeMultiRegionAccessPointOperation 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 *S3Control) DescribeMultiRegionAccessPointOperationWithContext(ctx aws.Context, input *DescribeMultiRegionAccessPointOperationInput, opts ...request.Option) (*DescribeMultiRegionAccessPointOperationOutput, error) { + req, out := c.DescribeMultiRegionAccessPointOperationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAccessPoint = "GetAccessPoint" // GetAccessPointRequest generates a "aws/request.Request" representing the @@ -2316,12 +2613,12 @@ func (c *S3Control) GetBucketRequest(input *GetBucketInput) (req *request.Reques // S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // -// If you are using an identity other than the root user of the account that -// owns the Outposts bucket, the calling identity must have the s3-outposts:GetBucket -// permissions on the specified Outposts bucket and belong to the Outposts bucket -// owner's account in order to use this action. Only users from Outposts bucket -// owner account with the right permissions can perform actions on an Outposts -// bucket. +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the Outposts bucket, the calling identity must have the +// s3-outposts:GetBucket permissions on the specified Outposts bucket and belong +// to the Outposts bucket owner's account in order to use this action. Only +// users from Outposts bucket owner account with the right permissions can perform +// actions on an Outposts bucket. // // If you don't have s3-outposts:GetBucket permissions or you're not using an // identity that belongs to the bucket owner's account, Amazon S3 returns a @@ -2544,19 +2841,19 @@ func (c *S3Control) GetBucketPolicyRequest(input *GetBucketPolicyInput) (req *re // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // -// If you are using an identity other than the root user of the account that -// owns the bucket, the calling identity must have the GetBucketPolicy permissions -// on the specified bucket and belong to the bucket owner's account in order -// to use this action. +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the bucket, the calling identity must have the GetBucketPolicy +// permissions on the specified bucket and belong to the bucket owner's account +// in order to use this action. // // Only users from Outposts bucket owner account with the right permissions // can perform actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy // permissions or you're not using an identity that belongs to the bucket owner's // account, Amazon S3 returns a 403 Access Denied error. // -// As a security precaution, the root user of the account that owns a bucket -// can always use this action, even if the policy explicitly denies the root -// user the ability to perform this action. +// As a security precaution, the root user of the Amazon Web Services account +// that owns a bucket can always use this action, even if the policy explicitly +// denies the root user the ability to perform this action. // // For more information about bucket policies, see Using Bucket Policies and // User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). @@ -2809,142 +3106,421 @@ func (c *S3Control) GetJobTaggingWithContext(ctx aws.Context, input *GetJobTaggi return out, req.Send() } -const opGetPublicAccessBlock = "GetPublicAccessBlock" +const opGetMultiRegionAccessPoint = "GetMultiRegionAccessPoint" -// GetPublicAccessBlockRequest generates a "aws/request.Request" representing the -// client's request for the GetPublicAccessBlock operation. The "output" return +// GetMultiRegionAccessPointRequest generates a "aws/request.Request" representing the +// client's request for the GetMultiRegionAccessPoint 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 GetPublicAccessBlock for more information on using the GetPublicAccessBlock +// See GetMultiRegionAccessPoint for more information on using the GetMultiRegionAccessPoint // 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 GetPublicAccessBlockRequest method. -// req, resp := client.GetPublicAccessBlockRequest(params) +// // Example sending a request using the GetMultiRegionAccessPointRequest method. +// req, resp := client.GetMultiRegionAccessPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock -func (c *S3Control) GetPublicAccessBlockRequest(input *GetPublicAccessBlockInput) (req *request.Request, output *GetPublicAccessBlockOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPoint +func (c *S3Control) GetMultiRegionAccessPointRequest(input *GetMultiRegionAccessPointInput) (req *request.Request, output *GetMultiRegionAccessPointOutput) { op := &request.Operation{ - Name: opGetPublicAccessBlock, + Name: opGetMultiRegionAccessPoint, HTTPMethod: "GET", - HTTPPath: "/v20180820/configuration/publicAccessBlock", + HTTPPath: "/v20180820/mrap/instances/{name}", } if input == nil { - input = &GetPublicAccessBlockInput{} + input = &GetMultiRegionAccessPointInput{} } - output = &GetPublicAccessBlockOutput{} + output = &GetMultiRegionAccessPointOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) return } -// GetPublicAccessBlock API operation for AWS S3 Control. +// GetMultiRegionAccessPoint API operation for AWS S3 Control. // -// Retrieves the PublicAccessBlock configuration for an account. For more information, -// see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). +// Returns configuration information about the specified Multi-Region Access +// Point. // -// Related actions include: +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. // -// * DeletePublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html) +// The following actions are related to GetMultiRegionAccessPoint: // -// * PutPublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html) +// * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) +// +// * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) +// +// * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) +// +// * ListMultiRegionAccessPoints (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS S3 Control's -// API operation GetPublicAccessBlock for usage and error information. -// -// Returned Error Codes: -// * ErrCodeNoSuchPublicAccessBlockConfiguration "NoSuchPublicAccessBlockConfiguration" -// Amazon S3 throws this exception if you make a GetPublicAccessBlock request -// against an account that doesn't have a PublicAccessBlockConfiguration set. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock -func (c *S3Control) GetPublicAccessBlock(input *GetPublicAccessBlockInput) (*GetPublicAccessBlockOutput, error) { - req, out := c.GetPublicAccessBlockRequest(input) +// API operation GetMultiRegionAccessPoint for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPoint +func (c *S3Control) GetMultiRegionAccessPoint(input *GetMultiRegionAccessPointInput) (*GetMultiRegionAccessPointOutput, error) { + req, out := c.GetMultiRegionAccessPointRequest(input) return out, req.Send() } -// GetPublicAccessBlockWithContext is the same as GetPublicAccessBlock with the addition of +// GetMultiRegionAccessPointWithContext is the same as GetMultiRegionAccessPoint with the addition of // the ability to pass a context and additional request options. // -// See GetPublicAccessBlock for details on how to use this API operation. +// See GetMultiRegionAccessPoint 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 *S3Control) GetPublicAccessBlockWithContext(ctx aws.Context, input *GetPublicAccessBlockInput, opts ...request.Option) (*GetPublicAccessBlockOutput, error) { - req, out := c.GetPublicAccessBlockRequest(input) +func (c *S3Control) GetMultiRegionAccessPointWithContext(ctx aws.Context, input *GetMultiRegionAccessPointInput, opts ...request.Option) (*GetMultiRegionAccessPointOutput, error) { + req, out := c.GetMultiRegionAccessPointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetStorageLensConfiguration = "GetStorageLensConfiguration" +const opGetMultiRegionAccessPointPolicy = "GetMultiRegionAccessPointPolicy" -// GetStorageLensConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the GetStorageLensConfiguration operation. The "output" return +// GetMultiRegionAccessPointPolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetMultiRegionAccessPointPolicy 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 GetStorageLensConfiguration for more information on using the GetStorageLensConfiguration +// See GetMultiRegionAccessPointPolicy for more information on using the GetMultiRegionAccessPointPolicy // 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 GetStorageLensConfigurationRequest method. -// req, resp := client.GetStorageLensConfigurationRequest(params) +// // Example sending a request using the GetMultiRegionAccessPointPolicyRequest method. +// req, resp := client.GetMultiRegionAccessPointPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensConfiguration -func (c *S3Control) GetStorageLensConfigurationRequest(input *GetStorageLensConfigurationInput) (req *request.Request, output *GetStorageLensConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicy +func (c *S3Control) GetMultiRegionAccessPointPolicyRequest(input *GetMultiRegionAccessPointPolicyInput) (req *request.Request, output *GetMultiRegionAccessPointPolicyOutput) { op := &request.Operation{ - Name: opGetStorageLensConfiguration, + Name: opGetMultiRegionAccessPointPolicy, HTTPMethod: "GET", - HTTPPath: "/v20180820/storagelens/{storagelensid}", + HTTPPath: "/v20180820/mrap/instances/{name}/policy", } if input == nil { - input = &GetStorageLensConfigurationInput{} + input = &GetMultiRegionAccessPointPolicyInput{} } - output = &GetStorageLensConfigurationOutput{} + output = &GetMultiRegionAccessPointPolicyOutput{} req = c.newRequest(op, input, output) req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) return } -// GetStorageLensConfiguration API operation for AWS S3 Control. +// GetMultiRegionAccessPointPolicy API operation for AWS S3 Control. // -// Gets the Amazon S3 Storage Lens configuration. For more information, see +// Returns the access control policy of the specified Multi-Region Access Point. +// +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// The following actions are related to GetMultiRegionAccessPointPolicy: +// +// * GetMultiRegionAccessPointPolicyStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html) +// +// * PutMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPointPolicy.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetMultiRegionAccessPointPolicy for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicy +func (c *S3Control) GetMultiRegionAccessPointPolicy(input *GetMultiRegionAccessPointPolicyInput) (*GetMultiRegionAccessPointPolicyOutput, error) { + req, out := c.GetMultiRegionAccessPointPolicyRequest(input) + return out, req.Send() +} + +// GetMultiRegionAccessPointPolicyWithContext is the same as GetMultiRegionAccessPointPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetMultiRegionAccessPointPolicy 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 *S3Control) GetMultiRegionAccessPointPolicyWithContext(ctx aws.Context, input *GetMultiRegionAccessPointPolicyInput, opts ...request.Option) (*GetMultiRegionAccessPointPolicyOutput, error) { + req, out := c.GetMultiRegionAccessPointPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetMultiRegionAccessPointPolicyStatus = "GetMultiRegionAccessPointPolicyStatus" + +// GetMultiRegionAccessPointPolicyStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetMultiRegionAccessPointPolicyStatus 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 GetMultiRegionAccessPointPolicyStatus for more information on using the GetMultiRegionAccessPointPolicyStatus +// 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 GetMultiRegionAccessPointPolicyStatusRequest method. +// req, resp := client.GetMultiRegionAccessPointPolicyStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicyStatus +func (c *S3Control) GetMultiRegionAccessPointPolicyStatusRequest(input *GetMultiRegionAccessPointPolicyStatusInput) (req *request.Request, output *GetMultiRegionAccessPointPolicyStatusOutput) { + op := &request.Operation{ + Name: opGetMultiRegionAccessPointPolicyStatus, + HTTPMethod: "GET", + HTTPPath: "/v20180820/mrap/instances/{name}/policystatus", + } + + if input == nil { + input = &GetMultiRegionAccessPointPolicyStatusInput{} + } + + output = &GetMultiRegionAccessPointPolicyStatusOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// GetMultiRegionAccessPointPolicyStatus API operation for AWS S3 Control. +// +// Indicates whether the specified Multi-Region Access Point has an access control +// policy that allows public access. +// +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// The following actions are related to GetMultiRegionAccessPointPolicyStatus: +// +// * GetMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html) +// +// * PutMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPointPolicy.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetMultiRegionAccessPointPolicyStatus for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointPolicyStatus +func (c *S3Control) GetMultiRegionAccessPointPolicyStatus(input *GetMultiRegionAccessPointPolicyStatusInput) (*GetMultiRegionAccessPointPolicyStatusOutput, error) { + req, out := c.GetMultiRegionAccessPointPolicyStatusRequest(input) + return out, req.Send() +} + +// GetMultiRegionAccessPointPolicyStatusWithContext is the same as GetMultiRegionAccessPointPolicyStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetMultiRegionAccessPointPolicyStatus 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 *S3Control) GetMultiRegionAccessPointPolicyStatusWithContext(ctx aws.Context, input *GetMultiRegionAccessPointPolicyStatusInput, opts ...request.Option) (*GetMultiRegionAccessPointPolicyStatusOutput, error) { + req, out := c.GetMultiRegionAccessPointPolicyStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetPublicAccessBlock = "GetPublicAccessBlock" + +// GetPublicAccessBlockRequest generates a "aws/request.Request" representing the +// client's request for the GetPublicAccessBlock 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 GetPublicAccessBlock for more information on using the GetPublicAccessBlock +// 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 GetPublicAccessBlockRequest method. +// req, resp := client.GetPublicAccessBlockRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock +func (c *S3Control) GetPublicAccessBlockRequest(input *GetPublicAccessBlockInput) (req *request.Request, output *GetPublicAccessBlockOutput) { + op := &request.Operation{ + Name: opGetPublicAccessBlock, + HTTPMethod: "GET", + HTTPPath: "/v20180820/configuration/publicAccessBlock", + } + + if input == nil { + input = &GetPublicAccessBlockInput{} + } + + output = &GetPublicAccessBlockOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetPublicAccessBlock API operation for AWS S3 Control. +// +// Retrieves the PublicAccessBlock configuration for an Amazon Web Services +// account. For more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). +// +// Related actions include: +// +// * DeletePublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html) +// +// * PutPublicAccessBlock (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation GetPublicAccessBlock for usage and error information. +// +// Returned Error Codes: +// * ErrCodeNoSuchPublicAccessBlockConfiguration "NoSuchPublicAccessBlockConfiguration" +// Amazon S3 throws this exception if you make a GetPublicAccessBlock request +// against an account that doesn't have a PublicAccessBlockConfiguration set. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock +func (c *S3Control) GetPublicAccessBlock(input *GetPublicAccessBlockInput) (*GetPublicAccessBlockOutput, error) { + req, out := c.GetPublicAccessBlockRequest(input) + return out, req.Send() +} + +// GetPublicAccessBlockWithContext is the same as GetPublicAccessBlock with the addition of +// the ability to pass a context and additional request options. +// +// See GetPublicAccessBlock 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 *S3Control) GetPublicAccessBlockWithContext(ctx aws.Context, input *GetPublicAccessBlockInput, opts ...request.Option) (*GetPublicAccessBlockOutput, error) { + req, out := c.GetPublicAccessBlockRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetStorageLensConfiguration = "GetStorageLensConfiguration" + +// GetStorageLensConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetStorageLensConfiguration 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 GetStorageLensConfiguration for more information on using the GetStorageLensConfiguration +// 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 GetStorageLensConfigurationRequest method. +// req, resp := client.GetStorageLensConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensConfiguration +func (c *S3Control) GetStorageLensConfigurationRequest(input *GetStorageLensConfigurationInput) (req *request.Request, output *GetStorageLensConfigurationOutput) { + op := &request.Operation{ + Name: opGetStorageLensConfiguration, + HTTPMethod: "GET", + HTTPPath: "/v20180820/storagelens/{storagelensid}", + } + + if input == nil { + input = &GetStorageLensConfigurationInput{} + } + + output = &GetStorageLensConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetStorageLensConfiguration API operation for AWS S3 Control. +// +// Gets the Amazon S3 Storage Lens configuration. For more information, see // Assessing your storage activity and usage with Amazon S3 Storage Lens (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html) // in the Amazon S3 User Guide. // @@ -3421,8 +3997,8 @@ func (c *S3Control) ListJobsRequest(input *ListJobsInput) (req *request.Request, // ListJobs API operation for AWS S3 Control. // // Lists current S3 Batch Operations jobs and jobs that have ended within the -// last 30 days for the account making the request. For more information, see -// S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html) +// last 30 days for the Amazon Web Services account making the request. For +// more information, see S3 Batch Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html) // in the Amazon S3 User Guide. // // Related actions include: @@ -3523,6 +4099,162 @@ func (c *S3Control) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInp return p.Err() } +const opListMultiRegionAccessPoints = "ListMultiRegionAccessPoints" + +// ListMultiRegionAccessPointsRequest generates a "aws/request.Request" representing the +// client's request for the ListMultiRegionAccessPoints 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 ListMultiRegionAccessPoints for more information on using the ListMultiRegionAccessPoints +// 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 ListMultiRegionAccessPointsRequest method. +// req, resp := client.ListMultiRegionAccessPointsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListMultiRegionAccessPoints +func (c *S3Control) ListMultiRegionAccessPointsRequest(input *ListMultiRegionAccessPointsInput) (req *request.Request, output *ListMultiRegionAccessPointsOutput) { + op := &request.Operation{ + Name: opListMultiRegionAccessPoints, + HTTPMethod: "GET", + HTTPPath: "/v20180820/mrap/instances", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMultiRegionAccessPointsInput{} + } + + output = &ListMultiRegionAccessPointsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// ListMultiRegionAccessPoints API operation for AWS S3 Control. +// +// Returns a list of the Multi-Region Access Points currently associated with +// the specified Amazon Web Services account. Each call can return up to 100 +// Multi-Region Access Points, the maximum number of Multi-Region Access Points +// that can be associated with a single account. +// +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// The following actions are related to ListMultiRegionAccessPoint: +// +// * CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) +// +// * DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) +// +// * DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) +// +// * GetMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation ListMultiRegionAccessPoints for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListMultiRegionAccessPoints +func (c *S3Control) ListMultiRegionAccessPoints(input *ListMultiRegionAccessPointsInput) (*ListMultiRegionAccessPointsOutput, error) { + req, out := c.ListMultiRegionAccessPointsRequest(input) + return out, req.Send() +} + +// ListMultiRegionAccessPointsWithContext is the same as ListMultiRegionAccessPoints with the addition of +// the ability to pass a context and additional request options. +// +// See ListMultiRegionAccessPoints 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 *S3Control) ListMultiRegionAccessPointsWithContext(ctx aws.Context, input *ListMultiRegionAccessPointsInput, opts ...request.Option) (*ListMultiRegionAccessPointsOutput, error) { + req, out := c.ListMultiRegionAccessPointsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMultiRegionAccessPointsPages iterates over the pages of a ListMultiRegionAccessPoints operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMultiRegionAccessPoints 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 ListMultiRegionAccessPoints operation. +// pageNum := 0 +// err := client.ListMultiRegionAccessPointsPages(params, +// func(page *s3control.ListMultiRegionAccessPointsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *S3Control) ListMultiRegionAccessPointsPages(input *ListMultiRegionAccessPointsInput, fn func(*ListMultiRegionAccessPointsOutput, bool) bool) error { + return c.ListMultiRegionAccessPointsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMultiRegionAccessPointsPagesWithContext same as ListMultiRegionAccessPointsPages 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 *S3Control) ListMultiRegionAccessPointsPagesWithContext(ctx aws.Context, input *ListMultiRegionAccessPointsInput, fn func(*ListMultiRegionAccessPointsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMultiRegionAccessPointsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMultiRegionAccessPointsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMultiRegionAccessPointsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListRegionalBuckets = "ListRegionalBuckets" // ListRegionalBucketsRequest generates a "aws/request.Request" representing the @@ -4239,19 +4971,19 @@ func (c *S3Control) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *re // see Using Amazon S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) // in the Amazon S3 User Guide. // -// If you are using an identity other than the root user of the account that -// owns the Outposts bucket, the calling identity must have the PutBucketPolicy -// permissions on the specified Outposts bucket and belong to the bucket owner's -// account in order to use this action. +// If you are using an identity other than the root user of the Amazon Web Services +// account that owns the Outposts bucket, the calling identity must have the +// PutBucketPolicy permissions on the specified Outposts bucket and belong to +// the bucket owner's account in order to use this action. // // If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access // Denied error. If you have the correct permissions, but you're not using an // identity that belongs to the bucket owner's account, Amazon S3 returns a // 405 Method Not Allowed error. // -// As a security precaution, the root user of the account that owns a bucket -// can always use this action, even if the policy explicitly denies the root -// user the ability to perform this action. +// As a security precaution, the root user of the Amazon Web Services account +// that owns a bucket can always use this action, even if the policy explicitly +// denies the root user the ability to perform this action. // // For more information about bucket policies, see Using Bucket Policies and // User Policies (https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html). @@ -4362,13 +5094,13 @@ func (c *S3Control) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req * // in the Amazon S3 User Guide. // // Use tags to organize your Amazon Web Services bill to reflect your own cost -// structure. To do this, sign up to get your account bill with tag key values -// included. Then, to see the cost of combined resources, organize your billing -// information according to resources with the same tag key values. For example, -// you can tag several resources with a specific application name, and then -// organize your billing information to see the total cost of that application -// across several services. For more information, see Cost allocation and tagging -// (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html). +// structure. To do this, sign up to get your Amazon Web Services account bill +// with tag key values included. Then, to see the cost of combined resources, +// organize your billing information according to resources with the same tag +// key values. For example, you can tag several resources with a specific application +// name, and then organize your billing information to see the total cost of +// that application across several services. For more information, see Cost +// allocation and tagging (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html). // // Within a bucket, if you add a tag that has the same key as an existing tag, // the new value overwrites the old value. For more information, see Using cost @@ -4560,8 +5292,102 @@ func (c *S3Control) PutJobTagging(input *PutJobTaggingInput) (*PutJobTaggingOutp // 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 *S3Control) PutJobTaggingWithContext(ctx aws.Context, input *PutJobTaggingInput, opts ...request.Option) (*PutJobTaggingOutput, error) { - req, out := c.PutJobTaggingRequest(input) +func (c *S3Control) PutJobTaggingWithContext(ctx aws.Context, input *PutJobTaggingInput, opts ...request.Option) (*PutJobTaggingOutput, error) { + req, out := c.PutJobTaggingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutMultiRegionAccessPointPolicy = "PutMultiRegionAccessPointPolicy" + +// PutMultiRegionAccessPointPolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutMultiRegionAccessPointPolicy 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 PutMultiRegionAccessPointPolicy for more information on using the PutMultiRegionAccessPointPolicy +// 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 PutMultiRegionAccessPointPolicyRequest method. +// req, resp := client.PutMultiRegionAccessPointPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutMultiRegionAccessPointPolicy +func (c *S3Control) PutMultiRegionAccessPointPolicyRequest(input *PutMultiRegionAccessPointPolicyInput) (req *request.Request, output *PutMultiRegionAccessPointPolicyOutput) { + op := &request.Operation{ + Name: opPutMultiRegionAccessPointPolicy, + HTTPMethod: "POST", + HTTPPath: "/v20180820/async-requests/mrap/put-policy", + } + + if input == nil { + input = &PutMultiRegionAccessPointPolicyInput{} + } + + output = &PutMultiRegionAccessPointPolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("{AccountId}.", input.hostLabels)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) + return +} + +// PutMultiRegionAccessPointPolicy API operation for AWS S3 Control. +// +// Associates an access control policy with the specified Multi-Region Access +// Point. Each Multi-Region Access Point can have only one policy, so a request +// made to this action replaces any existing policy that is associated with +// the specified Multi-Region Access Point. +// +// This action will always be routed to the US West (Oregon) Region. For more +// information about the restrictions around managing Multi-Region Access Points, +// see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManagingMultiRegionAccessPoints.html) +// in the Amazon S3 User Guide. +// +// The following actions are related to PutMultiRegionAccessPointPolicy: +// +// * GetMultiRegionAccessPointPolicy (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html) +// +// * GetMultiRegionAccessPointPolicyStatus (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS S3 Control's +// API operation PutMultiRegionAccessPointPolicy for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutMultiRegionAccessPointPolicy +func (c *S3Control) PutMultiRegionAccessPointPolicy(input *PutMultiRegionAccessPointPolicyInput) (*PutMultiRegionAccessPointPolicyOutput, error) { + req, out := c.PutMultiRegionAccessPointPolicyRequest(input) + return out, req.Send() +} + +// PutMultiRegionAccessPointPolicyWithContext is the same as PutMultiRegionAccessPointPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutMultiRegionAccessPointPolicy 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 *S3Control) PutMultiRegionAccessPointPolicyWithContext(ctx aws.Context, input *PutMultiRegionAccessPointPolicyInput, opts ...request.Option) (*PutMultiRegionAccessPointPolicyOutput, error) { + req, out := c.PutMultiRegionAccessPointPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() @@ -4614,8 +5440,9 @@ func (c *S3Control) PutPublicAccessBlockRequest(input *PutPublicAccessBlockInput // PutPublicAccessBlock API operation for AWS S3 Control. // -// Creates or modifies the PublicAccessBlock configuration for an account. For -// more information, see Using Amazon S3 block public access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). +// Creates or modifies the PublicAccessBlock configuration for an Amazon Web +// Services account. For more information, see Using Amazon S3 block public +// access (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html). // // Related actions include: // @@ -5204,6 +6031,205 @@ func (s *ActivityMetrics) SetIsEnabled(v bool) *ActivityMetrics { return s } +// Error details for the failed asynchronous operation. +type AsyncErrorDetails struct { + _ struct{} `type:"structure"` + + // A string that uniquely identifies the error condition. + Code *string `type:"string"` + + // A generic descritpion of the error condition in English. + Message *string `type:"string"` + + // The ID of the request associated with the error. + RequestId *string `type:"string"` + + // The identifier of the resource associated with the error. + Resource *string `type:"string"` +} + +// String returns the string representation +func (s AsyncErrorDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AsyncErrorDetails) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *AsyncErrorDetails) SetCode(v string) *AsyncErrorDetails { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *AsyncErrorDetails) SetMessage(v string) *AsyncErrorDetails { + s.Message = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *AsyncErrorDetails) SetRequestId(v string) *AsyncErrorDetails { + s.RequestId = &v + return s +} + +// SetResource sets the Resource field's value. +func (s *AsyncErrorDetails) SetResource(v string) *AsyncErrorDetails { + s.Resource = &v + return s +} + +// A container for the information about an asynchronous operation. +type AsyncOperation struct { + _ struct{} `type:"structure"` + + // The time that the request was sent to the service. + CreationTime *time.Time `type:"timestamp"` + + // The specific operation for the asynchronous request. + Operation *string `type:"string" enum:"AsyncOperationName"` + + // The parameters associated with the request. + RequestParameters *AsyncRequestParameters `type:"structure"` + + // The current status of the request. + RequestStatus *string `type:"string"` + + // The request token associated with the request. + RequestTokenARN *string `min:"1" type:"string"` + + // The details of the response. + ResponseDetails *AsyncResponseDetails `type:"structure"` +} + +// String returns the string representation +func (s AsyncOperation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AsyncOperation) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *AsyncOperation) SetCreationTime(v time.Time) *AsyncOperation { + s.CreationTime = &v + return s +} + +// SetOperation sets the Operation field's value. +func (s *AsyncOperation) SetOperation(v string) *AsyncOperation { + s.Operation = &v + return s +} + +// SetRequestParameters sets the RequestParameters field's value. +func (s *AsyncOperation) SetRequestParameters(v *AsyncRequestParameters) *AsyncOperation { + s.RequestParameters = v + return s +} + +// SetRequestStatus sets the RequestStatus field's value. +func (s *AsyncOperation) SetRequestStatus(v string) *AsyncOperation { + s.RequestStatus = &v + return s +} + +// SetRequestTokenARN sets the RequestTokenARN field's value. +func (s *AsyncOperation) SetRequestTokenARN(v string) *AsyncOperation { + s.RequestTokenARN = &v + return s +} + +// SetResponseDetails sets the ResponseDetails field's value. +func (s *AsyncOperation) SetResponseDetails(v *AsyncResponseDetails) *AsyncOperation { + s.ResponseDetails = v + return s +} + +// A container for the request parameters associated with an asynchronous request. +type AsyncRequestParameters struct { + _ struct{} `type:"structure"` + + // A container of the parameters for a CreateMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) + // request. + CreateMultiRegionAccessPointRequest *CreateMultiRegionAccessPointInput_ `type:"structure"` + + // A container of the parameters for a DeleteMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) + // request. + DeleteMultiRegionAccessPointRequest *DeleteMultiRegionAccessPointInput_ `type:"structure"` + + // A container of the parameters for a PutMultiRegionAccessPoint (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPoint.html) + // request. + PutMultiRegionAccessPointPolicyRequest *PutMultiRegionAccessPointPolicyInput_ `type:"structure"` +} + +// String returns the string representation +func (s AsyncRequestParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AsyncRequestParameters) GoString() string { + return s.String() +} + +// SetCreateMultiRegionAccessPointRequest sets the CreateMultiRegionAccessPointRequest field's value. +func (s *AsyncRequestParameters) SetCreateMultiRegionAccessPointRequest(v *CreateMultiRegionAccessPointInput_) *AsyncRequestParameters { + s.CreateMultiRegionAccessPointRequest = v + return s +} + +// SetDeleteMultiRegionAccessPointRequest sets the DeleteMultiRegionAccessPointRequest field's value. +func (s *AsyncRequestParameters) SetDeleteMultiRegionAccessPointRequest(v *DeleteMultiRegionAccessPointInput_) *AsyncRequestParameters { + s.DeleteMultiRegionAccessPointRequest = v + return s +} + +// SetPutMultiRegionAccessPointPolicyRequest sets the PutMultiRegionAccessPointPolicyRequest field's value. +func (s *AsyncRequestParameters) SetPutMultiRegionAccessPointPolicyRequest(v *PutMultiRegionAccessPointPolicyInput_) *AsyncRequestParameters { + s.PutMultiRegionAccessPointPolicyRequest = v + return s +} + +// A container for the response details that are returned when querying about +// an asynchronous request. +type AsyncResponseDetails struct { + _ struct{} `type:"structure"` + + // Error details for an asynchronous request. + ErrorDetails *AsyncErrorDetails `type:"structure"` + + // The details for the Multi-Region Access Point. + MultiRegionAccessPointDetails *MultiRegionAccessPointsAsyncResponse `type:"structure"` +} + +// String returns the string representation +func (s AsyncResponseDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AsyncResponseDetails) GoString() string { + return s.String() +} + +// SetErrorDetails sets the ErrorDetails field's value. +func (s *AsyncResponseDetails) SetErrorDetails(v *AsyncErrorDetails) *AsyncResponseDetails { + s.ErrorDetails = v + return s +} + +// SetMultiRegionAccessPointDetails sets the MultiRegionAccessPointDetails field's value. +func (s *AsyncResponseDetails) SetMultiRegionAccessPointDetails(v *MultiRegionAccessPointsAsyncResponse) *AsyncResponseDetails { + s.MultiRegionAccessPointDetails = v + return s +} + // Lambda function used to transform objects through an Object Lambda Access // Point. type AwsLambdaTransformation struct { @@ -5308,7 +6334,8 @@ func (s *BucketLevel) SetPrefixLevel(v *PrefixLevel) *BucketLevel { type CreateAccessPointForObjectLambdaInput struct { _ struct{} `locationName:"CreateAccessPointForObjectLambdaRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` - // The account ID for owner of the specified Object Lambda Access Point. + // The Amazon Web Services account ID for owner of the specified Object Lambda + // Access Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -5414,8 +6441,8 @@ func (s *CreateAccessPointForObjectLambdaOutput) SetObjectLambdaAccessPointArn(v type CreateAccessPointInput struct { _ struct{} `locationName:"CreateAccessPointRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` - // The account ID for the owner of the bucket for which you want to create an - // access point. + // The Amazon Web Services account ID for the owner of the bucket for which + // you want to create an access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -5838,7 +6865,7 @@ func (s *CreateBucketOutput) SetLocation(v string) *CreateBucketOutput { type CreateJobInput struct { _ struct{} `locationName:"CreateJobRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` - // The account ID that creates the job. + // The Amazon Web Services account ID that creates the job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -5977,81 +7004,265 @@ func (s *CreateJobInput) SetClientRequestToken(v string) *CreateJobInput { return s } -// SetConfirmationRequired sets the ConfirmationRequired field's value. -func (s *CreateJobInput) SetConfirmationRequired(v bool) *CreateJobInput { - s.ConfirmationRequired = &v - return s +// SetConfirmationRequired sets the ConfirmationRequired field's value. +func (s *CreateJobInput) SetConfirmationRequired(v bool) *CreateJobInput { + s.ConfirmationRequired = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateJobInput) SetDescription(v string) *CreateJobInput { + s.Description = &v + return s +} + +// SetManifest sets the Manifest field's value. +func (s *CreateJobInput) SetManifest(v *JobManifest) *CreateJobInput { + s.Manifest = v + return s +} + +// SetOperation sets the Operation field's value. +func (s *CreateJobInput) SetOperation(v *JobOperation) *CreateJobInput { + s.Operation = v + return s +} + +// SetPriority sets the Priority field's value. +func (s *CreateJobInput) SetPriority(v int64) *CreateJobInput { + s.Priority = &v + return s +} + +// SetReport sets the Report field's value. +func (s *CreateJobInput) SetReport(v *JobReport) *CreateJobInput { + s.Report = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateJobInput) SetRoleArn(v string) *CreateJobInput { + s.RoleArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateJobInput) SetTags(v []*S3Tag) *CreateJobInput { + s.Tags = v + return s +} + +func (s *CreateJobInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type CreateJobOutput struct { + _ struct{} `type:"structure"` + + // The ID for this job. Amazon S3 generates this ID automatically and returns + // it after a successful Create Job request. + JobId *string `min:"5" type:"string"` +} + +// String returns the string representation +func (s CreateJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateJobOutput) GoString() string { + return s.String() +} + +// SetJobId sets the JobId field's value. +func (s *CreateJobOutput) SetJobId(v string) *CreateJobOutput { + s.JobId = &v + return s +} + +type CreateMultiRegionAccessPointInput struct { + _ struct{} `locationName:"CreateMultiRegionAccessPointRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. The owner of the Multi-Region Access Point also must own the underlying + // buckets. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // An idempotency token used to identify the request and guarantee that requests + // are unique. + ClientToken *string `type:"string" idempotencyToken:"true"` + + // A container element containing details about the Multi-Region Access Point. + // + // Details is a required field + Details *CreateMultiRegionAccessPointInput_ `type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateMultiRegionAccessPointInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateMultiRegionAccessPointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMultiRegionAccessPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMultiRegionAccessPointInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Details == nil { + invalidParams.Add(request.NewErrParamRequired("Details")) + } + if s.Details != nil { + if err := s.Details.Validate(); err != nil { + invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateMultiRegionAccessPointInput) SetAccountId(v string) *CreateMultiRegionAccessPointInput { + s.AccountId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateMultiRegionAccessPointInput) SetClientToken(v string) *CreateMultiRegionAccessPointInput { + s.ClientToken = &v + return s +} + +// SetDetails sets the Details field's value. +func (s *CreateMultiRegionAccessPointInput) SetDetails(v *CreateMultiRegionAccessPointInput_) *CreateMultiRegionAccessPointInput { + s.Details = v + return s +} + +func (s *CreateMultiRegionAccessPointInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +// A container for the information associated with a CreateMultiRegionAccessPoint +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html) +// request. +type CreateMultiRegionAccessPointInput_ struct { + _ struct{} `type:"structure"` + + // The name of the Multi-Region Access Point associated with this request. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // The PublicAccessBlock configuration that you want to apply to this Amazon + // S3 account. You can enable the configuration options in any combination. + // For more information about when Amazon S3 considers a bucket or object public, + // see The Meaning of "Public" (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) + // in the Amazon S3 User Guide. + // + // This is not supported for Amazon S3 on Outposts. + PublicAccessBlock *PublicAccessBlockConfiguration `type:"structure"` + + // The buckets in different Regions that are associated with the Multi-Region + // Access Point. + // + // Regions is a required field + Regions []*Region `locationNameList:"Region" type:"list" required:"true"` } -// SetDescription sets the Description field's value. -func (s *CreateJobInput) SetDescription(v string) *CreateJobInput { - s.Description = &v - return s +// String returns the string representation +func (s CreateMultiRegionAccessPointInput_) String() string { + return awsutil.Prettify(s) } -// SetManifest sets the Manifest field's value. -func (s *CreateJobInput) SetManifest(v *JobManifest) *CreateJobInput { - s.Manifest = v - return s +// GoString returns the string representation +func (s CreateMultiRegionAccessPointInput_) GoString() string { + return s.String() } -// SetOperation sets the Operation field's value. -func (s *CreateJobInput) SetOperation(v *JobOperation) *CreateJobInput { - s.Operation = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMultiRegionAccessPointInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMultiRegionAccessPointInput_"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Regions == nil { + invalidParams.Add(request.NewErrParamRequired("Regions")) + } + if s.Regions != nil { + for i, v := range s.Regions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Regions", i), err.(request.ErrInvalidParams)) + } + } + } -// SetPriority sets the Priority field's value. -func (s *CreateJobInput) SetPriority(v int64) *CreateJobInput { - s.Priority = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetReport sets the Report field's value. -func (s *CreateJobInput) SetReport(v *JobReport) *CreateJobInput { - s.Report = v +// SetName sets the Name field's value. +func (s *CreateMultiRegionAccessPointInput_) SetName(v string) *CreateMultiRegionAccessPointInput_ { + s.Name = &v return s } -// SetRoleArn sets the RoleArn field's value. -func (s *CreateJobInput) SetRoleArn(v string) *CreateJobInput { - s.RoleArn = &v +// SetPublicAccessBlock sets the PublicAccessBlock field's value. +func (s *CreateMultiRegionAccessPointInput_) SetPublicAccessBlock(v *PublicAccessBlockConfiguration) *CreateMultiRegionAccessPointInput_ { + s.PublicAccessBlock = v return s } -// SetTags sets the Tags field's value. -func (s *CreateJobInput) SetTags(v []*S3Tag) *CreateJobInput { - s.Tags = v +// SetRegions sets the Regions field's value. +func (s *CreateMultiRegionAccessPointInput_) SetRegions(v []*Region) *CreateMultiRegionAccessPointInput_ { + s.Regions = v return s } -func (s *CreateJobInput) hostLabels() map[string]string { - return map[string]string{ - "AccountId": aws.StringValue(s.AccountId), - } -} - -type CreateJobOutput struct { +type CreateMultiRegionAccessPointOutput struct { _ struct{} `type:"structure"` - // The ID for this job. Amazon S3 generates this ID automatically and returns - // it after a successful Create Job request. - JobId *string `min:"5" type:"string"` + // The request token associated with the request. You can use this token with + // DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) + // to determine the status of asynchronous requests. + RequestTokenARN *string `min:"1" type:"string"` } // String returns the string representation -func (s CreateJobOutput) String() string { +func (s CreateMultiRegionAccessPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateJobOutput) GoString() string { +func (s CreateMultiRegionAccessPointOutput) GoString() string { return s.String() } -// SetJobId sets the JobId field's value. -func (s *CreateJobOutput) SetJobId(v string) *CreateJobOutput { - s.JobId = &v +// SetRequestTokenARN sets the RequestTokenARN field's value. +func (s *CreateMultiRegionAccessPointOutput) SetRequestTokenARN(v string) *CreateMultiRegionAccessPointOutput { + s.RequestTokenARN = &v return s } @@ -6864,7 +8075,7 @@ func (s DeleteBucketPolicyOutput) GoString() string { type DeleteBucketTaggingInput struct { _ struct{} `locationName:"DeleteBucketTaggingRequest" type:"structure"` - // The account ID of the Outposts bucket tag set to be removed. + // The Amazon Web Services account ID of the Outposts bucket tag set to be removed. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -6993,7 +8204,8 @@ func (s DeleteBucketTaggingOutput) GoString() string { type DeleteJobTaggingInput struct { _ struct{} `locationName:"DeleteJobTaggingRequest" type:"structure"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -7068,11 +8280,154 @@ func (s DeleteJobTaggingOutput) GoString() string { return s.String() } +type DeleteMultiRegionAccessPointInput struct { + _ struct{} `locationName:"DeleteMultiRegionAccessPointRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // An idempotency token used to identify the request and guarantee that requests + // are unique. + ClientToken *string `type:"string" idempotencyToken:"true"` + + // A container element containing details about the Multi-Region Access Point. + // + // Details is a required field + Details *DeleteMultiRegionAccessPointInput_ `type:"structure" required:"true"` +} + +// String returns the string representation +func (s DeleteMultiRegionAccessPointInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteMultiRegionAccessPointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteMultiRegionAccessPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMultiRegionAccessPointInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Details == nil { + invalidParams.Add(request.NewErrParamRequired("Details")) + } + if s.Details != nil { + if err := s.Details.Validate(); err != nil { + invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteMultiRegionAccessPointInput) SetAccountId(v string) *DeleteMultiRegionAccessPointInput { + s.AccountId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *DeleteMultiRegionAccessPointInput) SetClientToken(v string) *DeleteMultiRegionAccessPointInput { + s.ClientToken = &v + return s +} + +// SetDetails sets the Details field's value. +func (s *DeleteMultiRegionAccessPointInput) SetDetails(v *DeleteMultiRegionAccessPointInput_) *DeleteMultiRegionAccessPointInput { + s.Details = v + return s +} + +func (s *DeleteMultiRegionAccessPointInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +// A container for the information associated with a DeleteMultiRegionAccessPoint +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteMultiRegionAccessPoint.html) +// request. +type DeleteMultiRegionAccessPointInput_ struct { + _ struct{} `type:"structure"` + + // The name of the Multi-Region Access Point associated with this request. + // + // Name is a required field + Name *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteMultiRegionAccessPointInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteMultiRegionAccessPointInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteMultiRegionAccessPointInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMultiRegionAccessPointInput_"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteMultiRegionAccessPointInput_) SetName(v string) *DeleteMultiRegionAccessPointInput_ { + s.Name = &v + return s +} + +type DeleteMultiRegionAccessPointOutput struct { + _ struct{} `type:"structure"` + + // The request token associated with the request. You can use this token with + // DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) + // to determine the status of asynchronous requests. + RequestTokenARN *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DeleteMultiRegionAccessPointOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteMultiRegionAccessPointOutput) GoString() string { + return s.String() +} + +// SetRequestTokenARN sets the RequestTokenARN field's value. +func (s *DeleteMultiRegionAccessPointOutput) SetRequestTokenARN(v string) *DeleteMultiRegionAccessPointOutput { + s.RequestTokenARN = &v + return s +} + type DeletePublicAccessBlockInput struct { _ struct{} `locationName:"DeletePublicAccessBlockRequest" type:"structure"` - // The account ID for the account whose PublicAccessBlock configuration you - // want to remove. + // The account ID for the Amazon Web Services account whose PublicAccessBlock + // configuration you want to remove. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -7289,7 +8644,8 @@ func (s DeleteStorageLensConfigurationTaggingOutput) GoString() string { type DescribeJobInput struct { _ struct{} `locationName:"DescribeJobRequest" type:"structure"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -7338,39 +8694,159 @@ func (s *DescribeJobInput) SetAccountId(v string) *DescribeJobInput { return s } -// SetJobId sets the JobId field's value. -func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput { - s.JobId = &v - return s +// SetJobId sets the JobId field's value. +func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput { + s.JobId = &v + return s +} + +func (s *DescribeJobInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DescribeJobOutput struct { + _ struct{} `type:"structure"` + + // Contains the configuration parameters and status for the job specified in + // the Describe Job request. + Job *JobDescriptor `type:"structure"` +} + +// String returns the string representation +func (s DescribeJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeJobOutput) GoString() string { + return s.String() +} + +// SetJob sets the Job field's value. +func (s *DescribeJobOutput) SetJob(v *JobDescriptor) *DescribeJobOutput { + s.Job = v + return s +} + +type DescribeMultiRegionAccessPointOperationInput struct { + _ struct{} `locationName:"DescribeMultiRegionAccessPointOperationRequest" type:"structure"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The request token associated with the request you want to know about. This + // request token is returned as part of the response when you make an asynchronous + // request. You provide this token to query about the status of the asynchronous + // action. + // + // RequestTokenARN is a required field + RequestTokenARN *string `location:"uri" locationName:"request_token" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeMultiRegionAccessPointOperationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeMultiRegionAccessPointOperationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeMultiRegionAccessPointOperationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeMultiRegionAccessPointOperationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.RequestTokenARN == nil { + invalidParams.Add(request.NewErrParamRequired("RequestTokenARN")) + } + if s.RequestTokenARN != nil && len(*s.RequestTokenARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RequestTokenARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DescribeMultiRegionAccessPointOperationInput) SetAccountId(v string) *DescribeMultiRegionAccessPointOperationInput { + s.AccountId = &v + return s +} + +// SetRequestTokenARN sets the RequestTokenARN field's value. +func (s *DescribeMultiRegionAccessPointOperationInput) SetRequestTokenARN(v string) *DescribeMultiRegionAccessPointOperationInput { + s.RequestTokenARN = &v + return s +} + +func (s *DescribeMultiRegionAccessPointOperationInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type DescribeMultiRegionAccessPointOperationOutput struct { + _ struct{} `type:"structure"` + + // A container element containing the details of the asynchronous operation. + AsyncOperation *AsyncOperation `type:"structure"` +} + +// String returns the string representation +func (s DescribeMultiRegionAccessPointOperationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeMultiRegionAccessPointOperationOutput) GoString() string { + return s.String() } -func (s *DescribeJobInput) hostLabels() map[string]string { - return map[string]string{ - "AccountId": aws.StringValue(s.AccountId), - } +// SetAsyncOperation sets the AsyncOperation field's value. +func (s *DescribeMultiRegionAccessPointOperationOutput) SetAsyncOperation(v *AsyncOperation) *DescribeMultiRegionAccessPointOperationOutput { + s.AsyncOperation = v + return s } -type DescribeJobOutput struct { +// The last established access control policy for a Multi-Region Access Point. +// +// When you update the policy, the update is first listed as the proposed policy. +// After the update is finished and all Regions have been updated, the proposed +// policy is listed as the established policy. If both policies have the same +// version number, the proposed policy is the established policy. +type EstablishedMultiRegionAccessPointPolicy struct { _ struct{} `type:"structure"` - // Contains the configuration parameters and status for the job specified in - // the Describe Job request. - Job *JobDescriptor `type:"structure"` + // The details of the last established policy. + Policy *string `type:"string"` } // String returns the string representation -func (s DescribeJobOutput) String() string { +func (s EstablishedMultiRegionAccessPointPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeJobOutput) GoString() string { +func (s EstablishedMultiRegionAccessPointPolicy) GoString() string { return s.String() } -// SetJob sets the Job field's value. -func (s *DescribeJobOutput) SetJob(v *JobDescriptor) *DescribeJobOutput { - s.Job = v +// SetPolicy sets the Policy field's value. +func (s *EstablishedMultiRegionAccessPointPolicy) SetPolicy(v string) *EstablishedMultiRegionAccessPointPolicy { + s.Policy = &v return s } @@ -8239,7 +9715,7 @@ func (s *GetAccessPointPolicyStatusOutput) SetPolicyStatus(v *PolicyStatus) *Get type GetBucketInput struct { _ struct{} `locationName:"GetBucketRequest" type:"structure"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -8354,7 +9830,7 @@ func (s GetBucketInput) updateAccountID(accountId string) (interface{}, error) { type GetBucketLifecycleConfigurationInput struct { _ struct{} `locationName:"GetBucketLifecycleConfigurationRequest" type:"structure"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -8532,7 +10008,7 @@ func (s *GetBucketOutput) SetPublicAccessBlockEnabled(v bool) *GetBucketOutput { type GetBucketPolicyInput struct { _ struct{} `locationName:"GetBucketPolicyRequest" type:"structure"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -8670,7 +10146,7 @@ func (s *GetBucketPolicyOutput) SetPolicy(v string) *GetBucketPolicyOutput { type GetBucketTaggingInput struct { _ struct{} `locationName:"GetBucketTaggingRequest" type:"structure"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -8792,59 +10268,338 @@ type GetBucketTaggingOutput struct { } // String returns the string representation -func (s GetBucketTaggingOutput) String() string { +func (s GetBucketTaggingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetBucketTaggingOutput) GoString() string { + return s.String() +} + +// SetTagSet sets the TagSet field's value. +func (s *GetBucketTaggingOutput) SetTagSet(v []*S3Tag) *GetBucketTaggingOutput { + s.TagSet = v + return s +} + +type GetJobTaggingInput struct { + _ struct{} `locationName:"GetJobTaggingRequest" type:"structure"` + + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The ID for the S3 Batch Operations job whose tags you want to retrieve. + // + // JobId is a required field + JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetJobTaggingInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetJobTaggingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetJobTaggingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetJobTaggingInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.JobId == nil { + invalidParams.Add(request.NewErrParamRequired("JobId")) + } + if s.JobId != nil && len(*s.JobId) < 5 { + invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetJobTaggingInput) SetAccountId(v string) *GetJobTaggingInput { + s.AccountId = &v + return s +} + +// SetJobId sets the JobId field's value. +func (s *GetJobTaggingInput) SetJobId(v string) *GetJobTaggingInput { + s.JobId = &v + return s +} + +func (s *GetJobTaggingInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetJobTaggingOutput struct { + _ struct{} `type:"structure"` + + // The set of tags associated with the S3 Batch Operations job. + Tags []*S3Tag `type:"list"` +} + +// String returns the string representation +func (s GetJobTaggingOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetJobTaggingOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *GetJobTaggingOutput) SetTags(v []*S3Tag) *GetJobTaggingOutput { + s.Tags = v + return s +} + +type GetMultiRegionAccessPointInput struct { + _ struct{} `locationName:"GetMultiRegionAccessPointRequest" type:"structure"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // The name of the Multi-Region Access Point whose configuration information + // you want to receive. The name of the Multi-Region Access Point is different + // from the alias. For more information about the distinction between the name + // and the alias of an Multi-Region Access Point, see Managing Multi-Region + // Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) + // in the Amazon S3 User Guide. + // + // Name is a required field + Name *string `location:"uri" locationName:"name" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetMultiRegionAccessPointInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetMultiRegionAccessPointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMultiRegionAccessPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetMultiRegionAccessPointInput) SetAccountId(v string) *GetMultiRegionAccessPointInput { + s.AccountId = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetMultiRegionAccessPointInput) SetName(v string) *GetMultiRegionAccessPointInput { + s.Name = &v + return s +} + +func (s *GetMultiRegionAccessPointInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetMultiRegionAccessPointOutput struct { + _ struct{} `type:"structure"` + + // A container element containing the details of the requested Multi-Region + // Access Point. + AccessPoint *MultiRegionAccessPointReport `type:"structure"` +} + +// String returns the string representation +func (s GetMultiRegionAccessPointOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetMultiRegionAccessPointOutput) GoString() string { + return s.String() +} + +// SetAccessPoint sets the AccessPoint field's value. +func (s *GetMultiRegionAccessPointOutput) SetAccessPoint(v *MultiRegionAccessPointReport) *GetMultiRegionAccessPointOutput { + s.AccessPoint = v + return s +} + +type GetMultiRegionAccessPointPolicyInput struct { + _ struct{} `locationName:"GetMultiRegionAccessPointPolicyRequest" type:"structure"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // Specifies the Multi-Region Access Point. The name of the Multi-Region Access + // Point is different from the alias. For more information about the distinction + // between the name and the alias of an Multi-Region Access Point, see Managing + // Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) + // in the Amazon S3 User Guide. + // + // Name is a required field + Name *string `location:"uri" locationName:"name" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetMultiRegionAccessPointPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetMultiRegionAccessPointPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMultiRegionAccessPointPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointPolicyInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *GetMultiRegionAccessPointPolicyInput) SetAccountId(v string) *GetMultiRegionAccessPointPolicyInput { + s.AccountId = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetMultiRegionAccessPointPolicyInput) SetName(v string) *GetMultiRegionAccessPointPolicyInput { + s.Name = &v + return s +} + +func (s *GetMultiRegionAccessPointPolicyInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type GetMultiRegionAccessPointPolicyOutput struct { + _ struct{} `type:"structure"` + + // The policy associated with the specified Multi-Region Access Point. + Policy *MultiRegionAccessPointPolicyDocument `type:"structure"` +} + +// String returns the string representation +func (s GetMultiRegionAccessPointPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetBucketTaggingOutput) GoString() string { +func (s GetMultiRegionAccessPointPolicyOutput) GoString() string { return s.String() } -// SetTagSet sets the TagSet field's value. -func (s *GetBucketTaggingOutput) SetTagSet(v []*S3Tag) *GetBucketTaggingOutput { - s.TagSet = v +// SetPolicy sets the Policy field's value. +func (s *GetMultiRegionAccessPointPolicyOutput) SetPolicy(v *MultiRegionAccessPointPolicyDocument) *GetMultiRegionAccessPointPolicyOutput { + s.Policy = v return s } -type GetJobTaggingInput struct { - _ struct{} `locationName:"GetJobTaggingRequest" type:"structure"` +type GetMultiRegionAccessPointPolicyStatusInput struct { + _ struct{} `locationName:"GetMultiRegionAccessPointPolicyStatusRequest" type:"structure"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` - // The ID for the S3 Batch Operations job whose tags you want to retrieve. + // Specifies the Multi-Region Access Point. The name of the Multi-Region Access + // Point is different from the alias. For more information about the distinction + // between the name and the alias of an Multi-Region Access Point, see Managing + // Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) + // in the Amazon S3 User Guide. // - // JobId is a required field - JobId *string `location:"uri" locationName:"id" min:"5" type:"string" required:"true"` + // Name is a required field + Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation -func (s GetJobTaggingInput) String() string { +func (s GetMultiRegionAccessPointPolicyStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetJobTaggingInput) GoString() string { +func (s GetMultiRegionAccessPointPolicyStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetJobTaggingInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetJobTaggingInput"} +func (s *GetMultiRegionAccessPointPolicyStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMultiRegionAccessPointPolicyStatusInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } - if s.JobId == nil { - invalidParams.Add(request.NewErrParamRequired("JobId")) + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.JobId != nil && len(*s.JobId) < 5 { - invalidParams.Add(request.NewErrParamMinLen("JobId", 5)) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { @@ -8854,51 +10609,54 @@ func (s *GetJobTaggingInput) Validate() error { } // SetAccountId sets the AccountId field's value. -func (s *GetJobTaggingInput) SetAccountId(v string) *GetJobTaggingInput { +func (s *GetMultiRegionAccessPointPolicyStatusInput) SetAccountId(v string) *GetMultiRegionAccessPointPolicyStatusInput { s.AccountId = &v return s } -// SetJobId sets the JobId field's value. -func (s *GetJobTaggingInput) SetJobId(v string) *GetJobTaggingInput { - s.JobId = &v +// SetName sets the Name field's value. +func (s *GetMultiRegionAccessPointPolicyStatusInput) SetName(v string) *GetMultiRegionAccessPointPolicyStatusInput { + s.Name = &v return s } -func (s *GetJobTaggingInput) hostLabels() map[string]string { +func (s *GetMultiRegionAccessPointPolicyStatusInput) hostLabels() map[string]string { return map[string]string{ "AccountId": aws.StringValue(s.AccountId), } } -type GetJobTaggingOutput struct { +type GetMultiRegionAccessPointPolicyStatusOutput struct { _ struct{} `type:"structure"` - // The set of tags associated with the S3 Batch Operations job. - Tags []*S3Tag `type:"list"` + // Indicates whether this access point policy is public. For more information + // about how Amazon S3 evaluates policies to determine whether they are public, + // see The Meaning of "Public" (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) + // in the Amazon S3 User Guide. + Established *PolicyStatus `type:"structure"` } // String returns the string representation -func (s GetJobTaggingOutput) String() string { +func (s GetMultiRegionAccessPointPolicyStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetJobTaggingOutput) GoString() string { +func (s GetMultiRegionAccessPointPolicyStatusOutput) GoString() string { return s.String() } -// SetTags sets the Tags field's value. -func (s *GetJobTaggingOutput) SetTags(v []*S3Tag) *GetJobTaggingOutput { - s.Tags = v +// SetEstablished sets the Established field's value. +func (s *GetMultiRegionAccessPointPolicyStatusOutput) SetEstablished(v *PolicyStatus) *GetMultiRegionAccessPointPolicyStatusOutput { + s.Established = v return s } type GetPublicAccessBlockInput struct { _ struct{} `locationName:"GetPublicAccessBlockRequest" type:"structure"` - // The account ID for the account whose PublicAccessBlock configuration you - // want to retrieve. + // The account ID for the Amazon Web Services account whose PublicAccessBlock + // configuration you want to retrieve. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -8945,7 +10703,8 @@ func (s *GetPublicAccessBlockInput) hostLabels() map[string]string { type GetPublicAccessBlockOutput struct { _ struct{} `type:"structure" payload:"PublicAccessBlockConfiguration"` - // The PublicAccessBlock configuration currently in effect for this account. + // The PublicAccessBlock configuration currently in effect for this Amazon Web + // Services account. PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `type:"structure"` } @@ -10417,7 +12176,8 @@ func (s *ListAccessPointsForObjectLambdaOutput) SetObjectLambdaAccessPointList(v type ListAccessPointsInput struct { _ struct{} `locationName:"ListAccessPointsRequest" type:"structure"` - // The account ID for owner of the bucket whose access points you want to list. + // The Amazon Web Services account ID for owner of the bucket whose access points + // you want to list. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -10588,7 +12348,8 @@ func (s *ListAccessPointsOutput) SetNextToken(v string) *ListAccessPointsOutput type ListJobsInput struct { _ struct{} `locationName:"ListJobsRequest" type:"structure"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -10701,10 +12462,114 @@ func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput { return s } +type ListMultiRegionAccessPointsInput struct { + _ struct{} `locationName:"ListMultiRegionAccessPointsRequest" type:"structure"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // Not currently used. Do not use this parameter. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // Not currently used. Do not use this parameter. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation +func (s ListMultiRegionAccessPointsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListMultiRegionAccessPointsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMultiRegionAccessPointsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMultiRegionAccessPointsInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListMultiRegionAccessPointsInput) SetAccountId(v string) *ListMultiRegionAccessPointsInput { + s.AccountId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMultiRegionAccessPointsInput) SetMaxResults(v int64) *ListMultiRegionAccessPointsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMultiRegionAccessPointsInput) SetNextToken(v string) *ListMultiRegionAccessPointsInput { + s.NextToken = &v + return s +} + +func (s *ListMultiRegionAccessPointsInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type ListMultiRegionAccessPointsOutput struct { + _ struct{} `type:"structure"` + + // The list of Multi-Region Access Points associated with the user. + AccessPoints []*MultiRegionAccessPointReport `locationNameList:"AccessPoint" type:"list"` + + // If the specified bucket has more Multi-Region Access Points than can be returned + // in one call to this action, this field contains a continuation token. You + // can use this token tin subsequent calls to this action to retrieve additional + // Multi-Region Access Points. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s ListMultiRegionAccessPointsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListMultiRegionAccessPointsOutput) GoString() string { + return s.String() +} + +// SetAccessPoints sets the AccessPoints field's value. +func (s *ListMultiRegionAccessPointsOutput) SetAccessPoints(v []*MultiRegionAccessPointReport) *ListMultiRegionAccessPointsOutput { + s.AccessPoints = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMultiRegionAccessPointsOutput) SetNextToken(v string) *ListMultiRegionAccessPointsOutput { + s.NextToken = &v + return s +} + type ListRegionalBucketsInput struct { _ struct{} `locationName:"ListRegionalBucketsRequest" type:"structure"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -10921,61 +12786,244 @@ func (s *ListStorageLensConfigurationsInput) Validate() error { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } - if invalidParams.Len() > 0 { - return invalidParams - } - return nil + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *ListStorageLensConfigurationsInput) SetAccountId(v string) *ListStorageLensConfigurationsInput { + s.AccountId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListStorageLensConfigurationsInput) SetNextToken(v string) *ListStorageLensConfigurationsInput { + s.NextToken = &v + return s +} + +func (s *ListStorageLensConfigurationsInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +type ListStorageLensConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // If the request produced more than the maximum number of S3 Storage Lens configuration + // results, you can pass this value into a subsequent request to retrieve the + // next page of results. + NextToken *string `type:"string"` + + // A list of S3 Storage Lens configurations. + StorageLensConfigurationList []*ListStorageLensConfigurationEntry `locationNameList:"StorageLensConfiguration" type:"list" flattened:"true"` +} + +// String returns the string representation +func (s ListStorageLensConfigurationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListStorageLensConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListStorageLensConfigurationsOutput) SetNextToken(v string) *ListStorageLensConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetStorageLensConfigurationList sets the StorageLensConfigurationList field's value. +func (s *ListStorageLensConfigurationsOutput) SetStorageLensConfigurationList(v []*ListStorageLensConfigurationEntry) *ListStorageLensConfigurationsOutput { + s.StorageLensConfigurationList = v + return s +} + +// The Multi-Region Access Point access control policy. +// +// When you update the policy, the update is first listed as the proposed policy. +// After the update is finished and all Regions have been updated, the proposed +// policy is listed as the established policy. If both policies have the same +// version number, the proposed policy is the established policy. +type MultiRegionAccessPointPolicyDocument struct { + _ struct{} `type:"structure"` + + // The last established policy for the Multi-Region Access Point. + Established *EstablishedMultiRegionAccessPointPolicy `type:"structure"` + + // The proposed policy for the Multi-Region Access Point. + Proposed *ProposedMultiRegionAccessPointPolicy `type:"structure"` +} + +// String returns the string representation +func (s MultiRegionAccessPointPolicyDocument) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MultiRegionAccessPointPolicyDocument) GoString() string { + return s.String() +} + +// SetEstablished sets the Established field's value. +func (s *MultiRegionAccessPointPolicyDocument) SetEstablished(v *EstablishedMultiRegionAccessPointPolicy) *MultiRegionAccessPointPolicyDocument { + s.Established = v + return s +} + +// SetProposed sets the Proposed field's value. +func (s *MultiRegionAccessPointPolicyDocument) SetProposed(v *ProposedMultiRegionAccessPointPolicy) *MultiRegionAccessPointPolicyDocument { + s.Proposed = v + return s +} + +// Status information for a single Multi-Region Access Point Region. +type MultiRegionAccessPointRegionalResponse struct { + _ struct{} `type:"structure"` + + // The name of the Region in the Multi-Region Access Point. + Name *string `min:"1" type:"string"` + + // The current status of the Multi-Region Access Point in this Region. + RequestStatus *string `type:"string"` +} + +// String returns the string representation +func (s MultiRegionAccessPointRegionalResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MultiRegionAccessPointRegionalResponse) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *MultiRegionAccessPointRegionalResponse) SetName(v string) *MultiRegionAccessPointRegionalResponse { + s.Name = &v + return s +} + +// SetRequestStatus sets the RequestStatus field's value. +func (s *MultiRegionAccessPointRegionalResponse) SetRequestStatus(v string) *MultiRegionAccessPointRegionalResponse { + s.RequestStatus = &v + return s +} + +// A collection of statuses for a Multi-Region Access Point in the various Regions +// it supports. +type MultiRegionAccessPointReport struct { + _ struct{} `type:"structure"` + + // The alias for the Multi-Region Access Point. For more information about the + // distinction between the name and the alias of an Multi-Region Access Point, + // see Managing Multi-Region Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming). + Alias *string `type:"string"` + + // When the Multi-Region Access Point create request was received. + CreatedAt *time.Time `type:"timestamp"` + + // The name of the Multi-Region Access Point. + Name *string `type:"string"` + + // The PublicAccessBlock configuration that you want to apply to this Amazon + // S3 account. You can enable the configuration options in any combination. + // For more information about when Amazon S3 considers a bucket or object public, + // see The Meaning of "Public" (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) + // in the Amazon S3 User Guide. + // + // This is not supported for Amazon S3 on Outposts. + PublicAccessBlock *PublicAccessBlockConfiguration `type:"structure"` + + // A collection of the Regions and buckets associated with the Multi-Region + // Access Point. + Regions []*RegionReport `locationNameList:"Region" type:"list"` + + // The current status of the Multi-Region Access Point. + // + // CREATING and DELETING are temporary states that exist while the request is + // propogating and being completed. If a Multi-Region Access Point has a status + // of PARTIALLY_CREATED, you can retry creation or send a request to delete + // the Multi-Region Access Point. If a Multi-Region Access Point has a status + // of PARTIALLY_DELETED, you can retry a delete request to finish the deletion + // of the Multi-Region Access Point. + Status *string `type:"string" enum:"MultiRegionAccessPointStatus"` +} + +// String returns the string representation +func (s MultiRegionAccessPointReport) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MultiRegionAccessPointReport) GoString() string { + return s.String() +} + +// SetAlias sets the Alias field's value. +func (s *MultiRegionAccessPointReport) SetAlias(v string) *MultiRegionAccessPointReport { + s.Alias = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *MultiRegionAccessPointReport) SetCreatedAt(v time.Time) *MultiRegionAccessPointReport { + s.CreatedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *MultiRegionAccessPointReport) SetName(v string) *MultiRegionAccessPointReport { + s.Name = &v + return s } -// SetAccountId sets the AccountId field's value. -func (s *ListStorageLensConfigurationsInput) SetAccountId(v string) *ListStorageLensConfigurationsInput { - s.AccountId = &v +// SetPublicAccessBlock sets the PublicAccessBlock field's value. +func (s *MultiRegionAccessPointReport) SetPublicAccessBlock(v *PublicAccessBlockConfiguration) *MultiRegionAccessPointReport { + s.PublicAccessBlock = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListStorageLensConfigurationsInput) SetNextToken(v string) *ListStorageLensConfigurationsInput { - s.NextToken = &v +// SetRegions sets the Regions field's value. +func (s *MultiRegionAccessPointReport) SetRegions(v []*RegionReport) *MultiRegionAccessPointReport { + s.Regions = v return s } -func (s *ListStorageLensConfigurationsInput) hostLabels() map[string]string { - return map[string]string{ - "AccountId": aws.StringValue(s.AccountId), - } +// SetStatus sets the Status field's value. +func (s *MultiRegionAccessPointReport) SetStatus(v string) *MultiRegionAccessPointReport { + s.Status = &v + return s } -type ListStorageLensConfigurationsOutput struct { +// The Multi-Region Access Point details that are returned when querying about +// an asynchronous request. +type MultiRegionAccessPointsAsyncResponse struct { _ struct{} `type:"structure"` - // If the request produced more than the maximum number of S3 Storage Lens configuration - // results, you can pass this value into a subsequent request to retrieve the - // next page of results. - NextToken *string `type:"string"` - - // A list of S3 Storage Lens configurations. - StorageLensConfigurationList []*ListStorageLensConfigurationEntry `locationNameList:"StorageLensConfiguration" type:"list" flattened:"true"` + // A collection of status information for the different Regions that a Multi-Region + // Access Point supports. + Regions []*MultiRegionAccessPointRegionalResponse `locationNameList:"Region" type:"list"` } // String returns the string representation -func (s ListStorageLensConfigurationsOutput) String() string { +func (s MultiRegionAccessPointsAsyncResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListStorageLensConfigurationsOutput) GoString() string { +func (s MultiRegionAccessPointsAsyncResponse) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListStorageLensConfigurationsOutput) SetNextToken(v string) *ListStorageLensConfigurationsOutput { - s.NextToken = &v - return s -} - -// SetStorageLensConfigurationList sets the StorageLensConfigurationList field's value. -func (s *ListStorageLensConfigurationsOutput) SetStorageLensConfigurationList(v []*ListStorageLensConfigurationEntry) *ListStorageLensConfigurationsOutput { - s.StorageLensConfigurationList = v +// SetRegions sets the Regions field's value. +func (s *MultiRegionAccessPointsAsyncResponse) SetRegions(v []*MultiRegionAccessPointRegionalResponse) *MultiRegionAccessPointsAsyncResponse { + s.Regions = v return s } @@ -11381,6 +13429,35 @@ func (s *PrefixLevelStorageMetrics) SetSelectionCriteria(v *SelectionCriteria) * return s } +// The proposed access control policy for the Multi-Region Access Point. +// +// When you update the policy, the update is first listed as the proposed policy. +// After the update is finished and all Regions have been updated, the proposed +// policy is listed as the established policy. If both policies have the same +// version number, the proposed policy is the established policy. +type ProposedMultiRegionAccessPointPolicy struct { + _ struct{} `type:"structure"` + + // The details of the proposed policy. + Policy *string `type:"string"` +} + +// String returns the string representation +func (s ProposedMultiRegionAccessPointPolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ProposedMultiRegionAccessPointPolicy) GoString() string { + return s.String() +} + +// SetPolicy sets the Policy field's value. +func (s *ProposedMultiRegionAccessPointPolicy) SetPolicy(v string) *ProposedMultiRegionAccessPointPolicy { + s.Policy = &v + return s +} + // The PublicAccessBlock configuration that you want to apply to this Amazon // S3 account. You can enable the configuration options in any combination. // For more information about when Amazon S3 considers a bucket or object public, @@ -11667,8 +13744,8 @@ func (s PutAccessPointPolicyForObjectLambdaOutput) GoString() string { type PutAccessPointPolicyInput struct { _ struct{} `locationName:"PutAccessPointPolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` - // The account ID for owner of the bucket associated with the specified access - // point. + // The Amazon Web Services account ID for owner of the bucket associated with + // the specified access point. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -11816,7 +13893,7 @@ func (s PutAccessPointPolicyOutput) GoString() string { type PutBucketLifecycleConfigurationInput struct { _ struct{} `locationName:"PutBucketLifecycleConfigurationRequest" type:"structure" payload:"LifecycleConfiguration"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -11949,7 +14026,7 @@ func (s PutBucketLifecycleConfigurationOutput) GoString() string { type PutBucketPolicyInput struct { _ struct{} `locationName:"PutBucketPolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -12104,7 +14181,7 @@ func (s PutBucketPolicyOutput) GoString() string { type PutBucketTaggingInput struct { _ struct{} `locationName:"PutBucketTaggingRequest" type:"structure" payload:"Tagging"` - // The account ID of the Outposts bucket. + // The Amazon Web Services account ID of the Outposts bucket. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -12250,7 +14327,8 @@ func (s PutBucketTaggingOutput) GoString() string { type PutJobTaggingInput struct { _ struct{} `locationName:"PutJobTaggingRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -12349,17 +14427,175 @@ func (s PutJobTaggingOutput) GoString() string { return s.String() } +type PutMultiRegionAccessPointPolicyInput struct { + _ struct{} `locationName:"PutMultiRegionAccessPointPolicyRequest" type:"structure" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` + + // The Amazon Web Services account ID for the owner of the Multi-Region Access + // Point. + // + // AccountId is a required field + AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` + + // An idempotency token used to identify the request and guarantee that requests + // are unique. + ClientToken *string `type:"string" idempotencyToken:"true"` + + // A container element containing the details of the policy for the Multi-Region + // Access Point. + // + // Details is a required field + Details *PutMultiRegionAccessPointPolicyInput_ `type:"structure" required:"true"` +} + +// String returns the string representation +func (s PutMultiRegionAccessPointPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutMultiRegionAccessPointPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutMultiRegionAccessPointPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutMultiRegionAccessPointPolicyInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) + } + if s.Details == nil { + invalidParams.Add(request.NewErrParamRequired("Details")) + } + if s.Details != nil { + if err := s.Details.Validate(); err != nil { + invalidParams.AddNested("Details", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *PutMultiRegionAccessPointPolicyInput) SetAccountId(v string) *PutMultiRegionAccessPointPolicyInput { + s.AccountId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *PutMultiRegionAccessPointPolicyInput) SetClientToken(v string) *PutMultiRegionAccessPointPolicyInput { + s.ClientToken = &v + return s +} + +// SetDetails sets the Details field's value. +func (s *PutMultiRegionAccessPointPolicyInput) SetDetails(v *PutMultiRegionAccessPointPolicyInput_) *PutMultiRegionAccessPointPolicyInput { + s.Details = v + return s +} + +func (s *PutMultiRegionAccessPointPolicyInput) hostLabels() map[string]string { + return map[string]string{ + "AccountId": aws.StringValue(s.AccountId), + } +} + +// A container for the information associated with a PutMultiRegionAccessPoint +// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPoint.html) +// request. +type PutMultiRegionAccessPointPolicyInput_ struct { + _ struct{} `type:"structure"` + + // The name of the Multi-Region Access Point associated with the request. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // The policy details for the PutMultiRegionAccessPoint request. + // + // Policy is a required field + Policy *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s PutMultiRegionAccessPointPolicyInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutMultiRegionAccessPointPolicyInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutMultiRegionAccessPointPolicyInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutMultiRegionAccessPointPolicyInput_"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Policy == nil { + invalidParams.Add(request.NewErrParamRequired("Policy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *PutMultiRegionAccessPointPolicyInput_) SetName(v string) *PutMultiRegionAccessPointPolicyInput_ { + s.Name = &v + return s +} + +// SetPolicy sets the Policy field's value. +func (s *PutMultiRegionAccessPointPolicyInput_) SetPolicy(v string) *PutMultiRegionAccessPointPolicyInput_ { + s.Policy = &v + return s +} + +type PutMultiRegionAccessPointPolicyOutput struct { + _ struct{} `type:"structure"` + + // The request token associated with the request. You can use this token with + // DescribeMultiRegionAccessPointOperation (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html) + // to determine the status of asynchronous requests. + RequestTokenARN *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s PutMultiRegionAccessPointPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutMultiRegionAccessPointPolicyOutput) GoString() string { + return s.String() +} + +// SetRequestTokenARN sets the RequestTokenARN field's value. +func (s *PutMultiRegionAccessPointPolicyOutput) SetRequestTokenARN(v string) *PutMultiRegionAccessPointPolicyOutput { + s.RequestTokenARN = &v + return s +} + type PutPublicAccessBlockInput struct { _ struct{} `locationName:"PutPublicAccessBlockRequest" type:"structure" payload:"PublicAccessBlockConfiguration"` - // The account ID for the account whose PublicAccessBlock configuration you - // want to set. + // The account ID for the Amazon Web Services account whose PublicAccessBlock + // configuration you want to set. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` // The PublicAccessBlock configuration that you want to apply to the specified - // account. + // Amazon Web Services account. // // PublicAccessBlockConfiguration is a required field PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `locationName:"PublicAccessBlockConfiguration" type:"structure" required:"true" xmlURI:"http://awss3control.amazonaws.com/doc/2018-08-20/"` @@ -12648,6 +14884,83 @@ func (s PutStorageLensConfigurationTaggingOutput) GoString() string { return s.String() } +// A Region that supports a Multi-Region Access Point as well as the associated +// bucket for the Region. +type Region struct { + _ struct{} `type:"structure"` + + // The name of the associated bucket for the Region. + // + // Bucket is a required field + Bucket *string `min:"3" type:"string" required:"true"` +} + +// String returns the string representation +func (s Region) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Region) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Region) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Region"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) + } + if s.Bucket != nil && len(*s.Bucket) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *Region) SetBucket(v string) *Region { + s.Bucket = &v + return s +} + +// A combination of a bucket and Region that's part of a Multi-Region Access +// Point. +type RegionReport struct { + _ struct{} `type:"structure"` + + // The name of the bucket. + Bucket *string `min:"3" type:"string"` + + // The name of the Region. + Region *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s RegionReport) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RegionReport) GoString() string { + return s.String() +} + +// SetBucket sets the Bucket field's value. +func (s *RegionReport) SetBucket(v string) *RegionReport { + s.Bucket = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *RegionReport) SetRegion(v string) *RegionReport { + s.Region = &v + return s +} + // The container for the regional bucket. type RegionalBucket struct { _ struct{} `type:"structure"` @@ -14348,7 +16661,8 @@ func (s *Transition) SetStorageClass(v string) *Transition { type UpdateJobPriorityInput struct { _ struct{} `locationName:"UpdateJobPriorityRequest" type:"structure"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -14462,7 +16776,8 @@ func (s *UpdateJobPriorityOutput) SetPriority(v int64) *UpdateJobPriorityOutput type UpdateJobStatusInput struct { _ struct{} `locationName:"UpdateJobStatusRequest" type:"structure"` - // The account ID associated with the S3 Batch Operations job. + // The Amazon Web Services account ID associated with the S3 Batch Operations + // job. // // AccountId is a required field AccountId *string `location:"header" locationName:"x-amz-account-id" type:"string" required:"true"` @@ -14634,6 +16949,26 @@ func (s *VpcConfiguration) SetVpcId(v string) *VpcConfiguration { return s } +const ( + // AsyncOperationNameCreateMultiRegionAccessPoint is a AsyncOperationName enum value + AsyncOperationNameCreateMultiRegionAccessPoint = "CreateMultiRegionAccessPoint" + + // AsyncOperationNameDeleteMultiRegionAccessPoint is a AsyncOperationName enum value + AsyncOperationNameDeleteMultiRegionAccessPoint = "DeleteMultiRegionAccessPoint" + + // AsyncOperationNamePutMultiRegionAccessPointPolicy is a AsyncOperationName enum value + AsyncOperationNamePutMultiRegionAccessPointPolicy = "PutMultiRegionAccessPointPolicy" +) + +// AsyncOperationName_Values returns all elements of the AsyncOperationName enum +func AsyncOperationName_Values() []string { + return []string{ + AsyncOperationNameCreateMultiRegionAccessPoint, + AsyncOperationNameDeleteMultiRegionAccessPoint, + AsyncOperationNamePutMultiRegionAccessPointPolicy, + } +} + const ( // BucketCannedACLPrivate is a BucketCannedACL enum value BucketCannedACLPrivate = "private" @@ -14870,6 +17205,38 @@ func JobStatus_Values() []string { } } +const ( + // MultiRegionAccessPointStatusReady is a MultiRegionAccessPointStatus enum value + MultiRegionAccessPointStatusReady = "READY" + + // MultiRegionAccessPointStatusInconsistentAcrossRegions is a MultiRegionAccessPointStatus enum value + MultiRegionAccessPointStatusInconsistentAcrossRegions = "INCONSISTENT_ACROSS_REGIONS" + + // MultiRegionAccessPointStatusCreating is a MultiRegionAccessPointStatus enum value + MultiRegionAccessPointStatusCreating = "CREATING" + + // MultiRegionAccessPointStatusPartiallyCreated is a MultiRegionAccessPointStatus enum value + MultiRegionAccessPointStatusPartiallyCreated = "PARTIALLY_CREATED" + + // MultiRegionAccessPointStatusPartiallyDeleted is a MultiRegionAccessPointStatus enum value + MultiRegionAccessPointStatusPartiallyDeleted = "PARTIALLY_DELETED" + + // MultiRegionAccessPointStatusDeleting is a MultiRegionAccessPointStatus enum value + MultiRegionAccessPointStatusDeleting = "DELETING" +) + +// MultiRegionAccessPointStatus_Values returns all elements of the MultiRegionAccessPointStatus enum +func MultiRegionAccessPointStatus_Values() []string { + return []string{ + MultiRegionAccessPointStatusReady, + MultiRegionAccessPointStatusInconsistentAcrossRegions, + MultiRegionAccessPointStatusCreating, + MultiRegionAccessPointStatusPartiallyCreated, + MultiRegionAccessPointStatusPartiallyDeleted, + MultiRegionAccessPointStatusDeleting, + } +} + const ( // NetworkOriginInternet is a NetworkOrigin enum value NetworkOriginInternet = "Internet" diff --git a/service/s3control/s3controliface/interface.go b/service/s3control/s3controliface/interface.go index f0ba45cf381..937a575ebc8 100644 --- a/service/s3control/s3controliface/interface.go +++ b/service/s3control/s3controliface/interface.go @@ -76,6 +76,10 @@ type S3ControlAPI interface { CreateJobWithContext(aws.Context, *s3control.CreateJobInput, ...request.Option) (*s3control.CreateJobOutput, error) CreateJobRequest(*s3control.CreateJobInput) (*request.Request, *s3control.CreateJobOutput) + CreateMultiRegionAccessPoint(*s3control.CreateMultiRegionAccessPointInput) (*s3control.CreateMultiRegionAccessPointOutput, error) + CreateMultiRegionAccessPointWithContext(aws.Context, *s3control.CreateMultiRegionAccessPointInput, ...request.Option) (*s3control.CreateMultiRegionAccessPointOutput, error) + CreateMultiRegionAccessPointRequest(*s3control.CreateMultiRegionAccessPointInput) (*request.Request, *s3control.CreateMultiRegionAccessPointOutput) + DeleteAccessPoint(*s3control.DeleteAccessPointInput) (*s3control.DeleteAccessPointOutput, error) DeleteAccessPointWithContext(aws.Context, *s3control.DeleteAccessPointInput, ...request.Option) (*s3control.DeleteAccessPointOutput, error) DeleteAccessPointRequest(*s3control.DeleteAccessPointInput) (*request.Request, *s3control.DeleteAccessPointOutput) @@ -112,6 +116,10 @@ type S3ControlAPI interface { DeleteJobTaggingWithContext(aws.Context, *s3control.DeleteJobTaggingInput, ...request.Option) (*s3control.DeleteJobTaggingOutput, error) DeleteJobTaggingRequest(*s3control.DeleteJobTaggingInput) (*request.Request, *s3control.DeleteJobTaggingOutput) + DeleteMultiRegionAccessPoint(*s3control.DeleteMultiRegionAccessPointInput) (*s3control.DeleteMultiRegionAccessPointOutput, error) + DeleteMultiRegionAccessPointWithContext(aws.Context, *s3control.DeleteMultiRegionAccessPointInput, ...request.Option) (*s3control.DeleteMultiRegionAccessPointOutput, error) + DeleteMultiRegionAccessPointRequest(*s3control.DeleteMultiRegionAccessPointInput) (*request.Request, *s3control.DeleteMultiRegionAccessPointOutput) + DeletePublicAccessBlock(*s3control.DeletePublicAccessBlockInput) (*s3control.DeletePublicAccessBlockOutput, error) DeletePublicAccessBlockWithContext(aws.Context, *s3control.DeletePublicAccessBlockInput, ...request.Option) (*s3control.DeletePublicAccessBlockOutput, error) DeletePublicAccessBlockRequest(*s3control.DeletePublicAccessBlockInput) (*request.Request, *s3control.DeletePublicAccessBlockOutput) @@ -128,6 +136,10 @@ type S3ControlAPI interface { DescribeJobWithContext(aws.Context, *s3control.DescribeJobInput, ...request.Option) (*s3control.DescribeJobOutput, error) DescribeJobRequest(*s3control.DescribeJobInput) (*request.Request, *s3control.DescribeJobOutput) + DescribeMultiRegionAccessPointOperation(*s3control.DescribeMultiRegionAccessPointOperationInput) (*s3control.DescribeMultiRegionAccessPointOperationOutput, error) + DescribeMultiRegionAccessPointOperationWithContext(aws.Context, *s3control.DescribeMultiRegionAccessPointOperationInput, ...request.Option) (*s3control.DescribeMultiRegionAccessPointOperationOutput, error) + DescribeMultiRegionAccessPointOperationRequest(*s3control.DescribeMultiRegionAccessPointOperationInput) (*request.Request, *s3control.DescribeMultiRegionAccessPointOperationOutput) + GetAccessPoint(*s3control.GetAccessPointInput) (*s3control.GetAccessPointOutput, error) GetAccessPointWithContext(aws.Context, *s3control.GetAccessPointInput, ...request.Option) (*s3control.GetAccessPointOutput, error) GetAccessPointRequest(*s3control.GetAccessPointInput) (*request.Request, *s3control.GetAccessPointOutput) @@ -176,6 +188,18 @@ type S3ControlAPI interface { GetJobTaggingWithContext(aws.Context, *s3control.GetJobTaggingInput, ...request.Option) (*s3control.GetJobTaggingOutput, error) GetJobTaggingRequest(*s3control.GetJobTaggingInput) (*request.Request, *s3control.GetJobTaggingOutput) + GetMultiRegionAccessPoint(*s3control.GetMultiRegionAccessPointInput) (*s3control.GetMultiRegionAccessPointOutput, error) + GetMultiRegionAccessPointWithContext(aws.Context, *s3control.GetMultiRegionAccessPointInput, ...request.Option) (*s3control.GetMultiRegionAccessPointOutput, error) + GetMultiRegionAccessPointRequest(*s3control.GetMultiRegionAccessPointInput) (*request.Request, *s3control.GetMultiRegionAccessPointOutput) + + GetMultiRegionAccessPointPolicy(*s3control.GetMultiRegionAccessPointPolicyInput) (*s3control.GetMultiRegionAccessPointPolicyOutput, error) + GetMultiRegionAccessPointPolicyWithContext(aws.Context, *s3control.GetMultiRegionAccessPointPolicyInput, ...request.Option) (*s3control.GetMultiRegionAccessPointPolicyOutput, error) + GetMultiRegionAccessPointPolicyRequest(*s3control.GetMultiRegionAccessPointPolicyInput) (*request.Request, *s3control.GetMultiRegionAccessPointPolicyOutput) + + GetMultiRegionAccessPointPolicyStatus(*s3control.GetMultiRegionAccessPointPolicyStatusInput) (*s3control.GetMultiRegionAccessPointPolicyStatusOutput, error) + GetMultiRegionAccessPointPolicyStatusWithContext(aws.Context, *s3control.GetMultiRegionAccessPointPolicyStatusInput, ...request.Option) (*s3control.GetMultiRegionAccessPointPolicyStatusOutput, error) + GetMultiRegionAccessPointPolicyStatusRequest(*s3control.GetMultiRegionAccessPointPolicyStatusInput) (*request.Request, *s3control.GetMultiRegionAccessPointPolicyStatusOutput) + GetPublicAccessBlock(*s3control.GetPublicAccessBlockInput) (*s3control.GetPublicAccessBlockOutput, error) GetPublicAccessBlockWithContext(aws.Context, *s3control.GetPublicAccessBlockInput, ...request.Option) (*s3control.GetPublicAccessBlockOutput, error) GetPublicAccessBlockRequest(*s3control.GetPublicAccessBlockInput) (*request.Request, *s3control.GetPublicAccessBlockOutput) @@ -209,6 +233,13 @@ type S3ControlAPI interface { ListJobsPages(*s3control.ListJobsInput, func(*s3control.ListJobsOutput, bool) bool) error ListJobsPagesWithContext(aws.Context, *s3control.ListJobsInput, func(*s3control.ListJobsOutput, bool) bool, ...request.Option) error + ListMultiRegionAccessPoints(*s3control.ListMultiRegionAccessPointsInput) (*s3control.ListMultiRegionAccessPointsOutput, error) + ListMultiRegionAccessPointsWithContext(aws.Context, *s3control.ListMultiRegionAccessPointsInput, ...request.Option) (*s3control.ListMultiRegionAccessPointsOutput, error) + ListMultiRegionAccessPointsRequest(*s3control.ListMultiRegionAccessPointsInput) (*request.Request, *s3control.ListMultiRegionAccessPointsOutput) + + ListMultiRegionAccessPointsPages(*s3control.ListMultiRegionAccessPointsInput, func(*s3control.ListMultiRegionAccessPointsOutput, bool) bool) error + ListMultiRegionAccessPointsPagesWithContext(aws.Context, *s3control.ListMultiRegionAccessPointsInput, func(*s3control.ListMultiRegionAccessPointsOutput, bool) bool, ...request.Option) error + ListRegionalBuckets(*s3control.ListRegionalBucketsInput) (*s3control.ListRegionalBucketsOutput, error) ListRegionalBucketsWithContext(aws.Context, *s3control.ListRegionalBucketsInput, ...request.Option) (*s3control.ListRegionalBucketsOutput, error) ListRegionalBucketsRequest(*s3control.ListRegionalBucketsInput) (*request.Request, *s3control.ListRegionalBucketsOutput) @@ -251,6 +282,10 @@ type S3ControlAPI interface { PutJobTaggingWithContext(aws.Context, *s3control.PutJobTaggingInput, ...request.Option) (*s3control.PutJobTaggingOutput, error) PutJobTaggingRequest(*s3control.PutJobTaggingInput) (*request.Request, *s3control.PutJobTaggingOutput) + PutMultiRegionAccessPointPolicy(*s3control.PutMultiRegionAccessPointPolicyInput) (*s3control.PutMultiRegionAccessPointPolicyOutput, error) + PutMultiRegionAccessPointPolicyWithContext(aws.Context, *s3control.PutMultiRegionAccessPointPolicyInput, ...request.Option) (*s3control.PutMultiRegionAccessPointPolicyOutput, error) + PutMultiRegionAccessPointPolicyRequest(*s3control.PutMultiRegionAccessPointPolicyInput) (*request.Request, *s3control.PutMultiRegionAccessPointPolicyOutput) + PutPublicAccessBlock(*s3control.PutPublicAccessBlockInput) (*s3control.PutPublicAccessBlockOutput, error) PutPublicAccessBlockWithContext(aws.Context, *s3control.PutPublicAccessBlockInput, ...request.Option) (*s3control.PutPublicAccessBlockOutput, error) PutPublicAccessBlockRequest(*s3control.PutPublicAccessBlockInput) (*request.Request, *s3control.PutPublicAccessBlockOutput) diff --git a/service/schemas/api.go b/service/schemas/api.go index d1b896bf362..dbecabb46be 100644 --- a/service/schemas/api.go +++ b/service/schemas/api.go @@ -3137,6 +3137,8 @@ func (s *ConflictException) RequestID() string { type CreateDiscovererInput struct { _ struct{} `type:"structure"` + CrossAccount *bool `type:"boolean"` + Description *string `type:"string"` // SourceArn is a required field @@ -3172,6 +3174,12 @@ func (s *CreateDiscovererInput) Validate() error { return nil } +// SetCrossAccount sets the CrossAccount field's value. +func (s *CreateDiscovererInput) SetCrossAccount(v bool) *CreateDiscovererInput { + s.CrossAccount = &v + return s +} + // SetDescription sets the Description field's value. func (s *CreateDiscovererInput) SetDescription(v string) *CreateDiscovererInput { s.Description = &v @@ -3193,6 +3201,8 @@ func (s *CreateDiscovererInput) SetTags(v map[string]*string) *CreateDiscovererI type CreateDiscovererOutput struct { _ struct{} `type:"structure"` + CrossAccount *bool `type:"boolean"` + Description *string `type:"string"` DiscovererArn *string `type:"string"` @@ -3217,6 +3227,12 @@ func (s CreateDiscovererOutput) GoString() string { return s.String() } +// SetCrossAccount sets the CrossAccount field's value. +func (s *CreateDiscovererOutput) SetCrossAccount(v bool) *CreateDiscovererOutput { + s.CrossAccount = &v + return s +} + // SetDescription sets the Description field's value. func (s *CreateDiscovererOutput) SetDescription(v string) *CreateDiscovererOutput { s.Description = &v @@ -3991,6 +4007,8 @@ func (s *DescribeDiscovererInput) SetDiscovererId(v string) *DescribeDiscovererI type DescribeDiscovererOutput struct { _ struct{} `type:"structure"` + CrossAccount *bool `type:"boolean"` + Description *string `type:"string"` DiscovererArn *string `type:"string"` @@ -4015,6 +4033,12 @@ func (s DescribeDiscovererOutput) GoString() string { return s.String() } +// SetCrossAccount sets the CrossAccount field's value. +func (s *DescribeDiscovererOutput) SetCrossAccount(v bool) *DescribeDiscovererOutput { + s.CrossAccount = &v + return s +} + // SetDescription sets the Description field's value. func (s *DescribeDiscovererOutput) SetDescription(v string) *DescribeDiscovererOutput { s.Description = &v @@ -4289,6 +4313,10 @@ func (s *DescribeSchemaOutput) SetVersionCreatedDate(v time.Time) *DescribeSchem type DiscovererSummary struct { _ struct{} `type:"structure"` + // The Status if the discoverer will discover schemas from events sent from + // another account. + CrossAccount *bool `type:"boolean"` + // The ARN of the discoverer. DiscovererArn *string `type:"string"` @@ -4315,6 +4343,12 @@ func (s DiscovererSummary) GoString() string { return s.String() } +// SetCrossAccount sets the CrossAccount field's value. +func (s *DiscovererSummary) SetCrossAccount(v bool) *DiscovererSummary { + s.CrossAccount = &v + return s +} + // SetDiscovererArn sets the DiscovererArn field's value. func (s *DiscovererSummary) SetDiscovererArn(v string) *DiscovererSummary { s.DiscovererArn = &v @@ -6375,6 +6409,8 @@ func (s UntagResourceOutput) GoString() string { type UpdateDiscovererInput struct { _ struct{} `type:"structure"` + CrossAccount *bool `type:"boolean"` + Description *string `type:"string"` // DiscovererId is a required field @@ -6407,6 +6443,12 @@ func (s *UpdateDiscovererInput) Validate() error { return nil } +// SetCrossAccount sets the CrossAccount field's value. +func (s *UpdateDiscovererInput) SetCrossAccount(v bool) *UpdateDiscovererInput { + s.CrossAccount = &v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateDiscovererInput) SetDescription(v string) *UpdateDiscovererInput { s.Description = &v @@ -6422,6 +6464,8 @@ func (s *UpdateDiscovererInput) SetDiscovererId(v string) *UpdateDiscovererInput type UpdateDiscovererOutput struct { _ struct{} `type:"structure"` + CrossAccount *bool `type:"boolean"` + Description *string `type:"string"` DiscovererArn *string `type:"string"` @@ -6446,6 +6490,12 @@ func (s UpdateDiscovererOutput) GoString() string { return s.String() } +// SetCrossAccount sets the CrossAccount field's value. +func (s *UpdateDiscovererOutput) SetCrossAccount(v bool) *UpdateDiscovererOutput { + s.CrossAccount = &v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateDiscovererOutput) SetDescription(v string) *UpdateDiscovererOutput { s.Description = &v diff --git a/service/securityhub/api.go b/service/securityhub/api.go index e55ded7f90c..995b4302d18 100644 --- a/service/securityhub/api.go +++ b/service/securityhub/api.go @@ -6280,6 +6280,39 @@ func (s *ActionTarget) SetName(v string) *ActionTarget { return s } +// An adjustment to the CVSS metric. +type Adjustment struct { + _ struct{} `type:"structure"` + + // The metric to adjust. + Metric *string `type:"string"` + + // The reason for the adjustment. + Reason *string `type:"string"` +} + +// String returns the string representation +func (s Adjustment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Adjustment) GoString() string { + return s.String() +} + +// SetMetric sets the Metric field's value. +func (s *Adjustment) SetMetric(v string) *Adjustment { + s.Metric = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *Adjustment) SetReason(v string) *Adjustment { + s.Reason = &v + return s +} + // Represents a Security Hub administrator account designated by an organization // management account. type AdminAccount struct { @@ -7422,6 +7455,368 @@ func (s *AwsAutoScalingAutoScalingGroupDetails) SetLoadBalancerNames(v []*string return s } +// A block device for the instance. +type AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails struct { + _ struct{} `type:"structure"` + + // The device name that is exposed to the EC2 instance. For example, /dev/sdh + // or xvdh. + DeviceName *string `type:"string"` + + // Parameters that are used to automatically set up Amazon EBS volumes when + // an instance is launched. + Ebs *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails `type:"structure"` + + // Whether to suppress the device that is included in the block device mapping + // of the Amazon Machine Image (AMI). + // + // If NoDevice is true, then you cannot specify Ebs.> + NoDevice *bool `type:"boolean"` + + // The name of the virtual device (for example, ephemeral0). + // + // You can provide either VirtualName or Ebs, but not both. + VirtualName *string `type:"string"` +} + +// String returns the string representation +func (s AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) GoString() string { + return s.String() +} + +// SetDeviceName sets the DeviceName field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) SetDeviceName(v string) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails { + s.DeviceName = &v + return s +} + +// SetEbs sets the Ebs field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) SetEbs(v *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails { + s.Ebs = v + return s +} + +// SetNoDevice sets the NoDevice field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) SetNoDevice(v bool) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails { + s.NoDevice = &v + return s +} + +// SetVirtualName sets the VirtualName field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) SetVirtualName(v string) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails { + s.VirtualName = &v + return s +} + +// Parameters that are used to automatically set up EBS volumes when an instance +// is launched. +type AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails struct { + _ struct{} `type:"structure"` + + // Whether to delete the volume when the instance is terminated. + DeleteOnTermination *bool `type:"boolean"` + + // Whether to encrypt the volume. + Encrypted *bool `type:"boolean"` + + // The number of input/output (I/O) operations per second (IOPS) to provision + // for the volume. + // + // Only supported for gp3 or io1 volumes. Required for io1 volumes. Not used + // with standard, gp2, st1, or sc1 volumes. + Iops *int64 `type:"integer"` + + // The snapshot ID of the volume to use. + // + // You must specify either VolumeSize or SnapshotId. + SnapshotId *string `type:"string"` + + // The volume size, in GiBs. The following are the supported volumes sizes for + // each volume type: + // + // * gp2 and gp3: 1-16,384 + // + // * io1: 4-16,384 + // + // * st1 and sc1: 125-16,384 + // + // * standard: 1-1,024 + // + // You must specify either SnapshotId or VolumeSize. If you specify both SnapshotId + // and VolumeSize, the volume size must be equal or greater than the size of + // the snapshot. + VolumeSize *int64 `type:"integer"` + + // The volume type. + VolumeType *string `type:"string"` +} + +// String returns the string representation +func (s AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) GoString() string { + return s.String() +} + +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) SetDeleteOnTermination(v bool) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails { + s.DeleteOnTermination = &v + return s +} + +// SetEncrypted sets the Encrypted field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) SetEncrypted(v bool) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails { + s.Encrypted = &v + return s +} + +// SetIops sets the Iops field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) SetIops(v int64) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails { + s.Iops = &v + return s +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) SetSnapshotId(v string) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails { + s.SnapshotId = &v + return s +} + +// SetVolumeSize sets the VolumeSize field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) SetVolumeSize(v int64) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails { + s.VolumeSize = &v + return s +} + +// SetVolumeType sets the VolumeType field's value. +func (s *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails) SetVolumeType(v string) *AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails { + s.VolumeType = &v + return s +} + +// Details about a launch configuration. +type AwsAutoScalingLaunchConfigurationDetails struct { + _ struct{} `type:"structure"` + + // For Auto Scaling groups that run in a VPC, specifies whether to assign a + // public IP address to the group's instances. + AssociatePublicIpAddress *bool `type:"boolean"` + + // Specifies the block devices for the instance. + BlockDeviceMappings []*AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails `type:"list"` + + // The identifier of a ClassicLink-enabled VPC that EC2-Classic instances are + // linked to. + ClassicLinkVpcId *string `type:"string"` + + // The identifiers of one or more security groups for the VPC that is specified + // in ClassicLinkVPCId. + ClassicLinkVpcSecurityGroups []*string `type:"list"` + + // The creation date and time for the launch configuration. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreatedTime *string `type:"string"` + + // Whether the launch configuration is optimized for Amazon EBS I/O. + EbsOptimized *bool `type:"boolean"` + + // The name or the ARN of the instance profile associated with the IAM role + // for the instance. The instance profile contains the IAM role. + IamInstanceProfile *string `type:"string"` + + // The identifier of the Amazon Machine Image (AMI) that is used to launch EC2 + // instances. + ImageId *string `type:"string"` + + // Indicates the type of monitoring for instances in the group. + InstanceMonitoring *AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails `type:"structure"` + + // The instance type for the instances. + InstanceType *string `type:"string"` + + // The identifier of the kernel associated with the AMI. + KernelId *string `type:"string"` + + // The name of the key pair. + KeyName *string `type:"string"` + + // The name of the launch configuration. + LaunchConfigurationName *string `type:"string"` + + // The tenancy of the instance. An instance with dedicated tenancy runs on isolated, + // single-tenant hardware and can only be launched into a VPC. + PlacementTenancy *string `type:"string"` + + // The identifier of the RAM disk associated with the AMI. + RamdiskId *string `type:"string"` + + // The security groups to assign to the instances in the Auto Scaling group. + SecurityGroups []*string `type:"list"` + + // The maximum hourly price to be paid for any Spot Instance that is launched + // to fulfill the request. + SpotPrice *string `type:"string"` + + // The user data to make available to the launched EC2 instances. Must be base64-encoded + // text. + UserData *string `type:"string"` +} + +// String returns the string representation +func (s AwsAutoScalingLaunchConfigurationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsAutoScalingLaunchConfigurationDetails) GoString() string { + return s.String() +} + +// SetAssociatePublicIpAddress sets the AssociatePublicIpAddress field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetAssociatePublicIpAddress(v bool) *AwsAutoScalingLaunchConfigurationDetails { + s.AssociatePublicIpAddress = &v + return s +} + +// SetBlockDeviceMappings sets the BlockDeviceMappings field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetBlockDeviceMappings(v []*AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails) *AwsAutoScalingLaunchConfigurationDetails { + s.BlockDeviceMappings = v + return s +} + +// SetClassicLinkVpcId sets the ClassicLinkVpcId field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetClassicLinkVpcId(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.ClassicLinkVpcId = &v + return s +} + +// SetClassicLinkVpcSecurityGroups sets the ClassicLinkVpcSecurityGroups field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetClassicLinkVpcSecurityGroups(v []*string) *AwsAutoScalingLaunchConfigurationDetails { + s.ClassicLinkVpcSecurityGroups = v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetCreatedTime(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.CreatedTime = &v + return s +} + +// SetEbsOptimized sets the EbsOptimized field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetEbsOptimized(v bool) *AwsAutoScalingLaunchConfigurationDetails { + s.EbsOptimized = &v + return s +} + +// SetIamInstanceProfile sets the IamInstanceProfile field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetIamInstanceProfile(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.IamInstanceProfile = &v + return s +} + +// SetImageId sets the ImageId field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetImageId(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.ImageId = &v + return s +} + +// SetInstanceMonitoring sets the InstanceMonitoring field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetInstanceMonitoring(v *AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails) *AwsAutoScalingLaunchConfigurationDetails { + s.InstanceMonitoring = v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetInstanceType(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.InstanceType = &v + return s +} + +// SetKernelId sets the KernelId field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetKernelId(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.KernelId = &v + return s +} + +// SetKeyName sets the KeyName field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetKeyName(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.KeyName = &v + return s +} + +// SetLaunchConfigurationName sets the LaunchConfigurationName field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetLaunchConfigurationName(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.LaunchConfigurationName = &v + return s +} + +// SetPlacementTenancy sets the PlacementTenancy field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetPlacementTenancy(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.PlacementTenancy = &v + return s +} + +// SetRamdiskId sets the RamdiskId field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetRamdiskId(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.RamdiskId = &v + return s +} + +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetSecurityGroups(v []*string) *AwsAutoScalingLaunchConfigurationDetails { + s.SecurityGroups = v + return s +} + +// SetSpotPrice sets the SpotPrice field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetSpotPrice(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.SpotPrice = &v + return s +} + +// SetUserData sets the UserData field's value. +func (s *AwsAutoScalingLaunchConfigurationDetails) SetUserData(v string) *AwsAutoScalingLaunchConfigurationDetails { + s.UserData = &v + return s +} + +// Information about the type of monitoring for instances in the group. +type AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails struct { + _ struct{} `type:"structure"` + + // If set to true, then instances in the group launch with detailed monitoring. + // + // If set to false, then instances in the group launch with basic monitoring. + Enabled *bool `type:"boolean"` +} + +// String returns the string representation +func (s AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails) SetEnabled(v bool) *AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails { + s.Enabled = &v + return s +} + // Provides details about an Certificate Manager certificate. type AwsCertificateManagerCertificateDetails struct { _ struct{} `type:"structure"` @@ -8606,10 +9001,10 @@ func (s *AwsCloudTrailTrailDetails) SetTrailArn(v string) *AwsCloudTrailTrailDet type AwsCodeBuildProjectDetails struct { _ struct{} `type:"structure"` - // The KMS customer master key (CMK) used to encrypt the build output artifacts. + // The KMS key used to encrypt the build output artifacts. // - // You can specify either the ARN of the CMK or, if available, the CMK alias - // (using the format alias/alias-name). + // You can specify either the ARN of the KMS key or, if available, the KMS key + // alias (using the format alias/alias-name). EncryptionKey *string `type:"string"` // Information about the build environment for this build project. @@ -9579,8 +9974,8 @@ type AwsDynamoDbTableReplica struct { // List of global secondary indexes for the replica. GlobalSecondaryIndexes []*AwsDynamoDbTableReplicaGlobalSecondaryIndex `type:"list"` - // The identifier of the KMS customer master key (CMK) that will be used for - // KMS encryption for the replica. + // The identifier of the KMS key that will be used for KMS encryption for the + // replica. KmsMasterKeyId *string `type:"string"` // Replica-specific configuration for the provisioned throughput. @@ -9742,7 +10137,7 @@ type AwsDynamoDbTableSseDescription struct { // contain spaces. For example, 2020-03-22T13:22:13.933Z. InaccessibleEncryptionDateTime *string `type:"string"` - // The ARN of the KMS customer master key (CMK) that is used for the KMS encryption. + // The ARN of the KMS key that is used for the KMS encryption. KmsMasterKeyArn *string `type:"string"` // The type of server-side encryption. @@ -11053,8 +11448,8 @@ type AwsEc2VolumeDetails struct { // Whether the volume is encrypted. Encrypted *bool `type:"boolean"` - // The ARN of the KMS customer master key (CMK) that was used to protect the - // volume encryption key for the volume. + // The ARN of the KMS key that was used to protect the volume encryption key + // for the volume. KmsKeyId *string `type:"string"` // The size of the volume, in GiBs. @@ -11172,1275 +11567,1772 @@ func (s *AwsEc2VpcDetails) SetState(v string) *AwsEc2VpcDetails { return s } -// Indicates whether to enable CloudWatch Container Insights for the ECS cluster. -type AwsEcsClusterClusterSettingsDetails struct { +// Details about an Amazon EC2 VPN connection. +type AwsEc2VpnConnectionDetails struct { _ struct{} `type:"structure"` - // The name of the setting. - Name *string `type:"string"` + // The category of the VPN connection. VPN indicates an Amazon Web Services + // VPN connection. VPN-Classic indicates an Amazon Web Services Classic VPN + // connection. + Category *string `type:"string"` - // The value of the setting. - Value *string `type:"string"` + // The configuration information for the VPN connection's customer gateway, + // in the native XML format. + CustomerGatewayConfiguration *string `type:"string"` + + // The identifier of the customer gateway that is at your end of the VPN connection. + CustomerGatewayId *string `type:"string"` + + // The VPN connection options. + Options *AwsEc2VpnConnectionOptionsDetails `type:"structure"` + + // The static routes that are associated with the VPN connection. + Routes []*AwsEc2VpnConnectionRoutesDetails `type:"list"` + + // The current state of the VPN connection. + State *string `type:"string"` + + // The identifier of the transit gateway that is associated with the VPN connection. + TransitGatewayId *string `type:"string"` + + // The type of VPN connection. + Type *string `type:"string"` + + // Information about the VPN tunnel. + VgwTelemetry []*AwsEc2VpnConnectionVgwTelemetryDetails `type:"list"` + + // The identifier of the VPN connection. + VpnConnectionId *string `type:"string"` + + // The identifier of the virtual private gateway that is at the Amazon Web Services + // side of the VPN connection. + VpnGatewayId *string `type:"string"` } // String returns the string representation -func (s AwsEcsClusterClusterSettingsDetails) String() string { +func (s AwsEc2VpnConnectionDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsClusterClusterSettingsDetails) GoString() string { +func (s AwsEc2VpnConnectionDetails) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AwsEcsClusterClusterSettingsDetails) SetName(v string) *AwsEcsClusterClusterSettingsDetails { - s.Name = &v +// SetCategory sets the Category field's value. +func (s *AwsEc2VpnConnectionDetails) SetCategory(v string) *AwsEc2VpnConnectionDetails { + s.Category = &v return s } -// SetValue sets the Value field's value. -func (s *AwsEcsClusterClusterSettingsDetails) SetValue(v string) *AwsEcsClusterClusterSettingsDetails { - s.Value = &v +// SetCustomerGatewayConfiguration sets the CustomerGatewayConfiguration field's value. +func (s *AwsEc2VpnConnectionDetails) SetCustomerGatewayConfiguration(v string) *AwsEc2VpnConnectionDetails { + s.CustomerGatewayConfiguration = &v return s } -// The run command configuration for the cluster. -type AwsEcsClusterConfigurationDetails struct { - _ struct{} `type:"structure"` +// SetCustomerGatewayId sets the CustomerGatewayId field's value. +func (s *AwsEc2VpnConnectionDetails) SetCustomerGatewayId(v string) *AwsEc2VpnConnectionDetails { + s.CustomerGatewayId = &v + return s +} - // Contains the run command configuration for the cluster. - ExecuteCommandConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails `type:"structure"` +// SetOptions sets the Options field's value. +func (s *AwsEc2VpnConnectionDetails) SetOptions(v *AwsEc2VpnConnectionOptionsDetails) *AwsEc2VpnConnectionDetails { + s.Options = v + return s } -// String returns the string representation -func (s AwsEcsClusterConfigurationDetails) String() string { - return awsutil.Prettify(s) +// SetRoutes sets the Routes field's value. +func (s *AwsEc2VpnConnectionDetails) SetRoutes(v []*AwsEc2VpnConnectionRoutesDetails) *AwsEc2VpnConnectionDetails { + s.Routes = v + return s } -// GoString returns the string representation -func (s AwsEcsClusterConfigurationDetails) GoString() string { - return s.String() +// SetState sets the State field's value. +func (s *AwsEc2VpnConnectionDetails) SetState(v string) *AwsEc2VpnConnectionDetails { + s.State = &v + return s } -// SetExecuteCommandConfiguration sets the ExecuteCommandConfiguration field's value. -func (s *AwsEcsClusterConfigurationDetails) SetExecuteCommandConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) *AwsEcsClusterConfigurationDetails { - s.ExecuteCommandConfiguration = v +// SetTransitGatewayId sets the TransitGatewayId field's value. +func (s *AwsEc2VpnConnectionDetails) SetTransitGatewayId(v string) *AwsEc2VpnConnectionDetails { + s.TransitGatewayId = &v return s } -// Contains the run command configuration for the cluster. -type AwsEcsClusterConfigurationExecuteCommandConfigurationDetails struct { - _ struct{} `type:"structure"` +// SetType sets the Type field's value. +func (s *AwsEc2VpnConnectionDetails) SetType(v string) *AwsEc2VpnConnectionDetails { + s.Type = &v + return s +} - // The identifier of the KMS key that is used to encrypt the data between the - // local client and the container. - KmsKeyId *string `type:"string"` +// SetVgwTelemetry sets the VgwTelemetry field's value. +func (s *AwsEc2VpnConnectionDetails) SetVgwTelemetry(v []*AwsEc2VpnConnectionVgwTelemetryDetails) *AwsEc2VpnConnectionDetails { + s.VgwTelemetry = v + return s +} - // The log configuration for the results of the run command actions. Required - // if Logging is NONE. - LogConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails `type:"structure"` +// SetVpnConnectionId sets the VpnConnectionId field's value. +func (s *AwsEc2VpnConnectionDetails) SetVpnConnectionId(v string) *AwsEc2VpnConnectionDetails { + s.VpnConnectionId = &v + return s +} - // The log setting to use for redirecting logs for run command results. - Logging *string `type:"string"` +// SetVpnGatewayId sets the VpnGatewayId field's value. +func (s *AwsEc2VpnConnectionDetails) SetVpnGatewayId(v string) *AwsEc2VpnConnectionDetails { + s.VpnGatewayId = &v + return s +} + +// VPN connection options. +type AwsEc2VpnConnectionOptionsDetails struct { + _ struct{} `type:"structure"` + + // Whether the VPN connection uses static routes only. + StaticRoutesOnly *bool `type:"boolean"` + + // The VPN tunnel options. + TunnelOptions []*AwsEc2VpnConnectionOptionsTunnelOptionsDetails `type:"list"` } // String returns the string representation -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) String() string { +func (s AwsEc2VpnConnectionOptionsDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) GoString() string { +func (s AwsEc2VpnConnectionOptionsDetails) GoString() string { return s.String() } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetKmsKeyId(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { - s.KmsKeyId = &v - return s -} - -// SetLogConfiguration sets the LogConfiguration field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { - s.LogConfiguration = v +// SetStaticRoutesOnly sets the StaticRoutesOnly field's value. +func (s *AwsEc2VpnConnectionOptionsDetails) SetStaticRoutesOnly(v bool) *AwsEc2VpnConnectionOptionsDetails { + s.StaticRoutesOnly = &v return s } -// SetLogging sets the Logging field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogging(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { - s.Logging = &v +// SetTunnelOptions sets the TunnelOptions field's value. +func (s *AwsEc2VpnConnectionOptionsDetails) SetTunnelOptions(v []*AwsEc2VpnConnectionOptionsTunnelOptionsDetails) *AwsEc2VpnConnectionOptionsDetails { + s.TunnelOptions = v return s } -// The log configuration for the results of the run command actions. -type AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails struct { +// The VPN tunnel options. +type AwsEc2VpnConnectionOptionsTunnelOptionsDetails struct { _ struct{} `type:"structure"` - // Whether to enable encryption on the CloudWatch logs. - CloudWatchEncryptionEnabled *bool `type:"boolean"` + // The number of seconds after which a Dead Peer Detection (DPD) timeout occurs. + DpdTimeoutSeconds *int64 `type:"integer"` - // The name of the CloudWatch log group to send the logs to. - CloudWatchLogGroupName *string `type:"string"` + // The Internet Key Exchange (IKE) versions that are permitted for the VPN tunnel. + IkeVersions []*string `type:"list"` - // The name of the S3 bucket to send logs to. - S3BucketName *string `type:"string"` + // The external IP address of the VPN tunnel. + OutsideIpAddress *string `type:"string"` - // Whether to encrypt the logs that are sent to the S3 bucket. - S3EncryptionEnabled *bool `type:"boolean"` + // The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 + // IKE negotiations. + Phase1DhGroupNumbers []*int64 `type:"list"` - // Identifies the folder in the S3 bucket to send the logs to. - S3KeyPrefix *string `type:"string"` + // The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations. + Phase1EncryptionAlgorithms []*string `type:"list"` + + // The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations. + Phase1IntegrityAlgorithms []*string `type:"list"` + + // The lifetime for phase 1 of the IKE negotiation, in seconds. + Phase1LifetimeSeconds *int64 `type:"integer"` + + // The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 + // IKE negotiations. + Phase2DhGroupNumbers []*int64 `type:"list"` + + // The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations. + Phase2EncryptionAlgorithms []*string `type:"list"` + + // The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations. + Phase2IntegrityAlgorithms []*string `type:"list"` + + // The lifetime for phase 2 of the IKE negotiation, in seconds. + Phase2LifetimeSeconds *int64 `type:"integer"` + + // The preshared key to establish initial authentication between the virtual + // private gateway and the customer gateway. + PreSharedKey *string `type:"string"` + + // The percentage of the rekey window, which is determined by RekeyMarginTimeSeconds + // during which the rekey time is randomly selected. + RekeyFuzzPercentage *int64 `type:"integer"` + + // The margin time, in seconds, before the phase 2 lifetime expires, during + // which the Amazon Web Services side of the VPN connection performs an IKE + // rekey. + RekeyMarginTimeSeconds *int64 `type:"integer"` + + // The number of packets in an IKE replay window. + ReplayWindowSize *int64 `type:"integer"` + + // The range of inside IPv4 addresses for the tunnel. + TunnelInsideCidr *string `type:"string"` } // String returns the string representation -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) String() string { +func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) GoString() string { +func (s AwsEc2VpnConnectionOptionsTunnelOptionsDetails) GoString() string { return s.String() } -// SetCloudWatchEncryptionEnabled sets the CloudWatchEncryptionEnabled field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchEncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.CloudWatchEncryptionEnabled = &v +// SetDpdTimeoutSeconds sets the DpdTimeoutSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetDpdTimeoutSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.DpdTimeoutSeconds = &v return s } -// SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchLogGroupName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.CloudWatchLogGroupName = &v +// SetIkeVersions sets the IkeVersions field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetIkeVersions(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.IkeVersions = v return s } -// SetS3BucketName sets the S3BucketName field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3BucketName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.S3BucketName = &v +// SetOutsideIpAddress sets the OutsideIpAddress field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetOutsideIpAddress(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.OutsideIpAddress = &v return s } -// SetS3EncryptionEnabled sets the S3EncryptionEnabled field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3EncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.S3EncryptionEnabled = &v +// SetPhase1DhGroupNumbers sets the Phase1DhGroupNumbers field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1DhGroupNumbers(v []*int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1DhGroupNumbers = v return s } -// SetS3KeyPrefix sets the S3KeyPrefix field's value. -func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3KeyPrefix(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { - s.S3KeyPrefix = &v +// SetPhase1EncryptionAlgorithms sets the Phase1EncryptionAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1EncryptionAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1EncryptionAlgorithms = v return s } -// The default capacity provider strategy for the cluster. The default capacity -// provider strategy is used when services or tasks are run without a specified -// launch type or capacity provider strategy. -type AwsEcsClusterDefaultCapacityProviderStrategyDetails struct { - _ struct{} `type:"structure"` +// SetPhase1IntegrityAlgorithms sets the Phase1IntegrityAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1IntegrityAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1IntegrityAlgorithms = v + return s +} - // The minimum number of tasks to run on the specified capacity provider. - Base *int64 `type:"integer"` +// SetPhase1LifetimeSeconds sets the Phase1LifetimeSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase1LifetimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase1LifetimeSeconds = &v + return s +} - // The name of the capacity provider. - CapacityProvider *string `type:"string"` +// SetPhase2DhGroupNumbers sets the Phase2DhGroupNumbers field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2DhGroupNumbers(v []*int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2DhGroupNumbers = v + return s +} - // The relative percentage of the total number of tasks launched that should - // use the capacity provider. - Weight *int64 `type:"integer"` +// SetPhase2EncryptionAlgorithms sets the Phase2EncryptionAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2EncryptionAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2EncryptionAlgorithms = v + return s } -// String returns the string representation -func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) String() string { - return awsutil.Prettify(s) +// SetPhase2IntegrityAlgorithms sets the Phase2IntegrityAlgorithms field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2IntegrityAlgorithms(v []*string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2IntegrityAlgorithms = v + return s } -// GoString returns the string representation -func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) GoString() string { - return s.String() +// SetPhase2LifetimeSeconds sets the Phase2LifetimeSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPhase2LifetimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.Phase2LifetimeSeconds = &v + return s } -// SetBase sets the Base field's value. -func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { - s.Base = &v +// SetPreSharedKey sets the PreSharedKey field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetPreSharedKey(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.PreSharedKey = &v return s } -// SetCapacityProvider sets the CapacityProvider field's value. -func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { - s.CapacityProvider = &v +// SetRekeyFuzzPercentage sets the RekeyFuzzPercentage field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetRekeyFuzzPercentage(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.RekeyFuzzPercentage = &v return s } -// SetWeight sets the Weight field's value. -func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { - s.Weight = &v +// SetRekeyMarginTimeSeconds sets the RekeyMarginTimeSeconds field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetRekeyMarginTimeSeconds(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.RekeyMarginTimeSeconds = &v return s } -// provides details about an ECS cluster. -type AwsEcsClusterDetails struct { - _ struct{} `type:"structure"` +// SetReplayWindowSize sets the ReplayWindowSize field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetReplayWindowSize(v int64) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.ReplayWindowSize = &v + return s +} - // The short name of one or more capacity providers to associate with the cluster. - CapacityProviders []*string `type:"list"` +// SetTunnelInsideCidr sets the TunnelInsideCidr field's value. +func (s *AwsEc2VpnConnectionOptionsTunnelOptionsDetails) SetTunnelInsideCidr(v string) *AwsEc2VpnConnectionOptionsTunnelOptionsDetails { + s.TunnelInsideCidr = &v + return s +} - // The setting to use to create the cluster. Specifically used to configure - // whether to enable CloudWatch Container Insights for the cluster. - ClusterSettings []*AwsEcsClusterClusterSettingsDetails `type:"list"` +// A static routes associated with the VPN connection. +type AwsEc2VpnConnectionRoutesDetails struct { + _ struct{} `type:"structure"` - // The run command configuration for the cluster. - Configuration *AwsEcsClusterConfigurationDetails `type:"structure"` + // The CIDR block associated with the local subnet of the customer data center. + DestinationCidrBlock *string `type:"string"` - // The default capacity provider strategy for the cluster. The default capacity - // provider strategy is used when services or tasks are run without a specified - // launch type or capacity provider strategy. - DefaultCapacityProviderStrategy []*AwsEcsClusterDefaultCapacityProviderStrategyDetails `type:"list"` + // The current state of the static route. + State *string `type:"string"` } // String returns the string representation -func (s AwsEcsClusterDetails) String() string { +func (s AwsEc2VpnConnectionRoutesDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsClusterDetails) GoString() string { +func (s AwsEc2VpnConnectionRoutesDetails) GoString() string { return s.String() } -// SetCapacityProviders sets the CapacityProviders field's value. -func (s *AwsEcsClusterDetails) SetCapacityProviders(v []*string) *AwsEcsClusterDetails { - s.CapacityProviders = v +// SetDestinationCidrBlock sets the DestinationCidrBlock field's value. +func (s *AwsEc2VpnConnectionRoutesDetails) SetDestinationCidrBlock(v string) *AwsEc2VpnConnectionRoutesDetails { + s.DestinationCidrBlock = &v return s } -// SetClusterSettings sets the ClusterSettings field's value. -func (s *AwsEcsClusterDetails) SetClusterSettings(v []*AwsEcsClusterClusterSettingsDetails) *AwsEcsClusterDetails { - s.ClusterSettings = v +// SetState sets the State field's value. +func (s *AwsEc2VpnConnectionRoutesDetails) SetState(v string) *AwsEc2VpnConnectionRoutesDetails { + s.State = &v return s } -// SetConfiguration sets the Configuration field's value. -func (s *AwsEcsClusterDetails) SetConfiguration(v *AwsEcsClusterConfigurationDetails) *AwsEcsClusterDetails { - s.Configuration = v - return s -} +// Information about the VPN tunnel. +type AwsEc2VpnConnectionVgwTelemetryDetails struct { + _ struct{} `type:"structure"` -// SetDefaultCapacityProviderStrategy sets the DefaultCapacityProviderStrategy field's value. -func (s *AwsEcsClusterDetails) SetDefaultCapacityProviderStrategy(v []*AwsEcsClusterDefaultCapacityProviderStrategyDetails) *AwsEcsClusterDetails { - s.DefaultCapacityProviderStrategy = v - return s -} + // The number of accepted routes. + AcceptedRouteCount *int64 `type:"integer"` -// Strategy item for the capacity provider strategy that the service uses. -type AwsEcsServiceCapacityProviderStrategyDetails struct { - _ struct{} `type:"structure"` + // The ARN of the VPN tunnel endpoint certificate. + CertificateArn *string `type:"string"` - // The minimum number of tasks to run on the capacity provider. Only one strategy - // item can specify a value for Base. + // The date and time of the last change in status. // - // The value must be between 0 and 100000. - Base *int64 `type:"integer"` + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + LastStatusChange *string `type:"string"` - // The short name of the capacity provider. - CapacityProvider *string `type:"string"` + // The Internet-routable IP address of the virtual private gateway's outside + // interface. + OutsideIpAddress *string `type:"string"` - // The relative percentage of the total number of tasks that should use the - // capacity provider. - // - // If no weight is specified, the default value is 0. At least one capacity - // provider must have a weight greater than 0. - // - // The value can be between 0 and 1000. - Weight *int64 `type:"integer"` + // The status of the VPN tunnel. + Status *string `type:"string"` + + // If an error occurs, a description of the error. + StatusMessage *string `type:"string"` } // String returns the string representation -func (s AwsEcsServiceCapacityProviderStrategyDetails) String() string { +func (s AwsEc2VpnConnectionVgwTelemetryDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceCapacityProviderStrategyDetails) GoString() string { +func (s AwsEc2VpnConnectionVgwTelemetryDetails) GoString() string { return s.String() } -// SetBase sets the Base field's value. -func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { - s.Base = &v +// SetAcceptedRouteCount sets the AcceptedRouteCount field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetAcceptedRouteCount(v int64) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.AcceptedRouteCount = &v return s } -// SetCapacityProvider sets the CapacityProvider field's value. -func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsServiceCapacityProviderStrategyDetails { - s.CapacityProvider = &v +// SetCertificateArn sets the CertificateArn field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetCertificateArn(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.CertificateArn = &v return s } -// SetWeight sets the Weight field's value. -func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { - s.Weight = &v +// SetLastStatusChange sets the LastStatusChange field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetLastStatusChange(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.LastStatusChange = &v return s } -// Determines whether a service deployment fails if a service cannot reach a -// steady state. -type AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails struct { +// SetOutsideIpAddress sets the OutsideIpAddress field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetOutsideIpAddress(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.OutsideIpAddress = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetStatus(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *AwsEc2VpnConnectionVgwTelemetryDetails) SetStatusMessage(v string) *AwsEc2VpnConnectionVgwTelemetryDetails { + s.StatusMessage = &v + return s +} + +// Information about an Amazon ECR image. +type AwsEcrContainerImageDetails struct { _ struct{} `type:"structure"` - // Whether to enable the deployment circuit breaker logic for the service. - Enable *bool `type:"boolean"` + // The architecture of the image. + Architecture *string `type:"string"` - // Whether to roll back the service if a service deployment fails. If rollback - // is enabled, when a service deployment fails, the service is rolled back to - // the last deployment that completed successfully. - Rollback *bool `type:"boolean"` + // The sha256 digest of the image manifest. + ImageDigest *string `type:"string"` + + // The date and time when the image was pushed to the repository. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ImagePublishedAt *string `type:"string"` + + // The list of tags that are associated with the image. + ImageTags []*string `type:"list"` + + // The Amazon Web Services account identifier that is associated with the registry + // that the image belongs to. + RegistryId *string `type:"string"` + + // The name of the repository that the image belongs to. + RepositoryName *string `type:"string"` } // String returns the string representation -func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) String() string { +func (s AwsEcrContainerImageDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) GoString() string { +func (s AwsEcrContainerImageDetails) GoString() string { return s.String() } -// SetEnable sets the Enable field's value. -func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetEnable(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { - s.Enable = &v +// SetArchitecture sets the Architecture field's value. +func (s *AwsEcrContainerImageDetails) SetArchitecture(v string) *AwsEcrContainerImageDetails { + s.Architecture = &v return s } -// SetRollback sets the Rollback field's value. -func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetRollback(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { - s.Rollback = &v +// SetImageDigest sets the ImageDigest field's value. +func (s *AwsEcrContainerImageDetails) SetImageDigest(v string) *AwsEcrContainerImageDetails { + s.ImageDigest = &v return s } -// Optional deployment parameters for the service. -type AwsEcsServiceDeploymentConfigurationDetails struct { - _ struct{} `type:"structure"` +// SetImagePublishedAt sets the ImagePublishedAt field's value. +func (s *AwsEcrContainerImageDetails) SetImagePublishedAt(v string) *AwsEcrContainerImageDetails { + s.ImagePublishedAt = &v + return s +} - // Determines whether a service deployment fails if a service cannot reach a - // steady state. - DeploymentCircuitBreaker *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails `type:"structure"` +// SetImageTags sets the ImageTags field's value. +func (s *AwsEcrContainerImageDetails) SetImageTags(v []*string) *AwsEcrContainerImageDetails { + s.ImageTags = v + return s +} - // For a service that uses the rolling update (ECS) deployment type, the maximum - // number of tasks in a service that are allowed in the RUNNING or PENDING state - // during a deployment, and for tasks that use the EC2 launch type, when any - // container instances are in the DRAINING state. Provided as a percentage of - // the desired number of tasks. The default value is 200%. - // - // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment - // types, and tasks that use the EC2 launch type, the maximum number of tasks - // in the service that remain in the RUNNING state while the container instances - // are in the DRAINING state. - // - // For the Fargate launch type, the maximum percent value is not used. - MaximumPercent *int64 `type:"integer"` +// SetRegistryId sets the RegistryId field's value. +func (s *AwsEcrContainerImageDetails) SetRegistryId(v string) *AwsEcrContainerImageDetails { + s.RegistryId = &v + return s +} - // For a service that uses the rolling update (ECS) deployment type, the minimum - // number of tasks in a service that must remain in the RUNNING state during - // a deployment, and while any container instances are in the DRAINING state - // if the service contains tasks using the EC2 launch type. Expressed as a percentage - // of the desired number of tasks. The default value is 100%. - // - // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment - // types and tasks that use the EC2 launch type, the minimum number of the tasks - // in the service that remain in the RUNNING state while the container instances - // are in the DRAINING state. - // - // For the Fargate launch type, the minimum healthy percent value is not used. - MinimumHealthyPercent *int64 `type:"integer"` +// SetRepositoryName sets the RepositoryName field's value. +func (s *AwsEcrContainerImageDetails) SetRepositoryName(v string) *AwsEcrContainerImageDetails { + s.RepositoryName = &v + return s +} + +// Indicates whether to enable CloudWatch Container Insights for the ECS cluster. +type AwsEcsClusterClusterSettingsDetails struct { + _ struct{} `type:"structure"` + + // The name of the setting. + Name *string `type:"string"` + + // The value of the setting. + Value *string `type:"string"` } // String returns the string representation -func (s AwsEcsServiceDeploymentConfigurationDetails) String() string { +func (s AwsEcsClusterClusterSettingsDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceDeploymentConfigurationDetails) GoString() string { +func (s AwsEcsClusterClusterSettingsDetails) GoString() string { return s.String() } -// SetDeploymentCircuitBreaker sets the DeploymentCircuitBreaker field's value. -func (s *AwsEcsServiceDeploymentConfigurationDetails) SetDeploymentCircuitBreaker(v *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) *AwsEcsServiceDeploymentConfigurationDetails { - s.DeploymentCircuitBreaker = v - return s -} - -// SetMaximumPercent sets the MaximumPercent field's value. -func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMaximumPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { - s.MaximumPercent = &v +// SetName sets the Name field's value. +func (s *AwsEcsClusterClusterSettingsDetails) SetName(v string) *AwsEcsClusterClusterSettingsDetails { + s.Name = &v return s } -// SetMinimumHealthyPercent sets the MinimumHealthyPercent field's value. -func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMinimumHealthyPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { - s.MinimumHealthyPercent = &v +// SetValue sets the Value field's value. +func (s *AwsEcsClusterClusterSettingsDetails) SetValue(v string) *AwsEcsClusterClusterSettingsDetails { + s.Value = &v return s } -// Information about the deployment controller type that the service uses. -type AwsEcsServiceDeploymentControllerDetails struct { +// The run command configuration for the cluster. +type AwsEcsClusterConfigurationDetails struct { _ struct{} `type:"structure"` - // The rolling update (ECS) deployment type replaces the current running version - // of the container with the latest version. - // - // The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment - // model that is powered by CodeDeploy. This deployment model a new deployment - // of a service can be verified before production traffic is sent to it. - // - // The external (EXTERNAL) deployment type allows the use of any third-party - // deployment controller for full control over the deployment process for an - // Amazon ECS service. - // - // Valid values: ECS | CODE_DEPLOY | EXTERNAL - Type *string `type:"string"` + // Contains the run command configuration for the cluster. + ExecuteCommandConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails `type:"structure"` } // String returns the string representation -func (s AwsEcsServiceDeploymentControllerDetails) String() string { +func (s AwsEcsClusterConfigurationDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceDeploymentControllerDetails) GoString() string { +func (s AwsEcsClusterConfigurationDetails) GoString() string { return s.String() } -// SetType sets the Type field's value. -func (s *AwsEcsServiceDeploymentControllerDetails) SetType(v string) *AwsEcsServiceDeploymentControllerDetails { - s.Type = &v +// SetExecuteCommandConfiguration sets the ExecuteCommandConfiguration field's value. +func (s *AwsEcsClusterConfigurationDetails) SetExecuteCommandConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) *AwsEcsClusterConfigurationDetails { + s.ExecuteCommandConfiguration = v return s } -// Provides details about a service within an ECS cluster. -type AwsEcsServiceDetails struct { +// Contains the run command configuration for the cluster. +type AwsEcsClusterConfigurationExecuteCommandConfigurationDetails struct { _ struct{} `type:"structure"` - // The capacity provider strategy that the service uses. - CapacityProviderStrategy []*AwsEcsServiceCapacityProviderStrategyDetails `type:"list"` - - // The ARN of the cluster that hosts the service. - Cluster *string `type:"string"` - - // Deployment parameters for the service. Includes the number of tasks that - // run and the order in which to start and stop tasks. - DeploymentConfiguration *AwsEcsServiceDeploymentConfigurationDetails `type:"structure"` - - // Contains the deployment controller type that the service uses. - DeploymentController *AwsEcsServiceDeploymentControllerDetails `type:"structure"` - - // The number of instantiations of the task definition to run on the service. - DesiredCount *int64 `type:"integer"` - - // Whether to enable Amazon ECS managed tags for the tasks in the service. - EnableEcsManagedTags *bool `type:"boolean"` - - // Whether the execute command functionality is enabled for the service. - EnableExecuteCommand *bool `type:"boolean"` - - // After a task starts, the amount of time in seconds that the Amazon ECS service - // scheduler ignores unhealthy Elastic Load Balancing target health checks. - HealthCheckGracePeriodSeconds *int64 `type:"integer"` - - // The launch type that the service uses. - // - // Valid values: EC2 | FARGATE | EXTERNAL - LaunchType *string `type:"string"` + // The identifier of the KMS key that is used to encrypt the data between the + // local client and the container. + KmsKeyId *string `type:"string"` - // Information about the load balancers that the service uses. - LoadBalancers []*AwsEcsServiceLoadBalancersDetails `type:"list"` + // The log configuration for the results of the run command actions. Required + // if Logging is NONE. + LogConfiguration *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails `type:"structure"` - // The name of the service. - Name *string `type:"string"` + // The log setting to use for redirecting logs for run command results. + Logging *string `type:"string"` +} - // For tasks that use the awsvpc networking mode, the VPC subnet and security - // group configuration. - NetworkConfiguration *AwsEcsServiceNetworkConfigurationDetails `type:"structure"` +// String returns the string representation +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) String() string { + return awsutil.Prettify(s) +} - // The placement constraints for the tasks in the service. - PlacementConstraints []*AwsEcsServicePlacementConstraintsDetails `type:"list"` +// GoString returns the string representation +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) GoString() string { + return s.String() +} - // Information about how tasks for the service are placed. - PlacementStrategies []*AwsEcsServicePlacementStrategiesDetails `type:"list"` +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetKmsKeyId(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { + s.KmsKeyId = &v + return s +} - // The platform version on which to run the service. Only specified for tasks - // that are hosted on Fargate. If a platform version is not specified, the LATEST - // platform version is used by default. - PlatformVersion *string `type:"string"` +// SetLogConfiguration sets the LogConfiguration field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogConfiguration(v *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { + s.LogConfiguration = v + return s +} - // Indicates whether to propagate the tags from the task definition to the task - // or from the service to the task. If no value is provided, then tags are not - // propagated. - // - // Valid values: TASK_DEFINITION | SERVICE - PropagateTags *string `type:"string"` +// SetLogging sets the Logging field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails) SetLogging(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationDetails { + s.Logging = &v + return s +} - // The ARN of the IAM role that is associated with the service. The role allows - // the Amazon ECS container agent to register container instances with an Elastic - // Load Balancing load balancer. - Role *string `type:"string"` +// The log configuration for the results of the run command actions. +type AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails struct { + _ struct{} `type:"structure"` - // The scheduling strategy to use for the service. - // - // The REPLICA scheduling strategy places and maintains the desired number of - // tasks across the cluster. By default, the service scheduler spreads tasks - // across Availability Zones. Task placement strategies and constraints are - // used to customize task placement decisions. - // - // The DAEMON scheduling strategy deploys exactly one task on each active container - // instance that meets all of the task placement constraints that are specified - // in the cluster. The service scheduler also evaluates the task placement constraints - // for running tasks and stops tasks that do not meet the placement constraints. - // - // Valid values: REPLICA | DAEMON - SchedulingStrategy *string `type:"string"` + // Whether to enable encryption on the CloudWatch logs. + CloudWatchEncryptionEnabled *bool `type:"boolean"` - // The ARN of the service. - ServiceArn *string `type:"string"` + // The name of the CloudWatch log group to send the logs to. + CloudWatchLogGroupName *string `type:"string"` - // The name of the service. - // - // The name can contain up to 255 characters. It can use letters, numbers, underscores, - // and hyphens. - ServiceName *string `type:"string"` + // The name of the S3 bucket to send logs to. + S3BucketName *string `type:"string"` - // Information about the service discovery registries to assign to the service. - ServiceRegistries []*AwsEcsServiceServiceRegistriesDetails `type:"list"` + // Whether to encrypt the logs that are sent to the S3 bucket. + S3EncryptionEnabled *bool `type:"boolean"` - // The task definition to use for tasks in the service. - TaskDefinition *string `type:"string"` + // Identifies the folder in the S3 bucket to send the logs to. + S3KeyPrefix *string `type:"string"` } // String returns the string representation -func (s AwsEcsServiceDetails) String() string { +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceDetails) GoString() string { +func (s AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) GoString() string { return s.String() } -// SetCapacityProviderStrategy sets the CapacityProviderStrategy field's value. -func (s *AwsEcsServiceDetails) SetCapacityProviderStrategy(v []*AwsEcsServiceCapacityProviderStrategyDetails) *AwsEcsServiceDetails { - s.CapacityProviderStrategy = v +// SetCloudWatchEncryptionEnabled sets the CloudWatchEncryptionEnabled field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchEncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.CloudWatchEncryptionEnabled = &v return s } -// SetCluster sets the Cluster field's value. -func (s *AwsEcsServiceDetails) SetCluster(v string) *AwsEcsServiceDetails { - s.Cluster = &v +// SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetCloudWatchLogGroupName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.CloudWatchLogGroupName = &v return s } -// SetDeploymentConfiguration sets the DeploymentConfiguration field's value. -func (s *AwsEcsServiceDetails) SetDeploymentConfiguration(v *AwsEcsServiceDeploymentConfigurationDetails) *AwsEcsServiceDetails { - s.DeploymentConfiguration = v +// SetS3BucketName sets the S3BucketName field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3BucketName(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.S3BucketName = &v return s } -// SetDeploymentController sets the DeploymentController field's value. -func (s *AwsEcsServiceDetails) SetDeploymentController(v *AwsEcsServiceDeploymentControllerDetails) *AwsEcsServiceDetails { - s.DeploymentController = v - return s -} - -// SetDesiredCount sets the DesiredCount field's value. -func (s *AwsEcsServiceDetails) SetDesiredCount(v int64) *AwsEcsServiceDetails { - s.DesiredCount = &v - return s -} - -// SetEnableEcsManagedTags sets the EnableEcsManagedTags field's value. -func (s *AwsEcsServiceDetails) SetEnableEcsManagedTags(v bool) *AwsEcsServiceDetails { - s.EnableEcsManagedTags = &v - return s -} - -// SetEnableExecuteCommand sets the EnableExecuteCommand field's value. -func (s *AwsEcsServiceDetails) SetEnableExecuteCommand(v bool) *AwsEcsServiceDetails { - s.EnableExecuteCommand = &v - return s -} - -// SetHealthCheckGracePeriodSeconds sets the HealthCheckGracePeriodSeconds field's value. -func (s *AwsEcsServiceDetails) SetHealthCheckGracePeriodSeconds(v int64) *AwsEcsServiceDetails { - s.HealthCheckGracePeriodSeconds = &v - return s -} - -// SetLaunchType sets the LaunchType field's value. -func (s *AwsEcsServiceDetails) SetLaunchType(v string) *AwsEcsServiceDetails { - s.LaunchType = &v - return s -} - -// SetLoadBalancers sets the LoadBalancers field's value. -func (s *AwsEcsServiceDetails) SetLoadBalancers(v []*AwsEcsServiceLoadBalancersDetails) *AwsEcsServiceDetails { - s.LoadBalancers = v - return s -} - -// SetName sets the Name field's value. -func (s *AwsEcsServiceDetails) SetName(v string) *AwsEcsServiceDetails { - s.Name = &v - return s -} - -// SetNetworkConfiguration sets the NetworkConfiguration field's value. -func (s *AwsEcsServiceDetails) SetNetworkConfiguration(v *AwsEcsServiceNetworkConfigurationDetails) *AwsEcsServiceDetails { - s.NetworkConfiguration = v +// SetS3EncryptionEnabled sets the S3EncryptionEnabled field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3EncryptionEnabled(v bool) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.S3EncryptionEnabled = &v return s } -// SetPlacementConstraints sets the PlacementConstraints field's value. -func (s *AwsEcsServiceDetails) SetPlacementConstraints(v []*AwsEcsServicePlacementConstraintsDetails) *AwsEcsServiceDetails { - s.PlacementConstraints = v +// SetS3KeyPrefix sets the S3KeyPrefix field's value. +func (s *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails) SetS3KeyPrefix(v string) *AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails { + s.S3KeyPrefix = &v return s } -// SetPlacementStrategies sets the PlacementStrategies field's value. -func (s *AwsEcsServiceDetails) SetPlacementStrategies(v []*AwsEcsServicePlacementStrategiesDetails) *AwsEcsServiceDetails { - s.PlacementStrategies = v - return s -} +// The default capacity provider strategy for the cluster. The default capacity +// provider strategy is used when services or tasks are run without a specified +// launch type or capacity provider strategy. +type AwsEcsClusterDefaultCapacityProviderStrategyDetails struct { + _ struct{} `type:"structure"` -// SetPlatformVersion sets the PlatformVersion field's value. -func (s *AwsEcsServiceDetails) SetPlatformVersion(v string) *AwsEcsServiceDetails { - s.PlatformVersion = &v - return s -} + // The minimum number of tasks to run on the specified capacity provider. + Base *int64 `type:"integer"` -// SetPropagateTags sets the PropagateTags field's value. -func (s *AwsEcsServiceDetails) SetPropagateTags(v string) *AwsEcsServiceDetails { - s.PropagateTags = &v - return s -} + // The name of the capacity provider. + CapacityProvider *string `type:"string"` -// SetRole sets the Role field's value. -func (s *AwsEcsServiceDetails) SetRole(v string) *AwsEcsServiceDetails { - s.Role = &v - return s + // The relative percentage of the total number of tasks launched that should + // use the capacity provider. + Weight *int64 `type:"integer"` } -// SetSchedulingStrategy sets the SchedulingStrategy field's value. -func (s *AwsEcsServiceDetails) SetSchedulingStrategy(v string) *AwsEcsServiceDetails { - s.SchedulingStrategy = &v - return s +// String returns the string representation +func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) String() string { + return awsutil.Prettify(s) } -// SetServiceArn sets the ServiceArn field's value. -func (s *AwsEcsServiceDetails) SetServiceArn(v string) *AwsEcsServiceDetails { - s.ServiceArn = &v - return s +// GoString returns the string representation +func (s AwsEcsClusterDefaultCapacityProviderStrategyDetails) GoString() string { + return s.String() } -// SetServiceName sets the ServiceName field's value. -func (s *AwsEcsServiceDetails) SetServiceName(v string) *AwsEcsServiceDetails { - s.ServiceName = &v +// SetBase sets the Base field's value. +func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { + s.Base = &v return s } -// SetServiceRegistries sets the ServiceRegistries field's value. -func (s *AwsEcsServiceDetails) SetServiceRegistries(v []*AwsEcsServiceServiceRegistriesDetails) *AwsEcsServiceDetails { - s.ServiceRegistries = v +// SetCapacityProvider sets the CapacityProvider field's value. +func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { + s.CapacityProvider = &v return s } -// SetTaskDefinition sets the TaskDefinition field's value. -func (s *AwsEcsServiceDetails) SetTaskDefinition(v string) *AwsEcsServiceDetails { - s.TaskDefinition = &v +// SetWeight sets the Weight field's value. +func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsClusterDefaultCapacityProviderStrategyDetails { + s.Weight = &v return s } -// Information about a load balancer that the service uses. -type AwsEcsServiceLoadBalancersDetails struct { +// provides details about an ECS cluster. +type AwsEcsClusterDetails struct { _ struct{} `type:"structure"` - // The name of the container to associate with the load balancer. - ContainerName *string `type:"string"` + // The short name of one or more capacity providers to associate with the cluster. + CapacityProviders []*string `type:"list"` - // The port on the container to associate with the load balancer. This port - // must correspond to a containerPort in the task definition the tasks in the - // service are using. For tasks that use the EC2 launch type, the container - // instance they are launched on must allow ingress traffic on the hostPort - // of the port mapping. - ContainerPort *int64 `type:"integer"` + // The setting to use to create the cluster. Specifically used to configure + // whether to enable CloudWatch Container Insights for the cluster. + ClusterSettings []*AwsEcsClusterClusterSettingsDetails `type:"list"` - // The name of the load balancer to associate with the Amazon ECS service or - // task set. - // - // Only specified when using a Classic Load Balancer. For an Application Load - // Balancer or a Network Load Balancer, the load balancer name is omitted. - LoadBalancerName *string `type:"string"` + // The run command configuration for the cluster. + Configuration *AwsEcsClusterConfigurationDetails `type:"structure"` - // The ARN of the Elastic Load Balancing target group or groups associated with - // a service or task set. - // - // Only specified when using an Application Load Balancer or a Network Load - // Balancer. For a Classic Load Balancer, the target group ARN is omitted. - TargetGroupArn *string `type:"string"` + // The default capacity provider strategy for the cluster. The default capacity + // provider strategy is used when services or tasks are run without a specified + // launch type or capacity provider strategy. + DefaultCapacityProviderStrategy []*AwsEcsClusterDefaultCapacityProviderStrategyDetails `type:"list"` } // String returns the string representation -func (s AwsEcsServiceLoadBalancersDetails) String() string { +func (s AwsEcsClusterDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceLoadBalancersDetails) GoString() string { +func (s AwsEcsClusterDetails) GoString() string { return s.String() } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetContainerName(v string) *AwsEcsServiceLoadBalancersDetails { - s.ContainerName = &v +// SetCapacityProviders sets the CapacityProviders field's value. +func (s *AwsEcsClusterDetails) SetCapacityProviders(v []*string) *AwsEcsClusterDetails { + s.CapacityProviders = v return s } -// SetContainerPort sets the ContainerPort field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetContainerPort(v int64) *AwsEcsServiceLoadBalancersDetails { - s.ContainerPort = &v +// SetClusterSettings sets the ClusterSettings field's value. +func (s *AwsEcsClusterDetails) SetClusterSettings(v []*AwsEcsClusterClusterSettingsDetails) *AwsEcsClusterDetails { + s.ClusterSettings = v return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetLoadBalancerName(v string) *AwsEcsServiceLoadBalancersDetails { - s.LoadBalancerName = &v +// SetConfiguration sets the Configuration field's value. +func (s *AwsEcsClusterDetails) SetConfiguration(v *AwsEcsClusterConfigurationDetails) *AwsEcsClusterDetails { + s.Configuration = v return s } -// SetTargetGroupArn sets the TargetGroupArn field's value. -func (s *AwsEcsServiceLoadBalancersDetails) SetTargetGroupArn(v string) *AwsEcsServiceLoadBalancersDetails { - s.TargetGroupArn = &v +// SetDefaultCapacityProviderStrategy sets the DefaultCapacityProviderStrategy field's value. +func (s *AwsEcsClusterDetails) SetDefaultCapacityProviderStrategy(v []*AwsEcsClusterDefaultCapacityProviderStrategyDetails) *AwsEcsClusterDetails { + s.DefaultCapacityProviderStrategy = v return s } -// For tasks that use the awsvpc networking mode, the VPC subnet and security -// group configuration. -type AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails struct { +// Strategy item for the capacity provider strategy that the service uses. +type AwsEcsServiceCapacityProviderStrategyDetails struct { _ struct{} `type:"structure"` - // Whether the task's elastic network interface receives a public IP address. - // The default value is DISABLED. + // The minimum number of tasks to run on the capacity provider. Only one strategy + // item can specify a value for Base. // - // Valid values: ENABLED | DISABLED - AssignPublicIp *string `type:"string"` + // The value must be between 0 and 100000. + Base *int64 `type:"integer"` - // The IDs of the security groups associated with the task or service. - // - // You can provide up to five security groups. - SecurityGroups []*string `type:"list"` + // The short name of the capacity provider. + CapacityProvider *string `type:"string"` - // The IDs of the subnets associated with the task or service. + // The relative percentage of the total number of tasks that should use the + // capacity provider. // - // You can provide up to 16 subnets. - Subnets []*string `type:"list"` + // If no weight is specified, the default value is 0. At least one capacity + // provider must have a weight greater than 0. + // + // The value can be between 0 and 1000. + Weight *int64 `type:"integer"` } // String returns the string representation -func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) String() string { +func (s AwsEcsServiceCapacityProviderStrategyDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) GoString() string { +func (s AwsEcsServiceCapacityProviderStrategyDetails) GoString() string { return s.String() } -// SetAssignPublicIp sets the AssignPublicIp field's value. -func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetAssignPublicIp(v string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { - s.AssignPublicIp = &v +// SetBase sets the Base field's value. +func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetBase(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { + s.Base = &v return s } -// SetSecurityGroups sets the SecurityGroups field's value. -func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSecurityGroups(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { - s.SecurityGroups = v +// SetCapacityProvider sets the CapacityProvider field's value. +func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetCapacityProvider(v string) *AwsEcsServiceCapacityProviderStrategyDetails { + s.CapacityProvider = &v return s } -// SetSubnets sets the Subnets field's value. -func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSubnets(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { - s.Subnets = v +// SetWeight sets the Weight field's value. +func (s *AwsEcsServiceCapacityProviderStrategyDetails) SetWeight(v int64) *AwsEcsServiceCapacityProviderStrategyDetails { + s.Weight = &v return s } -// For tasks that use the awsvpc networking mode, the VPC subnet and security -// group configuration. -type AwsEcsServiceNetworkConfigurationDetails struct { +// Determines whether a service deployment fails if a service cannot reach a +// steady state. +type AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails struct { _ struct{} `type:"structure"` - // The VPC subnet and security group configuration. - AwsVpcConfiguration *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails `type:"structure"` + // Whether to enable the deployment circuit breaker logic for the service. + Enable *bool `type:"boolean"` + + // Whether to roll back the service if a service deployment fails. If rollback + // is enabled, when a service deployment fails, the service is rolled back to + // the last deployment that completed successfully. + Rollback *bool `type:"boolean"` } // String returns the string representation -func (s AwsEcsServiceNetworkConfigurationDetails) String() string { +func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceNetworkConfigurationDetails) GoString() string { +func (s AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) GoString() string { return s.String() } -// SetAwsVpcConfiguration sets the AwsVpcConfiguration field's value. -func (s *AwsEcsServiceNetworkConfigurationDetails) SetAwsVpcConfiguration(v *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) *AwsEcsServiceNetworkConfigurationDetails { - s.AwsVpcConfiguration = v - return s +// SetEnable sets the Enable field's value. +func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetEnable(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { + s.Enable = &v + return s } -// A placement constraint for the tasks in the service. -type AwsEcsServicePlacementConstraintsDetails struct { +// SetRollback sets the Rollback field's value. +func (s *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) SetRollback(v bool) *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails { + s.Rollback = &v + return s +} + +// Optional deployment parameters for the service. +type AwsEcsServiceDeploymentConfigurationDetails struct { _ struct{} `type:"structure"` - // A cluster query language expression to apply to the constraint. You cannot - // specify an expression if the constraint type is distinctInstance. - Expression *string `type:"string"` + // Determines whether a service deployment fails if a service cannot reach a + // steady state. + DeploymentCircuitBreaker *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails `type:"structure"` - // The type of constraint. Use distinctInstance to run each task in a particular - // group on a different container instance. Use memberOf to restrict the selection - // to a group of valid candidates. + // For a service that uses the rolling update (ECS) deployment type, the maximum + // number of tasks in a service that are allowed in the RUNNING or PENDING state + // during a deployment, and for tasks that use the EC2 launch type, when any + // container instances are in the DRAINING state. Provided as a percentage of + // the desired number of tasks. The default value is 200%. // - // Valid values: distinctInstance | memberOf - Type *string `type:"string"` + // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment + // types, and tasks that use the EC2 launch type, the maximum number of tasks + // in the service that remain in the RUNNING state while the container instances + // are in the DRAINING state. + // + // For the Fargate launch type, the maximum percent value is not used. + MaximumPercent *int64 `type:"integer"` + + // For a service that uses the rolling update (ECS) deployment type, the minimum + // number of tasks in a service that must remain in the RUNNING state during + // a deployment, and while any container instances are in the DRAINING state + // if the service contains tasks using the EC2 launch type. Expressed as a percentage + // of the desired number of tasks. The default value is 100%. + // + // For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment + // types and tasks that use the EC2 launch type, the minimum number of the tasks + // in the service that remain in the RUNNING state while the container instances + // are in the DRAINING state. + // + // For the Fargate launch type, the minimum healthy percent value is not used. + MinimumHealthyPercent *int64 `type:"integer"` } // String returns the string representation -func (s AwsEcsServicePlacementConstraintsDetails) String() string { +func (s AwsEcsServiceDeploymentConfigurationDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServicePlacementConstraintsDetails) GoString() string { +func (s AwsEcsServiceDeploymentConfigurationDetails) GoString() string { return s.String() } -// SetExpression sets the Expression field's value. -func (s *AwsEcsServicePlacementConstraintsDetails) SetExpression(v string) *AwsEcsServicePlacementConstraintsDetails { - s.Expression = &v +// SetDeploymentCircuitBreaker sets the DeploymentCircuitBreaker field's value. +func (s *AwsEcsServiceDeploymentConfigurationDetails) SetDeploymentCircuitBreaker(v *AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails) *AwsEcsServiceDeploymentConfigurationDetails { + s.DeploymentCircuitBreaker = v return s } -// SetType sets the Type field's value. -func (s *AwsEcsServicePlacementConstraintsDetails) SetType(v string) *AwsEcsServicePlacementConstraintsDetails { - s.Type = &v +// SetMaximumPercent sets the MaximumPercent field's value. +func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMaximumPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { + s.MaximumPercent = &v return s } -// A placement strategy that determines how to place the tasks for the service. -type AwsEcsServicePlacementStrategiesDetails struct { - _ struct{} `type:"structure"` +// SetMinimumHealthyPercent sets the MinimumHealthyPercent field's value. +func (s *AwsEcsServiceDeploymentConfigurationDetails) SetMinimumHealthyPercent(v int64) *AwsEcsServiceDeploymentConfigurationDetails { + s.MinimumHealthyPercent = &v + return s +} - // The field to apply the placement strategy against. - // - // For the spread placement strategy, valid values are instanceId (or host, - // which has the same effect), or any platform or custom attribute that is applied - // to a container instance, such as attribute:ecs.availability-zone. - // - // For the binpack placement strategy, valid values are cpu and memory. - // - // For the random placement strategy, this attribute is not used. - Field *string `type:"string"` +// Information about the deployment controller type that the service uses. +type AwsEcsServiceDeploymentControllerDetails struct { + _ struct{} `type:"structure"` - // The type of placement strategy. - // - // The random placement strategy randomly places tasks on available candidates. + // The rolling update (ECS) deployment type replaces the current running version + // of the container with the latest version. // - // The spread placement strategy spreads placement across available candidates - // evenly based on the value of Field. + // The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment + // model that is powered by CodeDeploy. This deployment model a new deployment + // of a service can be verified before production traffic is sent to it. // - // The binpack strategy places tasks on available candidates that have the least - // available amount of the resource that is specified in Field. + // The external (EXTERNAL) deployment type allows the use of any third-party + // deployment controller for full control over the deployment process for an + // Amazon ECS service. // - // Valid values: random | spread | binpack + // Valid values: ECS | CODE_DEPLOY | EXTERNAL Type *string `type:"string"` } // String returns the string representation -func (s AwsEcsServicePlacementStrategiesDetails) String() string { +func (s AwsEcsServiceDeploymentControllerDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServicePlacementStrategiesDetails) GoString() string { +func (s AwsEcsServiceDeploymentControllerDetails) GoString() string { return s.String() } -// SetField sets the Field field's value. -func (s *AwsEcsServicePlacementStrategiesDetails) SetField(v string) *AwsEcsServicePlacementStrategiesDetails { - s.Field = &v - return s -} - // SetType sets the Type field's value. -func (s *AwsEcsServicePlacementStrategiesDetails) SetType(v string) *AwsEcsServicePlacementStrategiesDetails { +func (s *AwsEcsServiceDeploymentControllerDetails) SetType(v string) *AwsEcsServiceDeploymentControllerDetails { s.Type = &v return s } -// Information about a service discovery registry to assign to the service. -type AwsEcsServiceServiceRegistriesDetails struct { +// Provides details about a service within an ECS cluster. +type AwsEcsServiceDetails struct { _ struct{} `type:"structure"` - // The container name value to use for the service discovery service. + // The capacity provider strategy that the service uses. + CapacityProviderStrategy []*AwsEcsServiceCapacityProviderStrategyDetails `type:"list"` + + // The ARN of the cluster that hosts the service. + Cluster *string `type:"string"` + + // Deployment parameters for the service. Includes the number of tasks that + // run and the order in which to start and stop tasks. + DeploymentConfiguration *AwsEcsServiceDeploymentConfigurationDetails `type:"structure"` + + // Contains the deployment controller type that the service uses. + DeploymentController *AwsEcsServiceDeploymentControllerDetails `type:"structure"` + + // The number of instantiations of the task definition to run on the service. + DesiredCount *int64 `type:"integer"` + + // Whether to enable Amazon ECS managed tags for the tasks in the service. + EnableEcsManagedTags *bool `type:"boolean"` + + // Whether the execute command functionality is enabled for the service. + EnableExecuteCommand *bool `type:"boolean"` + + // After a task starts, the amount of time in seconds that the Amazon ECS service + // scheduler ignores unhealthy Elastic Load Balancing target health checks. + HealthCheckGracePeriodSeconds *int64 `type:"integer"` + + // The launch type that the service uses. // - // If the task definition uses the bridge or host network mode, you must specify - // ContainerName and ContainerPort. + // Valid values: EC2 | FARGATE | EXTERNAL + LaunchType *string `type:"string"` + + // Information about the load balancers that the service uses. + LoadBalancers []*AwsEcsServiceLoadBalancersDetails `type:"list"` + + // The name of the service. + Name *string `type:"string"` + + // For tasks that use the awsvpc networking mode, the VPC subnet and security + // group configuration. + NetworkConfiguration *AwsEcsServiceNetworkConfigurationDetails `type:"structure"` + + // The placement constraints for the tasks in the service. + PlacementConstraints []*AwsEcsServicePlacementConstraintsDetails `type:"list"` + + // Information about how tasks for the service are placed. + PlacementStrategies []*AwsEcsServicePlacementStrategiesDetails `type:"list"` + + // The platform version on which to run the service. Only specified for tasks + // that are hosted on Fargate. If a platform version is not specified, the LATEST + // platform version is used by default. + PlatformVersion *string `type:"string"` + + // Indicates whether to propagate the tags from the task definition to the task + // or from the service to the task. If no value is provided, then tags are not + // propagated. // - // If the task definition uses the awsvpc network mode and a type SRV DNS record, - // you must specify either ContainerName and ContainerPort, or Port , but not - // both. - ContainerName *string `type:"string"` + // Valid values: TASK_DEFINITION | SERVICE + PropagateTags *string `type:"string"` - // The port value to use for the service discovery service. + // The ARN of the IAM role that is associated with the service. The role allows + // the Amazon ECS container agent to register container instances with an Elastic + // Load Balancing load balancer. + Role *string `type:"string"` + + // The scheduling strategy to use for the service. // - // If the task definition uses the bridge or host network mode, you must specify - // ContainerName and ContainerPort. + // The REPLICA scheduling strategy places and maintains the desired number of + // tasks across the cluster. By default, the service scheduler spreads tasks + // across Availability Zones. Task placement strategies and constraints are + // used to customize task placement decisions. // - // If the task definition uses the awsvpc network mode and a type SRV DNS record, - // you must specify either ContainerName and ContainerPort, or Port , but not - // both. - ContainerPort *int64 `type:"integer"` + // The DAEMON scheduling strategy deploys exactly one task on each active container + // instance that meets all of the task placement constraints that are specified + // in the cluster. The service scheduler also evaluates the task placement constraints + // for running tasks and stops tasks that do not meet the placement constraints. + // + // Valid values: REPLICA | DAEMON + SchedulingStrategy *string `type:"string"` - // The port value to use for a service discovery service that specifies an SRV - // record. This field can be used if both the awsvpcawsvpc network mode and - // SRV records are used. - Port *int64 `type:"integer"` + // The ARN of the service. + ServiceArn *string `type:"string"` - // The ARN of the service registry. - RegistryArn *string `type:"string"` + // The name of the service. + // + // The name can contain up to 255 characters. It can use letters, numbers, underscores, + // and hyphens. + ServiceName *string `type:"string"` + + // Information about the service discovery registries to assign to the service. + ServiceRegistries []*AwsEcsServiceServiceRegistriesDetails `type:"list"` + + // The task definition to use for tasks in the service. + TaskDefinition *string `type:"string"` } // String returns the string representation -func (s AwsEcsServiceServiceRegistriesDetails) String() string { +func (s AwsEcsServiceDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsServiceServiceRegistriesDetails) GoString() string { +func (s AwsEcsServiceDetails) GoString() string { return s.String() } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerName(v string) *AwsEcsServiceServiceRegistriesDetails { - s.ContainerName = &v +// SetCapacityProviderStrategy sets the CapacityProviderStrategy field's value. +func (s *AwsEcsServiceDetails) SetCapacityProviderStrategy(v []*AwsEcsServiceCapacityProviderStrategyDetails) *AwsEcsServiceDetails { + s.CapacityProviderStrategy = v return s } -// SetContainerPort sets the ContainerPort field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerPort(v int64) *AwsEcsServiceServiceRegistriesDetails { - s.ContainerPort = &v +// SetCluster sets the Cluster field's value. +func (s *AwsEcsServiceDetails) SetCluster(v string) *AwsEcsServiceDetails { + s.Cluster = &v return s } -// SetPort sets the Port field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetPort(v int64) *AwsEcsServiceServiceRegistriesDetails { - s.Port = &v +// SetDeploymentConfiguration sets the DeploymentConfiguration field's value. +func (s *AwsEcsServiceDetails) SetDeploymentConfiguration(v *AwsEcsServiceDeploymentConfigurationDetails) *AwsEcsServiceDetails { + s.DeploymentConfiguration = v return s } -// SetRegistryArn sets the RegistryArn field's value. -func (s *AwsEcsServiceServiceRegistriesDetails) SetRegistryArn(v string) *AwsEcsServiceServiceRegistriesDetails { - s.RegistryArn = &v +// SetDeploymentController sets the DeploymentController field's value. +func (s *AwsEcsServiceDetails) SetDeploymentController(v *AwsEcsServiceDeploymentControllerDetails) *AwsEcsServiceDetails { + s.DeploymentController = v return s } -// A dependency that is defined for container startup and shutdown. -type AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails struct { - _ struct{} `type:"structure"` +// SetDesiredCount sets the DesiredCount field's value. +func (s *AwsEcsServiceDetails) SetDesiredCount(v int64) *AwsEcsServiceDetails { + s.DesiredCount = &v + return s +} - // The dependency condition of the dependent container. Indicates the required - // status of the dependent container before the current container can start. - Condition *string `type:"string"` +// SetEnableEcsManagedTags sets the EnableEcsManagedTags field's value. +func (s *AwsEcsServiceDetails) SetEnableEcsManagedTags(v bool) *AwsEcsServiceDetails { + s.EnableEcsManagedTags = &v + return s +} - // The name of the dependent container. - ContainerName *string `type:"string"` +// SetEnableExecuteCommand sets the EnableExecuteCommand field's value. +func (s *AwsEcsServiceDetails) SetEnableExecuteCommand(v bool) *AwsEcsServiceDetails { + s.EnableExecuteCommand = &v + return s } -// String returns the string representation -func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) String() string { - return awsutil.Prettify(s) +// SetHealthCheckGracePeriodSeconds sets the HealthCheckGracePeriodSeconds field's value. +func (s *AwsEcsServiceDetails) SetHealthCheckGracePeriodSeconds(v int64) *AwsEcsServiceDetails { + s.HealthCheckGracePeriodSeconds = &v + return s } -// GoString returns the string representation -func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) GoString() string { - return s.String() +// SetLaunchType sets the LaunchType field's value. +func (s *AwsEcsServiceDetails) SetLaunchType(v string) *AwsEcsServiceDetails { + s.LaunchType = &v + return s } -// SetCondition sets the Condition field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetCondition(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { - s.Condition = &v +// SetLoadBalancers sets the LoadBalancers field's value. +func (s *AwsEcsServiceDetails) SetLoadBalancers(v []*AwsEcsServiceLoadBalancersDetails) *AwsEcsServiceDetails { + s.LoadBalancers = v return s } -// SetContainerName sets the ContainerName field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetContainerName(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { - s.ContainerName = &v +// SetName sets the Name field's value. +func (s *AwsEcsServiceDetails) SetName(v string) *AwsEcsServiceDetails { + s.Name = &v return s } -// A container definition that describes a container in the task. -type AwsEcsTaskDefinitionContainerDefinitionsDetails struct { - _ struct{} `type:"structure"` +// SetNetworkConfiguration sets the NetworkConfiguration field's value. +func (s *AwsEcsServiceDetails) SetNetworkConfiguration(v *AwsEcsServiceNetworkConfigurationDetails) *AwsEcsServiceDetails { + s.NetworkConfiguration = v + return s +} - // The command that is passed to the container. - Command []*string `type:"list"` +// SetPlacementConstraints sets the PlacementConstraints field's value. +func (s *AwsEcsServiceDetails) SetPlacementConstraints(v []*AwsEcsServicePlacementConstraintsDetails) *AwsEcsServiceDetails { + s.PlacementConstraints = v + return s +} - // The number of CPU units reserved for the container. - Cpu *int64 `type:"integer"` +// SetPlacementStrategies sets the PlacementStrategies field's value. +func (s *AwsEcsServiceDetails) SetPlacementStrategies(v []*AwsEcsServicePlacementStrategiesDetails) *AwsEcsServiceDetails { + s.PlacementStrategies = v + return s +} - // The dependencies that are defined for container startup and shutdown. - DependsOn []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails `type:"list"` +// SetPlatformVersion sets the PlatformVersion field's value. +func (s *AwsEcsServiceDetails) SetPlatformVersion(v string) *AwsEcsServiceDetails { + s.PlatformVersion = &v + return s +} - // Whether to disable networking within the container. - DisableNetworking *bool `type:"boolean"` +// SetPropagateTags sets the PropagateTags field's value. +func (s *AwsEcsServiceDetails) SetPropagateTags(v string) *AwsEcsServiceDetails { + s.PropagateTags = &v + return s +} - // A list of DNS search domains that are presented to the container. - DnsSearchDomains []*string `type:"list"` +// SetRole sets the Role field's value. +func (s *AwsEcsServiceDetails) SetRole(v string) *AwsEcsServiceDetails { + s.Role = &v + return s +} - // A list of DNS servers that are presented to the container. - DnsServers []*string `type:"list"` +// SetSchedulingStrategy sets the SchedulingStrategy field's value. +func (s *AwsEcsServiceDetails) SetSchedulingStrategy(v string) *AwsEcsServiceDetails { + s.SchedulingStrategy = &v + return s +} - // A key-value map of labels to add to the container. - DockerLabels map[string]*string `type:"map"` +// SetServiceArn sets the ServiceArn field's value. +func (s *AwsEcsServiceDetails) SetServiceArn(v string) *AwsEcsServiceDetails { + s.ServiceArn = &v + return s +} - // A list of strings to provide custom labels for SELinux and AppArmor multi-level - // security systems. - DockerSecurityOptions []*string `type:"list"` +// SetServiceName sets the ServiceName field's value. +func (s *AwsEcsServiceDetails) SetServiceName(v string) *AwsEcsServiceDetails { + s.ServiceName = &v + return s +} - // The entry point that is passed to the container. - EntryPoint []*string `type:"list"` +// SetServiceRegistries sets the ServiceRegistries field's value. +func (s *AwsEcsServiceDetails) SetServiceRegistries(v []*AwsEcsServiceServiceRegistriesDetails) *AwsEcsServiceDetails { + s.ServiceRegistries = v + return s +} - // The environment variables to pass to a container. - Environment []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails `type:"list"` +// SetTaskDefinition sets the TaskDefinition field's value. +func (s *AwsEcsServiceDetails) SetTaskDefinition(v string) *AwsEcsServiceDetails { + s.TaskDefinition = &v + return s +} - // A list of files containing the environment variables to pass to a container. - EnvironmentFiles []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails `type:"list"` +// Information about a load balancer that the service uses. +type AwsEcsServiceLoadBalancersDetails struct { + _ struct{} `type:"structure"` - // Whether the container is essential. All tasks must have at least one essential - // container. - Essential *bool `type:"boolean"` + // The name of the container to associate with the load balancer. + ContainerName *string `type:"string"` - // A list of hostnames and IP address mappings to append to the /etc/hosts file - // on the container. - ExtraHosts []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails `type:"list"` + // The port on the container to associate with the load balancer. This port + // must correspond to a containerPort in the task definition the tasks in the + // service are using. For tasks that use the EC2 launch type, the container + // instance they are launched on must allow ingress traffic on the hostPort + // of the port mapping. + ContainerPort *int64 `type:"integer"` - // The FireLens configuration for the container. Specifies and configures a - // log router for container logs. - FirelensConfiguration *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails `type:"structure"` + // The name of the load balancer to associate with the Amazon ECS service or + // task set. + // + // Only specified when using a Classic Load Balancer. For an Application Load + // Balancer or a Network Load Balancer, the load balancer name is omitted. + LoadBalancerName *string `type:"string"` - // The container health check command and associated configuration parameters - // for the container. - HealthCheck *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails `type:"structure"` + // The ARN of the Elastic Load Balancing target group or groups associated with + // a service or task set. + // + // Only specified when using an Application Load Balancer or a Network Load + // Balancer. For a Classic Load Balancer, the target group ARN is omitted. + TargetGroupArn *string `type:"string"` +} - // The hostname to use for the container. - Hostname *string `type:"string"` +// String returns the string representation +func (s AwsEcsServiceLoadBalancersDetails) String() string { + return awsutil.Prettify(s) +} - // The image used to start the container. - Image *string `type:"string"` +// GoString returns the string representation +func (s AwsEcsServiceLoadBalancersDetails) GoString() string { + return s.String() +} - // If set to true, then containerized applications can be deployed that require - // stdin or a tty to be allocated. - Interactive *bool `type:"boolean"` +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetContainerName(v string) *AwsEcsServiceLoadBalancersDetails { + s.ContainerName = &v + return s +} - // A list of links for the container in the form container_name:alias . Allows - // containers to communicate with each other without the need for port mappings. - Links []*string `type:"list"` +// SetContainerPort sets the ContainerPort field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetContainerPort(v int64) *AwsEcsServiceLoadBalancersDetails { + s.ContainerPort = &v + return s +} - // Linux-specific modifications that are applied to the container, such as Linux - // kernel capabilities. - LinuxParameters *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails `type:"structure"` +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetLoadBalancerName(v string) *AwsEcsServiceLoadBalancersDetails { + s.LoadBalancerName = &v + return s +} - // The log configuration specification for the container. - LogConfiguration *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails `type:"structure"` +// SetTargetGroupArn sets the TargetGroupArn field's value. +func (s *AwsEcsServiceLoadBalancersDetails) SetTargetGroupArn(v string) *AwsEcsServiceLoadBalancersDetails { + s.TargetGroupArn = &v + return s +} - // The amount (in MiB) of memory to present to the container. If the container - // attempts to exceed the memory specified here, the container is shut down. - // The total amount of memory reserved for all containers within a task must - // be lower than the task memory value, if one is specified. - Memory *int64 `type:"integer"` +// For tasks that use the awsvpc networking mode, the VPC subnet and security +// group configuration. +type AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails struct { + _ struct{} `type:"structure"` - // The soft limit (in MiB) of memory to reserve for the container. - MemoryReservation *int64 `type:"integer"` + // Whether the task's elastic network interface receives a public IP address. + // The default value is DISABLED. + // + // Valid values: ENABLED | DISABLED + AssignPublicIp *string `type:"string"` - // The mount points for the data volumes in the container. - MountPoints []*AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails `type:"list"` + // The IDs of the security groups associated with the task or service. + // + // You can provide up to five security groups. + SecurityGroups []*string `type:"list"` - // The name of the container. - Name *string `type:"string"` + // The IDs of the subnets associated with the task or service. + // + // You can provide up to 16 subnets. + Subnets []*string `type:"list"` +} - // The list of port mappings for the container. - PortMappings []*AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails `type:"list"` +// String returns the string representation +func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) String() string { + return awsutil.Prettify(s) +} - // Whether the container is given elevated privileges on the host container - // instance. The elevated privileges are similar to the root user. - Privileged *bool `type:"boolean"` +// GoString returns the string representation +func (s AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) GoString() string { + return s.String() +} - // Whether to allocate a TTY to the container. - PseudoTerminal *bool `type:"boolean"` +// SetAssignPublicIp sets the AssignPublicIp field's value. +func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetAssignPublicIp(v string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { + s.AssignPublicIp = &v + return s +} - // Whether the container is given read-only access to its root file system. - ReadonlyRootFilesystem *bool `type:"boolean"` +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSecurityGroups(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { + s.SecurityGroups = v + return s +} - // The private repository authentication credentials to use. - RepositoryCredentials *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails `type:"structure"` +// SetSubnets sets the Subnets field's value. +func (s *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) SetSubnets(v []*string) *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails { + s.Subnets = v + return s +} - // The type and amount of a resource to assign to a container. The only supported - // resource is a GPU. - ResourceRequirements []*AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails `type:"list"` +// For tasks that use the awsvpc networking mode, the VPC subnet and security +// group configuration. +type AwsEcsServiceNetworkConfigurationDetails struct { + _ struct{} `type:"structure"` - // The secrets to pass to the container. - Secrets []*AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails `type:"list"` + // The VPC subnet and security group configuration. + AwsVpcConfiguration *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails `type:"structure"` +} - // The number of seconds to wait before giving up on resolving dependencies - // for a container. - StartTimeout *int64 `type:"integer"` +// String returns the string representation +func (s AwsEcsServiceNetworkConfigurationDetails) String() string { + return awsutil.Prettify(s) +} - // The number of seconds to wait before the container is stopped if it doesn't - // shut down normally on its own. - StopTimeout *int64 `type:"integer"` +// GoString returns the string representation +func (s AwsEcsServiceNetworkConfigurationDetails) GoString() string { + return s.String() +} - // A list of namespaced kernel parameters to set in the container. - SystemControls []*AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails `type:"list"` +// SetAwsVpcConfiguration sets the AwsVpcConfiguration field's value. +func (s *AwsEcsServiceNetworkConfigurationDetails) SetAwsVpcConfiguration(v *AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetails) *AwsEcsServiceNetworkConfigurationDetails { + s.AwsVpcConfiguration = v + return s +} - // A list of ulimits to set in the container. - Ulimits []*AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails `type:"list"` +// A placement constraint for the tasks in the service. +type AwsEcsServicePlacementConstraintsDetails struct { + _ struct{} `type:"structure"` - // The user to use inside the container. + // A cluster query language expression to apply to the constraint. You cannot + // specify an expression if the constraint type is distinctInstance. + Expression *string `type:"string"` + + // The type of constraint. Use distinctInstance to run each task in a particular + // group on a different container instance. Use memberOf to restrict the selection + // to a group of valid candidates. // - // The value can use one of the following formats. + // Valid values: distinctInstance | memberOf + Type *string `type:"string"` +} + +// String returns the string representation +func (s AwsEcsServicePlacementConstraintsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEcsServicePlacementConstraintsDetails) GoString() string { + return s.String() +} + +// SetExpression sets the Expression field's value. +func (s *AwsEcsServicePlacementConstraintsDetails) SetExpression(v string) *AwsEcsServicePlacementConstraintsDetails { + s.Expression = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsEcsServicePlacementConstraintsDetails) SetType(v string) *AwsEcsServicePlacementConstraintsDetails { + s.Type = &v + return s +} + +// A placement strategy that determines how to place the tasks for the service. +type AwsEcsServicePlacementStrategiesDetails struct { + _ struct{} `type:"structure"` + + // The field to apply the placement strategy against. // - // * user + // For the spread placement strategy, valid values are instanceId (or host, + // which has the same effect), or any platform or custom attribute that is applied + // to a container instance, such as attribute:ecs.availability-zone. // - // * user :group + // For the binpack placement strategy, valid values are cpu and memory. // - // * uid + // For the random placement strategy, this attribute is not used. + Field *string `type:"string"` + + // The type of placement strategy. // - // * uid :gid + // The random placement strategy randomly places tasks on available candidates. // - // * user :gid + // The spread placement strategy spreads placement across available candidates + // evenly based on the value of Field. // - // * uid :group - User *string `type:"string"` - - // Data volumes to mount from another container. - VolumesFrom []*AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails `type:"list"` - - // The working directory in which to run commands inside the container. - WorkingDirectory *string `type:"string"` + // The binpack strategy places tasks on available candidates that have the least + // available amount of the resource that is specified in Field. + // + // Valid values: random | spread | binpack + Type *string `type:"string"` } // String returns the string representation -func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) String() string { +func (s AwsEcsServicePlacementStrategiesDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) GoString() string { +func (s AwsEcsServicePlacementStrategiesDetails) GoString() string { return s.String() } -// SetCommand sets the Command field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCommand(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Command = v +// SetField sets the Field field's value. +func (s *AwsEcsServicePlacementStrategiesDetails) SetField(v string) *AwsEcsServicePlacementStrategiesDetails { + s.Field = &v return s } -// SetCpu sets the Cpu field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCpu(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Cpu = &v +// SetType sets the Type field's value. +func (s *AwsEcsServicePlacementStrategiesDetails) SetType(v string) *AwsEcsServicePlacementStrategiesDetails { + s.Type = &v return s } -// SetDependsOn sets the DependsOn field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDependsOn(v []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DependsOn = v - return s -} +// Information about a service discovery registry to assign to the service. +type AwsEcsServiceServiceRegistriesDetails struct { + _ struct{} `type:"structure"` -// SetDisableNetworking sets the DisableNetworking field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDisableNetworking(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DisableNetworking = &v - return s + // The container name value to use for the service discovery service. + // + // If the task definition uses the bridge or host network mode, you must specify + // ContainerName and ContainerPort. + // + // If the task definition uses the awsvpc network mode and a type SRV DNS record, + // you must specify either ContainerName and ContainerPort, or Port , but not + // both. + ContainerName *string `type:"string"` + + // The port value to use for the service discovery service. + // + // If the task definition uses the bridge or host network mode, you must specify + // ContainerName and ContainerPort. + // + // If the task definition uses the awsvpc network mode and a type SRV DNS record, + // you must specify either ContainerName and ContainerPort, or Port , but not + // both. + ContainerPort *int64 `type:"integer"` + + // The port value to use for a service discovery service that specifies an SRV + // record. This field can be used if both the awsvpcawsvpc network mode and + // SRV records are used. + Port *int64 `type:"integer"` + + // The ARN of the service registry. + RegistryArn *string `type:"string"` } -// SetDnsSearchDomains sets the DnsSearchDomains field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsSearchDomains(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DnsSearchDomains = v - return s +// String returns the string representation +func (s AwsEcsServiceServiceRegistriesDetails) String() string { + return awsutil.Prettify(s) } -// SetDnsServers sets the DnsServers field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsServers(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DnsServers = v - return s +// GoString returns the string representation +func (s AwsEcsServiceServiceRegistriesDetails) GoString() string { + return s.String() } -// SetDockerLabels sets the DockerLabels field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerLabels(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DockerLabels = v +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerName(v string) *AwsEcsServiceServiceRegistriesDetails { + s.ContainerName = &v return s } -// SetDockerSecurityOptions sets the DockerSecurityOptions field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerSecurityOptions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.DockerSecurityOptions = v +// SetContainerPort sets the ContainerPort field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetContainerPort(v int64) *AwsEcsServiceServiceRegistriesDetails { + s.ContainerPort = &v return s } -// SetEntryPoint sets the EntryPoint field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEntryPoint(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.EntryPoint = v +// SetPort sets the Port field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetPort(v int64) *AwsEcsServiceServiceRegistriesDetails { + s.Port = &v return s } -// SetEnvironment sets the Environment field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironment(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Environment = v +// SetRegistryArn sets the RegistryArn field's value. +func (s *AwsEcsServiceServiceRegistriesDetails) SetRegistryArn(v string) *AwsEcsServiceServiceRegistriesDetails { + s.RegistryArn = &v return s } -// SetEnvironmentFiles sets the EnvironmentFiles field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironmentFiles(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.EnvironmentFiles = v - return s +// A dependency that is defined for container startup and shutdown. +type AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails struct { + _ struct{} `type:"structure"` + + // The dependency condition of the dependent container. Indicates the required + // status of the dependent container before the current container can start. + Condition *string `type:"string"` + + // The name of the dependent container. + ContainerName *string `type:"string"` } -// SetEssential sets the Essential field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEssential(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.Essential = &v - return s +// String returns the string representation +func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) String() string { + return awsutil.Prettify(s) } -// SetExtraHosts sets the ExtraHosts field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetExtraHosts(v []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.ExtraHosts = v - return s +// GoString returns the string representation +func (s AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) GoString() string { + return s.String() } -// SetFirelensConfiguration sets the FirelensConfiguration field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetFirelensConfiguration(v *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.FirelensConfiguration = v +// SetCondition sets the Condition field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetCondition(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { + s.Condition = &v return s } -// SetHealthCheck sets the HealthCheck field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHealthCheck(v *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { - s.HealthCheck = v +// SetContainerName sets the ContainerName field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) SetContainerName(v string) *AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails { + s.ContainerName = &v return s } -// SetHostname sets the Hostname field's value. -func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHostname(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { +// A container definition that describes a container in the task. +type AwsEcsTaskDefinitionContainerDefinitionsDetails struct { + _ struct{} `type:"structure"` + + // The command that is passed to the container. + Command []*string `type:"list"` + + // The number of CPU units reserved for the container. + Cpu *int64 `type:"integer"` + + // The dependencies that are defined for container startup and shutdown. + DependsOn []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails `type:"list"` + + // Whether to disable networking within the container. + DisableNetworking *bool `type:"boolean"` + + // A list of DNS search domains that are presented to the container. + DnsSearchDomains []*string `type:"list"` + + // A list of DNS servers that are presented to the container. + DnsServers []*string `type:"list"` + + // A key-value map of labels to add to the container. + DockerLabels map[string]*string `type:"map"` + + // A list of strings to provide custom labels for SELinux and AppArmor multi-level + // security systems. + DockerSecurityOptions []*string `type:"list"` + + // The entry point that is passed to the container. + EntryPoint []*string `type:"list"` + + // The environment variables to pass to a container. + Environment []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails `type:"list"` + + // A list of files containing the environment variables to pass to a container. + EnvironmentFiles []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails `type:"list"` + + // Whether the container is essential. All tasks must have at least one essential + // container. + Essential *bool `type:"boolean"` + + // A list of hostnames and IP address mappings to append to the /etc/hosts file + // on the container. + ExtraHosts []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails `type:"list"` + + // The FireLens configuration for the container. Specifies and configures a + // log router for container logs. + FirelensConfiguration *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails `type:"structure"` + + // The container health check command and associated configuration parameters + // for the container. + HealthCheck *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails `type:"structure"` + + // The hostname to use for the container. + Hostname *string `type:"string"` + + // The image used to start the container. + Image *string `type:"string"` + + // If set to true, then containerized applications can be deployed that require + // stdin or a tty to be allocated. + Interactive *bool `type:"boolean"` + + // A list of links for the container in the form container_name:alias . Allows + // containers to communicate with each other without the need for port mappings. + Links []*string `type:"list"` + + // Linux-specific modifications that are applied to the container, such as Linux + // kernel capabilities. + LinuxParameters *AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails `type:"structure"` + + // The log configuration specification for the container. + LogConfiguration *AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails `type:"structure"` + + // The amount (in MiB) of memory to present to the container. If the container + // attempts to exceed the memory specified here, the container is shut down. + // The total amount of memory reserved for all containers within a task must + // be lower than the task memory value, if one is specified. + Memory *int64 `type:"integer"` + + // The soft limit (in MiB) of memory to reserve for the container. + MemoryReservation *int64 `type:"integer"` + + // The mount points for the data volumes in the container. + MountPoints []*AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails `type:"list"` + + // The name of the container. + Name *string `type:"string"` + + // The list of port mappings for the container. + PortMappings []*AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails `type:"list"` + + // Whether the container is given elevated privileges on the host container + // instance. The elevated privileges are similar to the root user. + Privileged *bool `type:"boolean"` + + // Whether to allocate a TTY to the container. + PseudoTerminal *bool `type:"boolean"` + + // Whether the container is given read-only access to its root file system. + ReadonlyRootFilesystem *bool `type:"boolean"` + + // The private repository authentication credentials to use. + RepositoryCredentials *AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails `type:"structure"` + + // The type and amount of a resource to assign to a container. The only supported + // resource is a GPU. + ResourceRequirements []*AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails `type:"list"` + + // The secrets to pass to the container. + Secrets []*AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails `type:"list"` + + // The number of seconds to wait before giving up on resolving dependencies + // for a container. + StartTimeout *int64 `type:"integer"` + + // The number of seconds to wait before the container is stopped if it doesn't + // shut down normally on its own. + StopTimeout *int64 `type:"integer"` + + // A list of namespaced kernel parameters to set in the container. + SystemControls []*AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails `type:"list"` + + // A list of ulimits to set in the container. + Ulimits []*AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails `type:"list"` + + // The user to use inside the container. + // + // The value can use one of the following formats. + // + // * user + // + // * user :group + // + // * uid + // + // * uid :gid + // + // * user :gid + // + // * uid :group + User *string `type:"string"` + + // Data volumes to mount from another container. + VolumesFrom []*AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails `type:"list"` + + // The working directory in which to run commands inside the container. + WorkingDirectory *string `type:"string"` +} + +// String returns the string representation +func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEcsTaskDefinitionContainerDefinitionsDetails) GoString() string { + return s.String() +} + +// SetCommand sets the Command field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCommand(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Command = v + return s +} + +// SetCpu sets the Cpu field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetCpu(v int64) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Cpu = &v + return s +} + +// SetDependsOn sets the DependsOn field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDependsOn(v []*AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DependsOn = v + return s +} + +// SetDisableNetworking sets the DisableNetworking field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDisableNetworking(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DisableNetworking = &v + return s +} + +// SetDnsSearchDomains sets the DnsSearchDomains field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsSearchDomains(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DnsSearchDomains = v + return s +} + +// SetDnsServers sets the DnsServers field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDnsServers(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DnsServers = v + return s +} + +// SetDockerLabels sets the DockerLabels field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerLabels(v map[string]*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DockerLabels = v + return s +} + +// SetDockerSecurityOptions sets the DockerSecurityOptions field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetDockerSecurityOptions(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.DockerSecurityOptions = v + return s +} + +// SetEntryPoint sets the EntryPoint field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEntryPoint(v []*string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.EntryPoint = v + return s +} + +// SetEnvironment sets the Environment field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironment(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Environment = v + return s +} + +// SetEnvironmentFiles sets the EnvironmentFiles field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEnvironmentFiles(v []*AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.EnvironmentFiles = v + return s +} + +// SetEssential sets the Essential field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetEssential(v bool) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.Essential = &v + return s +} + +// SetExtraHosts sets the ExtraHosts field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetExtraHosts(v []*AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.ExtraHosts = v + return s +} + +// SetFirelensConfiguration sets the FirelensConfiguration field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetFirelensConfiguration(v *AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.FirelensConfiguration = v + return s +} + +// SetHealthCheck sets the HealthCheck field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHealthCheck(v *AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails) *AwsEcsTaskDefinitionContainerDefinitionsDetails { + s.HealthCheck = v + return s +} + +// SetHostname sets the Hostname field's value. +func (s *AwsEcsTaskDefinitionContainerDefinitionsDetails) SetHostname(v string) *AwsEcsTaskDefinitionContainerDefinitionsDetails { s.Hostname = &v return s } @@ -16635,15 +17527,15 @@ func (s *AwsIamUserPolicy) SetPolicyName(v string) *AwsIamUserPolicy { return s } -// Contains metadata about a customer master key (CMK). +// Contains metadata about an KMS key. type AwsKmsKeyDetails struct { _ struct{} `type:"structure"` // The twelve-digit account ID of the Amazon Web Services account that owns - // the CMK. + // the KMS key. AWSAccountId *string `type:"string"` - // Indicates when the CMK was created. + // Indicates when the KMS key was created. // // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot @@ -16653,22 +17545,25 @@ type AwsKmsKeyDetails struct { // A description of the key. Description *string `type:"string"` - // The globally unique identifier for the CMK. + // The globally unique identifier for the KMS key. KeyId *string `type:"string"` - // The manager of the CMK. CMKs in your Amazon Web Services account are either - // customer managed or Amazon Web Services managed. + // The manager of the KMS key. KMS keys in your Amazon Web Services account + // are either customer managed or Amazon Web Services managed. KeyManager *string `type:"string"` - // The state of the CMK. + // Whether the key has key rotation enabled. + KeyRotationStatus *bool `type:"boolean"` + + // The state of the KMS key. KeyState *string `type:"string"` - // The source of the CMK's key material. + // The source of the KMS key material. // // When this value is AWS_KMS, KMS created the key material. // // When this value is EXTERNAL, the key material was imported from your existing - // key management infrastructure or the CMK lacks key material. + // key management infrastructure or the KMS key lacks key material. // // When this value is AWS_CLOUDHSM, the key material was created in the CloudHSM // cluster associated with a custom key store. @@ -16715,8 +17610,14 @@ func (s *AwsKmsKeyDetails) SetKeyManager(v string) *AwsKmsKeyDetails { return s } -// SetKeyState sets the KeyState field's value. -func (s *AwsKmsKeyDetails) SetKeyState(v string) *AwsKmsKeyDetails { +// SetKeyRotationStatus sets the KeyRotationStatus field's value. +func (s *AwsKmsKeyDetails) SetKeyRotationStatus(v bool) *AwsKmsKeyDetails { + s.KeyRotationStatus = &v + return s +} + +// SetKeyState sets the KeyState field's value. +func (s *AwsKmsKeyDetails) SetKeyState(v string) *AwsKmsKeyDetails { s.KeyState = &v return s } @@ -16828,7 +17729,8 @@ type AwsLambdaFunctionDetails struct { Handler *string `type:"string"` // The KMS key that is used to encrypt the function's environment variables. - // This key is only returned if you've configured a customer managed CMK. + // This key is only returned if you've configured a customer managed customer + // managed key. KmsKeyArn *string `type:"string"` // Indicates when the function was last updated. @@ -19947,1380 +20849,1826 @@ type AwsRedshiftClusterDetails struct { // For example, sun:09:32-sun:10:02 PreferredMaintenanceWindow *string `type:"string"` - // Whether the cluster can be accessed from a public network. - PubliclyAccessible *bool `type:"boolean"` + // Whether the cluster can be accessed from a public network. + PubliclyAccessible *bool `type:"boolean"` + + // Information about the resize operation for the cluster. + ResizeInfo *AwsRedshiftClusterResizeInfo `type:"structure"` + + // Information about the status of a cluster restore action. Only applies to + // a cluster that was created by restoring a snapshot. + RestoreStatus *AwsRedshiftClusterRestoreStatus `type:"structure"` + + // A unique identifier for the cluster snapshot schedule. + SnapshotScheduleIdentifier *string `type:"string"` + + // The current state of the cluster snapshot schedule. + // + // Valid values: MODIFYING | ACTIVE | FAILED + SnapshotScheduleState *string `type:"string"` + + // The identifier of the VPC that the cluster is in, if the cluster is in a + // VPC. + VpcId *string `type:"string"` + + // The list of VPC security groups that the cluster belongs to, if the cluster + // is in a VPC. + VpcSecurityGroups []*AwsRedshiftClusterVpcSecurityGroup `type:"list"` +} + +// String returns the string representation +func (s AwsRedshiftClusterDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsRedshiftClusterDetails) GoString() string { + return s.String() +} + +// SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. +func (s *AwsRedshiftClusterDetails) SetAllowVersionUpgrade(v bool) *AwsRedshiftClusterDetails { + s.AllowVersionUpgrade = &v + return s +} + +// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterDetails) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { + s.AutomatedSnapshotRetentionPeriod = &v + return s +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *AwsRedshiftClusterDetails) SetAvailabilityZone(v string) *AwsRedshiftClusterDetails { + s.AvailabilityZone = &v + return s +} + +// SetClusterAvailabilityStatus sets the ClusterAvailabilityStatus field's value. +func (s *AwsRedshiftClusterDetails) SetClusterAvailabilityStatus(v string) *AwsRedshiftClusterDetails { + s.ClusterAvailabilityStatus = &v + return s +} + +// SetClusterCreateTime sets the ClusterCreateTime field's value. +func (s *AwsRedshiftClusterDetails) SetClusterCreateTime(v string) *AwsRedshiftClusterDetails { + s.ClusterCreateTime = &v + return s +} + +// SetClusterIdentifier sets the ClusterIdentifier field's value. +func (s *AwsRedshiftClusterDetails) SetClusterIdentifier(v string) *AwsRedshiftClusterDetails { + s.ClusterIdentifier = &v + return s +} + +// SetClusterNodes sets the ClusterNodes field's value. +func (s *AwsRedshiftClusterDetails) SetClusterNodes(v []*AwsRedshiftClusterClusterNode) *AwsRedshiftClusterDetails { + s.ClusterNodes = v + return s +} + +// SetClusterParameterGroups sets the ClusterParameterGroups field's value. +func (s *AwsRedshiftClusterDetails) SetClusterParameterGroups(v []*AwsRedshiftClusterClusterParameterGroup) *AwsRedshiftClusterDetails { + s.ClusterParameterGroups = v + return s +} + +// SetClusterPublicKey sets the ClusterPublicKey field's value. +func (s *AwsRedshiftClusterDetails) SetClusterPublicKey(v string) *AwsRedshiftClusterDetails { + s.ClusterPublicKey = &v + return s +} + +// SetClusterRevisionNumber sets the ClusterRevisionNumber field's value. +func (s *AwsRedshiftClusterDetails) SetClusterRevisionNumber(v string) *AwsRedshiftClusterDetails { + s.ClusterRevisionNumber = &v + return s +} + +// SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. +func (s *AwsRedshiftClusterDetails) SetClusterSecurityGroups(v []*AwsRedshiftClusterClusterSecurityGroup) *AwsRedshiftClusterDetails { + s.ClusterSecurityGroups = v + return s +} + +// SetClusterSnapshotCopyStatus sets the ClusterSnapshotCopyStatus field's value. +func (s *AwsRedshiftClusterDetails) SetClusterSnapshotCopyStatus(v *AwsRedshiftClusterClusterSnapshotCopyStatus) *AwsRedshiftClusterDetails { + s.ClusterSnapshotCopyStatus = v + return s +} + +// SetClusterStatus sets the ClusterStatus field's value. +func (s *AwsRedshiftClusterDetails) SetClusterStatus(v string) *AwsRedshiftClusterDetails { + s.ClusterStatus = &v + return s +} + +// SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. +func (s *AwsRedshiftClusterDetails) SetClusterSubnetGroupName(v string) *AwsRedshiftClusterDetails { + s.ClusterSubnetGroupName = &v + return s +} + +// SetClusterVersion sets the ClusterVersion field's value. +func (s *AwsRedshiftClusterDetails) SetClusterVersion(v string) *AwsRedshiftClusterDetails { + s.ClusterVersion = &v + return s +} + +// SetDBName sets the DBName field's value. +func (s *AwsRedshiftClusterDetails) SetDBName(v string) *AwsRedshiftClusterDetails { + s.DBName = &v + return s +} + +// SetDeferredMaintenanceWindows sets the DeferredMaintenanceWindows field's value. +func (s *AwsRedshiftClusterDetails) SetDeferredMaintenanceWindows(v []*AwsRedshiftClusterDeferredMaintenanceWindow) *AwsRedshiftClusterDetails { + s.DeferredMaintenanceWindows = v + return s +} + +// SetElasticIpStatus sets the ElasticIpStatus field's value. +func (s *AwsRedshiftClusterDetails) SetElasticIpStatus(v *AwsRedshiftClusterElasticIpStatus) *AwsRedshiftClusterDetails { + s.ElasticIpStatus = v + return s +} + +// SetElasticResizeNumberOfNodeOptions sets the ElasticResizeNumberOfNodeOptions field's value. +func (s *AwsRedshiftClusterDetails) SetElasticResizeNumberOfNodeOptions(v string) *AwsRedshiftClusterDetails { + s.ElasticResizeNumberOfNodeOptions = &v + return s +} + +// SetEncrypted sets the Encrypted field's value. +func (s *AwsRedshiftClusterDetails) SetEncrypted(v bool) *AwsRedshiftClusterDetails { + s.Encrypted = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *AwsRedshiftClusterDetails) SetEndpoint(v *AwsRedshiftClusterEndpoint) *AwsRedshiftClusterDetails { + s.Endpoint = v + return s +} + +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *AwsRedshiftClusterDetails) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterDetails { + s.EnhancedVpcRouting = &v + return s +} + +// SetExpectedNextSnapshotScheduleTime sets the ExpectedNextSnapshotScheduleTime field's value. +func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTime(v string) *AwsRedshiftClusterDetails { + s.ExpectedNextSnapshotScheduleTime = &v + return s +} + +// SetExpectedNextSnapshotScheduleTimeStatus sets the ExpectedNextSnapshotScheduleTimeStatus field's value. +func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTimeStatus(v string) *AwsRedshiftClusterDetails { + s.ExpectedNextSnapshotScheduleTimeStatus = &v + return s +} + +// SetHsmStatus sets the HsmStatus field's value. +func (s *AwsRedshiftClusterDetails) SetHsmStatus(v *AwsRedshiftClusterHsmStatus) *AwsRedshiftClusterDetails { + s.HsmStatus = v + return s +} + +// SetIamRoles sets the IamRoles field's value. +func (s *AwsRedshiftClusterDetails) SetIamRoles(v []*AwsRedshiftClusterIamRole) *AwsRedshiftClusterDetails { + s.IamRoles = v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRedshiftClusterDetails) SetKmsKeyId(v string) *AwsRedshiftClusterDetails { + s.KmsKeyId = &v + return s +} + +// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. +func (s *AwsRedshiftClusterDetails) SetMaintenanceTrackName(v string) *AwsRedshiftClusterDetails { + s.MaintenanceTrackName = &v + return s +} + +// SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterDetails) SetManualSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { + s.ManualSnapshotRetentionPeriod = &v + return s +} + +// SetMasterUsername sets the MasterUsername field's value. +func (s *AwsRedshiftClusterDetails) SetMasterUsername(v string) *AwsRedshiftClusterDetails { + s.MasterUsername = &v + return s +} + +// SetNextMaintenanceWindowStartTime sets the NextMaintenanceWindowStartTime field's value. +func (s *AwsRedshiftClusterDetails) SetNextMaintenanceWindowStartTime(v string) *AwsRedshiftClusterDetails { + s.NextMaintenanceWindowStartTime = &v + return s +} + +// SetNodeType sets the NodeType field's value. +func (s *AwsRedshiftClusterDetails) SetNodeType(v string) *AwsRedshiftClusterDetails { + s.NodeType = &v + return s +} + +// SetNumberOfNodes sets the NumberOfNodes field's value. +func (s *AwsRedshiftClusterDetails) SetNumberOfNodes(v int64) *AwsRedshiftClusterDetails { + s.NumberOfNodes = &v + return s +} + +// SetPendingActions sets the PendingActions field's value. +func (s *AwsRedshiftClusterDetails) SetPendingActions(v []*string) *AwsRedshiftClusterDetails { + s.PendingActions = v + return s +} + +// SetPendingModifiedValues sets the PendingModifiedValues field's value. +func (s *AwsRedshiftClusterDetails) SetPendingModifiedValues(v *AwsRedshiftClusterPendingModifiedValues) *AwsRedshiftClusterDetails { + s.PendingModifiedValues = v + return s +} + +// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. +func (s *AwsRedshiftClusterDetails) SetPreferredMaintenanceWindow(v string) *AwsRedshiftClusterDetails { + s.PreferredMaintenanceWindow = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *AwsRedshiftClusterDetails) SetPubliclyAccessible(v bool) *AwsRedshiftClusterDetails { + s.PubliclyAccessible = &v + return s +} + +// SetResizeInfo sets the ResizeInfo field's value. +func (s *AwsRedshiftClusterDetails) SetResizeInfo(v *AwsRedshiftClusterResizeInfo) *AwsRedshiftClusterDetails { + s.ResizeInfo = v + return s +} + +// SetRestoreStatus sets the RestoreStatus field's value. +func (s *AwsRedshiftClusterDetails) SetRestoreStatus(v *AwsRedshiftClusterRestoreStatus) *AwsRedshiftClusterDetails { + s.RestoreStatus = v + return s +} - // Information about the resize operation for the cluster. - ResizeInfo *AwsRedshiftClusterResizeInfo `type:"structure"` +// SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. +func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleIdentifier(v string) *AwsRedshiftClusterDetails { + s.SnapshotScheduleIdentifier = &v + return s +} - // Information about the status of a cluster restore action. Only applies to - // a cluster that was created by restoring a snapshot. - RestoreStatus *AwsRedshiftClusterRestoreStatus `type:"structure"` +// SetSnapshotScheduleState sets the SnapshotScheduleState field's value. +func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleState(v string) *AwsRedshiftClusterDetails { + s.SnapshotScheduleState = &v + return s +} - // A unique identifier for the cluster snapshot schedule. - SnapshotScheduleIdentifier *string `type:"string"` +// SetVpcId sets the VpcId field's value. +func (s *AwsRedshiftClusterDetails) SetVpcId(v string) *AwsRedshiftClusterDetails { + s.VpcId = &v + return s +} - // The current state of the cluster snapshot schedule. - // - // Valid values: MODIFYING | ACTIVE | FAILED - SnapshotScheduleState *string `type:"string"` +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *AwsRedshiftClusterDetails) SetVpcSecurityGroups(v []*AwsRedshiftClusterVpcSecurityGroup) *AwsRedshiftClusterDetails { + s.VpcSecurityGroups = v + return s +} - // The identifier of the VPC that the cluster is in, if the cluster is in a - // VPC. - VpcId *string `type:"string"` +// The status of the elastic IP (EIP) address for an Amazon Redshift cluster. +type AwsRedshiftClusterElasticIpStatus struct { + _ struct{} `type:"structure"` - // The list of VPC security groups that the cluster belongs to, if the cluster - // is in a VPC. - VpcSecurityGroups []*AwsRedshiftClusterVpcSecurityGroup `type:"list"` + // The elastic IP address for the cluster. + ElasticIp *string `type:"string"` + + // The status of the elastic IP address. + Status *string `type:"string"` } // String returns the string representation -func (s AwsRedshiftClusterDetails) String() string { +func (s AwsRedshiftClusterElasticIpStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterDetails) GoString() string { +func (s AwsRedshiftClusterElasticIpStatus) GoString() string { return s.String() } -// SetAllowVersionUpgrade sets the AllowVersionUpgrade field's value. -func (s *AwsRedshiftClusterDetails) SetAllowVersionUpgrade(v bool) *AwsRedshiftClusterDetails { - s.AllowVersionUpgrade = &v +// SetElasticIp sets the ElasticIp field's value. +func (s *AwsRedshiftClusterElasticIpStatus) SetElasticIp(v string) *AwsRedshiftClusterElasticIpStatus { + s.ElasticIp = &v return s } -// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterDetails) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { - s.AutomatedSnapshotRetentionPeriod = &v +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterElasticIpStatus) SetStatus(v string) *AwsRedshiftClusterElasticIpStatus { + s.Status = &v return s } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *AwsRedshiftClusterDetails) SetAvailabilityZone(v string) *AwsRedshiftClusterDetails { - s.AvailabilityZone = &v - return s -} +// The connection endpoint for an Amazon Redshift cluster. +type AwsRedshiftClusterEndpoint struct { + _ struct{} `type:"structure"` -// SetClusterAvailabilityStatus sets the ClusterAvailabilityStatus field's value. -func (s *AwsRedshiftClusterDetails) SetClusterAvailabilityStatus(v string) *AwsRedshiftClusterDetails { - s.ClusterAvailabilityStatus = &v - return s -} + // The DNS address of the cluster. + Address *string `type:"string"` -// SetClusterCreateTime sets the ClusterCreateTime field's value. -func (s *AwsRedshiftClusterDetails) SetClusterCreateTime(v string) *AwsRedshiftClusterDetails { - s.ClusterCreateTime = &v - return s + // The port that the database engine listens on. + Port *int64 `type:"integer"` } -// SetClusterIdentifier sets the ClusterIdentifier field's value. -func (s *AwsRedshiftClusterDetails) SetClusterIdentifier(v string) *AwsRedshiftClusterDetails { - s.ClusterIdentifier = &v - return s +// String returns the string representation +func (s AwsRedshiftClusterEndpoint) String() string { + return awsutil.Prettify(s) } -// SetClusterNodes sets the ClusterNodes field's value. -func (s *AwsRedshiftClusterDetails) SetClusterNodes(v []*AwsRedshiftClusterClusterNode) *AwsRedshiftClusterDetails { - s.ClusterNodes = v - return s +// GoString returns the string representation +func (s AwsRedshiftClusterEndpoint) GoString() string { + return s.String() } -// SetClusterParameterGroups sets the ClusterParameterGroups field's value. -func (s *AwsRedshiftClusterDetails) SetClusterParameterGroups(v []*AwsRedshiftClusterClusterParameterGroup) *AwsRedshiftClusterDetails { - s.ClusterParameterGroups = v +// SetAddress sets the Address field's value. +func (s *AwsRedshiftClusterEndpoint) SetAddress(v string) *AwsRedshiftClusterEndpoint { + s.Address = &v return s } -// SetClusterPublicKey sets the ClusterPublicKey field's value. -func (s *AwsRedshiftClusterDetails) SetClusterPublicKey(v string) *AwsRedshiftClusterDetails { - s.ClusterPublicKey = &v +// SetPort sets the Port field's value. +func (s *AwsRedshiftClusterEndpoint) SetPort(v int64) *AwsRedshiftClusterEndpoint { + s.Port = &v return s } -// SetClusterRevisionNumber sets the ClusterRevisionNumber field's value. -func (s *AwsRedshiftClusterDetails) SetClusterRevisionNumber(v string) *AwsRedshiftClusterDetails { - s.ClusterRevisionNumber = &v - return s +// Information about whether an Amazon Redshift cluster finished applying any +// hardware changes to security module (HSM) settings that were specified in +// a modify cluster command. +type AwsRedshiftClusterHsmStatus struct { + _ struct{} `type:"structure"` + + // The name of the HSM client certificate that the Amazon Redshift cluster uses + // to retrieve the data encryption keys that are stored in an HSM. + HsmClientCertificateIdentifier *string `type:"string"` + + // The name of the HSM configuration that contains the information that the + // Amazon Redshift cluster can use to retrieve and store keys in an HSM. + HsmConfigurationIdentifier *string `type:"string"` + + // Indicates whether the Amazon Redshift cluster has finished applying any HSM + // settings changes specified in a modify cluster command. + // + // Type: String + // + // Valid values: active | applying + Status *string `type:"string"` } -// SetClusterSecurityGroups sets the ClusterSecurityGroups field's value. -func (s *AwsRedshiftClusterDetails) SetClusterSecurityGroups(v []*AwsRedshiftClusterClusterSecurityGroup) *AwsRedshiftClusterDetails { - s.ClusterSecurityGroups = v - return s +// String returns the string representation +func (s AwsRedshiftClusterHsmStatus) String() string { + return awsutil.Prettify(s) } -// SetClusterSnapshotCopyStatus sets the ClusterSnapshotCopyStatus field's value. -func (s *AwsRedshiftClusterDetails) SetClusterSnapshotCopyStatus(v *AwsRedshiftClusterClusterSnapshotCopyStatus) *AwsRedshiftClusterDetails { - s.ClusterSnapshotCopyStatus = v - return s +// GoString returns the string representation +func (s AwsRedshiftClusterHsmStatus) GoString() string { + return s.String() } -// SetClusterStatus sets the ClusterStatus field's value. -func (s *AwsRedshiftClusterDetails) SetClusterStatus(v string) *AwsRedshiftClusterDetails { - s.ClusterStatus = &v +// SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. +func (s *AwsRedshiftClusterHsmStatus) SetHsmClientCertificateIdentifier(v string) *AwsRedshiftClusterHsmStatus { + s.HsmClientCertificateIdentifier = &v return s } -// SetClusterSubnetGroupName sets the ClusterSubnetGroupName field's value. -func (s *AwsRedshiftClusterDetails) SetClusterSubnetGroupName(v string) *AwsRedshiftClusterDetails { - s.ClusterSubnetGroupName = &v +// SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. +func (s *AwsRedshiftClusterHsmStatus) SetHsmConfigurationIdentifier(v string) *AwsRedshiftClusterHsmStatus { + s.HsmConfigurationIdentifier = &v return s } -// SetClusterVersion sets the ClusterVersion field's value. -func (s *AwsRedshiftClusterDetails) SetClusterVersion(v string) *AwsRedshiftClusterDetails { - s.ClusterVersion = &v +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterHsmStatus) SetStatus(v string) *AwsRedshiftClusterHsmStatus { + s.Status = &v return s } -// SetDBName sets the DBName field's value. -func (s *AwsRedshiftClusterDetails) SetDBName(v string) *AwsRedshiftClusterDetails { - s.DBName = &v - return s +// An IAM role that the cluster can use to access other Amazon Web Services +// services. +type AwsRedshiftClusterIamRole struct { + _ struct{} `type:"structure"` + + // The status of the IAM role's association with the cluster. + // + // Valid values: in-sync | adding | removing + ApplyStatus *string `type:"string"` + + // The ARN of the IAM role. + IamRoleArn *string `type:"string"` } -// SetDeferredMaintenanceWindows sets the DeferredMaintenanceWindows field's value. -func (s *AwsRedshiftClusterDetails) SetDeferredMaintenanceWindows(v []*AwsRedshiftClusterDeferredMaintenanceWindow) *AwsRedshiftClusterDetails { - s.DeferredMaintenanceWindows = v - return s +// String returns the string representation +func (s AwsRedshiftClusterIamRole) String() string { + return awsutil.Prettify(s) } -// SetElasticIpStatus sets the ElasticIpStatus field's value. -func (s *AwsRedshiftClusterDetails) SetElasticIpStatus(v *AwsRedshiftClusterElasticIpStatus) *AwsRedshiftClusterDetails { - s.ElasticIpStatus = v - return s +// GoString returns the string representation +func (s AwsRedshiftClusterIamRole) GoString() string { + return s.String() } -// SetElasticResizeNumberOfNodeOptions sets the ElasticResizeNumberOfNodeOptions field's value. -func (s *AwsRedshiftClusterDetails) SetElasticResizeNumberOfNodeOptions(v string) *AwsRedshiftClusterDetails { - s.ElasticResizeNumberOfNodeOptions = &v +// SetApplyStatus sets the ApplyStatus field's value. +func (s *AwsRedshiftClusterIamRole) SetApplyStatus(v string) *AwsRedshiftClusterIamRole { + s.ApplyStatus = &v return s } -// SetEncrypted sets the Encrypted field's value. -func (s *AwsRedshiftClusterDetails) SetEncrypted(v bool) *AwsRedshiftClusterDetails { - s.Encrypted = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *AwsRedshiftClusterIamRole) SetIamRoleArn(v string) *AwsRedshiftClusterIamRole { + s.IamRoleArn = &v return s } -// SetEndpoint sets the Endpoint field's value. -func (s *AwsRedshiftClusterDetails) SetEndpoint(v *AwsRedshiftClusterEndpoint) *AwsRedshiftClusterDetails { - s.Endpoint = v - return s +// Changes to the Amazon Redshift cluster that are currently pending. +type AwsRedshiftClusterPendingModifiedValues struct { + _ struct{} `type:"structure"` + + // The pending or in-progress change to the automated snapshot retention period. + AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` + + // The pending or in-progress change to the identifier for the cluster. + ClusterIdentifier *string `type:"string"` + + // The pending or in-progress change to the cluster type. + ClusterType *string `type:"string"` + + // The pending or in-progress change to the service version. + ClusterVersion *string `type:"string"` + + // The encryption type for a cluster. + EncryptionType *string `type:"string"` + + // Indicates whether to create the cluster with enhanced VPC routing enabled. + EnhancedVpcRouting *bool `type:"boolean"` + + // The name of the maintenance track that the cluster changes to during the + // next maintenance window. + MaintenanceTrackName *string `type:"string"` + + // The pending or in-progress change to the master user password for the cluster. + MasterUserPassword *string `type:"string"` + + // The pending or in-progress change to the cluster's node type. + NodeType *string `type:"string"` + + // The pending or in-progress change to the number of nodes in the cluster. + NumberOfNodes *int64 `type:"integer"` + + // The pending or in-progress change to whether the cluster can be connected + // to from the public network. + PubliclyAccessible *bool `type:"boolean"` } -// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. -func (s *AwsRedshiftClusterDetails) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterDetails { - s.EnhancedVpcRouting = &v - return s +// String returns the string representation +func (s AwsRedshiftClusterPendingModifiedValues) String() string { + return awsutil.Prettify(s) } -// SetExpectedNextSnapshotScheduleTime sets the ExpectedNextSnapshotScheduleTime field's value. -func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTime(v string) *AwsRedshiftClusterDetails { - s.ExpectedNextSnapshotScheduleTime = &v - return s +// GoString returns the string representation +func (s AwsRedshiftClusterPendingModifiedValues) GoString() string { + return s.String() } -// SetExpectedNextSnapshotScheduleTimeStatus sets the ExpectedNextSnapshotScheduleTimeStatus field's value. -func (s *AwsRedshiftClusterDetails) SetExpectedNextSnapshotScheduleTimeStatus(v string) *AwsRedshiftClusterDetails { - s.ExpectedNextSnapshotScheduleTimeStatus = &v +// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterPendingModifiedValues { + s.AutomatedSnapshotRetentionPeriod = &v return s } -// SetHsmStatus sets the HsmStatus field's value. -func (s *AwsRedshiftClusterDetails) SetHsmStatus(v *AwsRedshiftClusterHsmStatus) *AwsRedshiftClusterDetails { - s.HsmStatus = v +// SetClusterIdentifier sets the ClusterIdentifier field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterIdentifier(v string) *AwsRedshiftClusterPendingModifiedValues { + s.ClusterIdentifier = &v return s } -// SetIamRoles sets the IamRoles field's value. -func (s *AwsRedshiftClusterDetails) SetIamRoles(v []*AwsRedshiftClusterIamRole) *AwsRedshiftClusterDetails { - s.IamRoles = v +// SetClusterType sets the ClusterType field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterType(v string) *AwsRedshiftClusterPendingModifiedValues { + s.ClusterType = &v return s } -// SetKmsKeyId sets the KmsKeyId field's value. -func (s *AwsRedshiftClusterDetails) SetKmsKeyId(v string) *AwsRedshiftClusterDetails { - s.KmsKeyId = &v +// SetClusterVersion sets the ClusterVersion field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterVersion(v string) *AwsRedshiftClusterPendingModifiedValues { + s.ClusterVersion = &v return s } -// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. -func (s *AwsRedshiftClusterDetails) SetMaintenanceTrackName(v string) *AwsRedshiftClusterDetails { - s.MaintenanceTrackName = &v +// SetEncryptionType sets the EncryptionType field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetEncryptionType(v string) *AwsRedshiftClusterPendingModifiedValues { + s.EncryptionType = &v return s } -// SetManualSnapshotRetentionPeriod sets the ManualSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterDetails) SetManualSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterDetails { - s.ManualSnapshotRetentionPeriod = &v +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterPendingModifiedValues { + s.EnhancedVpcRouting = &v return s } -// SetMasterUsername sets the MasterUsername field's value. -func (s *AwsRedshiftClusterDetails) SetMasterUsername(v string) *AwsRedshiftClusterDetails { - s.MasterUsername = &v +// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetMaintenanceTrackName(v string) *AwsRedshiftClusterPendingModifiedValues { + s.MaintenanceTrackName = &v return s } -// SetNextMaintenanceWindowStartTime sets the NextMaintenanceWindowStartTime field's value. -func (s *AwsRedshiftClusterDetails) SetNextMaintenanceWindowStartTime(v string) *AwsRedshiftClusterDetails { - s.NextMaintenanceWindowStartTime = &v +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *AwsRedshiftClusterPendingModifiedValues) SetMasterUserPassword(v string) *AwsRedshiftClusterPendingModifiedValues { + s.MasterUserPassword = &v return s } // SetNodeType sets the NodeType field's value. -func (s *AwsRedshiftClusterDetails) SetNodeType(v string) *AwsRedshiftClusterDetails { +func (s *AwsRedshiftClusterPendingModifiedValues) SetNodeType(v string) *AwsRedshiftClusterPendingModifiedValues { s.NodeType = &v return s } // SetNumberOfNodes sets the NumberOfNodes field's value. -func (s *AwsRedshiftClusterDetails) SetNumberOfNodes(v int64) *AwsRedshiftClusterDetails { +func (s *AwsRedshiftClusterPendingModifiedValues) SetNumberOfNodes(v int64) *AwsRedshiftClusterPendingModifiedValues { s.NumberOfNodes = &v return s } -// SetPendingActions sets the PendingActions field's value. -func (s *AwsRedshiftClusterDetails) SetPendingActions(v []*string) *AwsRedshiftClusterDetails { - s.PendingActions = v - return s -} - -// SetPendingModifiedValues sets the PendingModifiedValues field's value. -func (s *AwsRedshiftClusterDetails) SetPendingModifiedValues(v *AwsRedshiftClusterPendingModifiedValues) *AwsRedshiftClusterDetails { - s.PendingModifiedValues = v - return s -} - -// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. -func (s *AwsRedshiftClusterDetails) SetPreferredMaintenanceWindow(v string) *AwsRedshiftClusterDetails { - s.PreferredMaintenanceWindow = &v - return s -} - // SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *AwsRedshiftClusterDetails) SetPubliclyAccessible(v bool) *AwsRedshiftClusterDetails { +func (s *AwsRedshiftClusterPendingModifiedValues) SetPubliclyAccessible(v bool) *AwsRedshiftClusterPendingModifiedValues { s.PubliclyAccessible = &v return s } -// SetResizeInfo sets the ResizeInfo field's value. -func (s *AwsRedshiftClusterDetails) SetResizeInfo(v *AwsRedshiftClusterResizeInfo) *AwsRedshiftClusterDetails { - s.ResizeInfo = v - return s -} +// Information about the resize operation for the cluster. +type AwsRedshiftClusterResizeInfo struct { + _ struct{} `type:"structure"` -// SetRestoreStatus sets the RestoreStatus field's value. -func (s *AwsRedshiftClusterDetails) SetRestoreStatus(v *AwsRedshiftClusterRestoreStatus) *AwsRedshiftClusterDetails { - s.RestoreStatus = v - return s + // Indicates whether the resize operation can be canceled. + AllowCancelResize *bool `type:"boolean"` + + // The type of resize operation. + // + // Valid values: ClassicResize + ResizeType *string `type:"string"` } -// SetSnapshotScheduleIdentifier sets the SnapshotScheduleIdentifier field's value. -func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleIdentifier(v string) *AwsRedshiftClusterDetails { - s.SnapshotScheduleIdentifier = &v - return s +// String returns the string representation +func (s AwsRedshiftClusterResizeInfo) String() string { + return awsutil.Prettify(s) } -// SetSnapshotScheduleState sets the SnapshotScheduleState field's value. -func (s *AwsRedshiftClusterDetails) SetSnapshotScheduleState(v string) *AwsRedshiftClusterDetails { - s.SnapshotScheduleState = &v - return s +// GoString returns the string representation +func (s AwsRedshiftClusterResizeInfo) GoString() string { + return s.String() } -// SetVpcId sets the VpcId field's value. -func (s *AwsRedshiftClusterDetails) SetVpcId(v string) *AwsRedshiftClusterDetails { - s.VpcId = &v +// SetAllowCancelResize sets the AllowCancelResize field's value. +func (s *AwsRedshiftClusterResizeInfo) SetAllowCancelResize(v bool) *AwsRedshiftClusterResizeInfo { + s.AllowCancelResize = &v return s } -// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. -func (s *AwsRedshiftClusterDetails) SetVpcSecurityGroups(v []*AwsRedshiftClusterVpcSecurityGroup) *AwsRedshiftClusterDetails { - s.VpcSecurityGroups = v +// SetResizeType sets the ResizeType field's value. +func (s *AwsRedshiftClusterResizeInfo) SetResizeType(v string) *AwsRedshiftClusterResizeInfo { + s.ResizeType = &v return s } -// The status of the elastic IP (EIP) address for an Amazon Redshift cluster. -type AwsRedshiftClusterElasticIpStatus struct { +// Information about the status of a cluster restore action. It only applies +// if the cluster was created by restoring a snapshot. +type AwsRedshiftClusterRestoreStatus struct { _ struct{} `type:"structure"` - // The elastic IP address for the cluster. - ElasticIp *string `type:"string"` + // The number of megabytes per second being transferred from the backup storage. + // Returns the average rate for a completed backup. + // + // This field is only updated when you restore to DC2 and DS2 node types. + CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"` - // The status of the elastic IP address. + // The amount of time an in-progress restore has been running, or the amount + // of time it took a completed restore to finish. + // + // This field is only updated when you restore to DC2 and DS2 node types. + ElapsedTimeInSeconds *int64 `type:"long"` + + // The estimate of the time remaining before the restore is complete. Returns + // 0 for a completed restore. + // + // This field is only updated when you restore to DC2 and DS2 node types. + EstimatedTimeToCompletionInSeconds *int64 `type:"long"` + + // The number of megabytes that were transferred from snapshot storage. + // + // This field is only updated when you restore to DC2 and DS2 node types. + ProgressInMegaBytes *int64 `type:"long"` + + // The size of the set of snapshot data that was used to restore the cluster. + // + // This field is only updated when you restore to DC2 and DS2 node types. + SnapshotSizeInMegaBytes *int64 `type:"long"` + + // The status of the restore action. + // + // Valid values: starting | restoring | completed | failed Status *string `type:"string"` } // String returns the string representation -func (s AwsRedshiftClusterElasticIpStatus) String() string { +func (s AwsRedshiftClusterRestoreStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterElasticIpStatus) GoString() string { +func (s AwsRedshiftClusterRestoreStatus) GoString() string { return s.String() } -// SetElasticIp sets the ElasticIp field's value. -func (s *AwsRedshiftClusterElasticIpStatus) SetElasticIp(v string) *AwsRedshiftClusterElasticIpStatus { - s.ElasticIp = &v +// SetCurrentRestoreRateInMegaBytesPerSecond sets the CurrentRestoreRateInMegaBytesPerSecond field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetCurrentRestoreRateInMegaBytesPerSecond(v float64) *AwsRedshiftClusterRestoreStatus { + s.CurrentRestoreRateInMegaBytesPerSecond = &v + return s +} + +// SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetElapsedTimeInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { + s.ElapsedTimeInSeconds = &v + return s +} + +// SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetEstimatedTimeToCompletionInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { + s.EstimatedTimeToCompletionInSeconds = &v + return s +} + +// SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetProgressInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { + s.ProgressInMegaBytes = &v + return s +} + +// SetSnapshotSizeInMegaBytes sets the SnapshotSizeInMegaBytes field's value. +func (s *AwsRedshiftClusterRestoreStatus) SetSnapshotSizeInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { + s.SnapshotSizeInMegaBytes = &v return s } // SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterElasticIpStatus) SetStatus(v string) *AwsRedshiftClusterElasticIpStatus { +func (s *AwsRedshiftClusterRestoreStatus) SetStatus(v string) *AwsRedshiftClusterRestoreStatus { s.Status = &v return s } -// The connection endpoint for an Amazon Redshift cluster. -type AwsRedshiftClusterEndpoint struct { +// A VPC security group that the cluster belongs to, if the cluster is in a +// VPC. +type AwsRedshiftClusterVpcSecurityGroup struct { _ struct{} `type:"structure"` - // The DNS address of the cluster. - Address *string `type:"string"` + // The status of the VPC security group. + Status *string `type:"string"` - // The port that the database engine listens on. - Port *int64 `type:"integer"` + // The identifier of the VPC security group. + VpcSecurityGroupId *string `type:"string"` } // String returns the string representation -func (s AwsRedshiftClusterEndpoint) String() string { +func (s AwsRedshiftClusterVpcSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterEndpoint) GoString() string { +func (s AwsRedshiftClusterVpcSecurityGroup) GoString() string { return s.String() } -// SetAddress sets the Address field's value. -func (s *AwsRedshiftClusterEndpoint) SetAddress(v string) *AwsRedshiftClusterEndpoint { - s.Address = &v +// SetStatus sets the Status field's value. +func (s *AwsRedshiftClusterVpcSecurityGroup) SetStatus(v string) *AwsRedshiftClusterVpcSecurityGroup { + s.Status = &v return s } -// SetPort sets the Port field's value. -func (s *AwsRedshiftClusterEndpoint) SetPort(v int64) *AwsRedshiftClusterEndpoint { - s.Port = &v +// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. +func (s *AwsRedshiftClusterVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRedshiftClusterVpcSecurityGroup { + s.VpcSecurityGroupId = &v return s } -// Information about whether an Amazon Redshift cluster finished applying any -// hardware changes to security module (HSM) settings that were specified in -// a modify cluster command. -type AwsRedshiftClusterHsmStatus struct { +// provides information about the Amazon S3 Public Access Block configuration +// for accounts. +type AwsS3AccountPublicAccessBlockDetails struct { _ struct{} `type:"structure"` - // The name of the HSM client certificate that the Amazon Redshift cluster uses - // to retrieve the data encryption keys that are stored in an HSM. - HsmClientCertificateIdentifier *string `type:"string"` + // Indicates whether to reject calls to update an S3 bucket if the calls include + // a public access control list (ACL). + BlockPublicAcls *bool `type:"boolean"` + + // Indicates whether to reject calls to update the access policy for an S3 bucket + // or access point if the policy allows public access. + BlockPublicPolicy *bool `type:"boolean"` - // The name of the HSM configuration that contains the information that the - // Amazon Redshift cluster can use to retrieve and store keys in an HSM. - HsmConfigurationIdentifier *string `type:"string"` + // Indicates whether Amazon S3 ignores public ACLs that are associated with + // an S3 bucket. + IgnorePublicAcls *bool `type:"boolean"` - // Indicates whether the Amazon Redshift cluster has finished applying any HSM - // settings changes specified in a modify cluster command. - // - // Type: String - // - // Valid values: active | applying - Status *string `type:"string"` + // Indicates whether to restrict access to an access point or S3 bucket that + // has a public policy to only Amazon Web Services service principals and authorized + // users within the S3 bucket owner's account. + RestrictPublicBuckets *bool `type:"boolean"` } // String returns the string representation -func (s AwsRedshiftClusterHsmStatus) String() string { +func (s AwsS3AccountPublicAccessBlockDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterHsmStatus) GoString() string { +func (s AwsS3AccountPublicAccessBlockDetails) GoString() string { return s.String() } -// SetHsmClientCertificateIdentifier sets the HsmClientCertificateIdentifier field's value. -func (s *AwsRedshiftClusterHsmStatus) SetHsmClientCertificateIdentifier(v string) *AwsRedshiftClusterHsmStatus { - s.HsmClientCertificateIdentifier = &v +// SetBlockPublicAcls sets the BlockPublicAcls field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.BlockPublicAcls = &v return s } -// SetHsmConfigurationIdentifier sets the HsmConfigurationIdentifier field's value. -func (s *AwsRedshiftClusterHsmStatus) SetHsmConfigurationIdentifier(v string) *AwsRedshiftClusterHsmStatus { - s.HsmConfigurationIdentifier = &v +// SetBlockPublicPolicy sets the BlockPublicPolicy field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicPolicy(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.BlockPublicPolicy = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterHsmStatus) SetStatus(v string) *AwsRedshiftClusterHsmStatus { - s.Status = &v +// SetIgnorePublicAcls sets the IgnorePublicAcls field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetIgnorePublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.IgnorePublicAcls = &v return s } -// An IAM role that the cluster can use to access other Amazon Web Services -// services. -type AwsRedshiftClusterIamRole struct { - _ struct{} `type:"structure"` +// SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value. +func (s *AwsS3AccountPublicAccessBlockDetails) SetRestrictPublicBuckets(v bool) *AwsS3AccountPublicAccessBlockDetails { + s.RestrictPublicBuckets = &v + return s +} - // The status of the IAM role's association with the cluster. - // - // Valid values: in-sync | adding | removing - ApplyStatus *string `type:"string"` +// The lifecycle configuration for the objects in the S3 bucket. +type AwsS3BucketBucketLifecycleConfigurationDetails struct { + _ struct{} `type:"structure"` - // The ARN of the IAM role. - IamRoleArn *string `type:"string"` + // The lifecycle rules. + Rules []*AwsS3BucketBucketLifecycleConfigurationRulesDetails `type:"list"` } // String returns the string representation -func (s AwsRedshiftClusterIamRole) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterIamRole) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationDetails) GoString() string { return s.String() } -// SetApplyStatus sets the ApplyStatus field's value. -func (s *AwsRedshiftClusterIamRole) SetApplyStatus(v string) *AwsRedshiftClusterIamRole { - s.ApplyStatus = &v +// SetRules sets the Rules field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationDetails) SetRules(v []*AwsS3BucketBucketLifecycleConfigurationRulesDetails) *AwsS3BucketBucketLifecycleConfigurationDetails { + s.Rules = v return s } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *AwsRedshiftClusterIamRole) SetIamRoleArn(v string) *AwsRedshiftClusterIamRole { - s.IamRoleArn = &v +// Information about what Amazon S3 does when a multipart upload is incomplete. +type AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails struct { + _ struct{} `type:"structure"` + + // The number of days after which Amazon S3 cancels an incomplete multipart + // upload. + DaysAfterInitiation *int64 `type:"integer"` +} + +// String returns the string representation +func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) GoString() string { + return s.String() +} + +// SetDaysAfterInitiation sets the DaysAfterInitiation field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) SetDaysAfterInitiation(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails { + s.DaysAfterInitiation = &v return s } -// Changes to the Amazon Redshift cluster that are currently pending. -type AwsRedshiftClusterPendingModifiedValues struct { +// Configuration for a lifecycle rule. +type AwsS3BucketBucketLifecycleConfigurationRulesDetails struct { _ struct{} `type:"structure"` - // The pending or in-progress change to the automated snapshot retention period. - AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` + // How Amazon S3 responds when a multipart upload is incomplete. Specifically, + // provides a number of days before Amazon S3 cancels the entire upload. + AbortIncompleteMultipartUpload *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails `type:"structure"` - // The pending or in-progress change to the identifier for the cluster. - ClusterIdentifier *string `type:"string"` + // The date when objects are moved or deleted. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + ExpirationDate *string `type:"string"` - // The pending or in-progress change to the cluster type. - ClusterType *string `type:"string"` + // The length in days of the lifetime for objects that are subject to the rule. + ExpirationInDays *int64 `type:"integer"` - // The pending or in-progress change to the service version. - ClusterVersion *string `type:"string"` + // Whether Amazon S3 removes a delete marker that has no noncurrent versions. + // If set to true, the delete marker is expired. If set to false, the policy + // takes no action. + // + // If you provide ExpiredObjectDeleteMarker, you cannot provide ExpirationInDays + // or ExpirationDate. + ExpiredObjectDeleteMarker *bool `type:"boolean"` - // The encryption type for a cluster. - EncryptionType *string `type:"string"` + // Identifies the objects that a rule applies to. + Filter *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails `type:"structure"` - // Indicates whether to create the cluster with enhanced VPC routing enabled. - EnhancedVpcRouting *bool `type:"boolean"` + // The unique identifier of the rule. + ID *string `type:"string"` - // The name of the maintenance track that the cluster changes to during the - // next maintenance window. - MaintenanceTrackName *string `type:"string"` + // The number of days that an object is noncurrent before Amazon S3 can perform + // the associated action. + NoncurrentVersionExpirationInDays *int64 `type:"integer"` - // The pending or in-progress change to the master user password for the cluster. - MasterUserPassword *string `type:"string"` + // Transition rules that describe when noncurrent objects transition to a specified + // storage class. + NoncurrentVersionTransitions []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails `type:"list"` - // The pending or in-progress change to the cluster's node type. - NodeType *string `type:"string"` + // A prefix that identifies one or more objects that the rule applies to. + Prefix *string `type:"string"` - // The pending or in-progress change to the number of nodes in the cluster. - NumberOfNodes *int64 `type:"integer"` + // The current status of the rule. Indicates whether the rule is currently being + // applied. + Status *string `type:"string"` - // The pending or in-progress change to whether the cluster can be connected - // to from the public network. - PubliclyAccessible *bool `type:"boolean"` + // Transition rules that indicate when objects transition to a specified storage + // class. + Transitions []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails `type:"list"` } // String returns the string representation -func (s AwsRedshiftClusterPendingModifiedValues) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterPendingModifiedValues) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) GoString() string { return s.String() } -// SetAutomatedSnapshotRetentionPeriod sets the AutomatedSnapshotRetentionPeriod field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetAutomatedSnapshotRetentionPeriod(v int64) *AwsRedshiftClusterPendingModifiedValues { - s.AutomatedSnapshotRetentionPeriod = &v +// SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetAbortIncompleteMultipartUpload(v *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.AbortIncompleteMultipartUpload = v return s } -// SetClusterIdentifier sets the ClusterIdentifier field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterIdentifier(v string) *AwsRedshiftClusterPendingModifiedValues { - s.ClusterIdentifier = &v +// SetExpirationDate sets the ExpirationDate field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ExpirationDate = &v return s } -// SetClusterType sets the ClusterType field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterType(v string) *AwsRedshiftClusterPendingModifiedValues { - s.ClusterType = &v +// SetExpirationInDays sets the ExpirationInDays field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ExpirationInDays = &v return s } -// SetClusterVersion sets the ClusterVersion field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetClusterVersion(v string) *AwsRedshiftClusterPendingModifiedValues { - s.ClusterVersion = &v +// SetExpiredObjectDeleteMarker sets the ExpiredObjectDeleteMarker field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpiredObjectDeleteMarker(v bool) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ExpiredObjectDeleteMarker = &v return s } -// SetEncryptionType sets the EncryptionType field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetEncryptionType(v string) *AwsRedshiftClusterPendingModifiedValues { - s.EncryptionType = &v +// SetFilter sets the Filter field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetFilter(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Filter = v return s } -// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetEnhancedVpcRouting(v bool) *AwsRedshiftClusterPendingModifiedValues { - s.EnhancedVpcRouting = &v +// SetID sets the ID field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetID(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.ID = &v return s } -// SetMaintenanceTrackName sets the MaintenanceTrackName field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetMaintenanceTrackName(v string) *AwsRedshiftClusterPendingModifiedValues { - s.MaintenanceTrackName = &v +// SetNoncurrentVersionExpirationInDays sets the NoncurrentVersionExpirationInDays field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.NoncurrentVersionExpirationInDays = &v return s } -// SetMasterUserPassword sets the MasterUserPassword field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetMasterUserPassword(v string) *AwsRedshiftClusterPendingModifiedValues { - s.MasterUserPassword = &v +// SetNoncurrentVersionTransitions sets the NoncurrentVersionTransitions field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.NoncurrentVersionTransitions = v return s } -// SetNodeType sets the NodeType field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetNodeType(v string) *AwsRedshiftClusterPendingModifiedValues { - s.NodeType = &v +// SetPrefix sets the Prefix field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Prefix = &v return s } -// SetNumberOfNodes sets the NumberOfNodes field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetNumberOfNodes(v int64) *AwsRedshiftClusterPendingModifiedValues { - s.NumberOfNodes = &v +// SetStatus sets the Status field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetStatus(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Status = &v return s } -// SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *AwsRedshiftClusterPendingModifiedValues) SetPubliclyAccessible(v bool) *AwsRedshiftClusterPendingModifiedValues { - s.PubliclyAccessible = &v +// SetTransitions sets the Transitions field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { + s.Transitions = v return s } -// Information about the resize operation for the cluster. -type AwsRedshiftClusterResizeInfo struct { +// Identifies the objects that a rule applies to. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails struct { + _ struct{} `type:"structure"` + + // The configuration for the filter. + Predicate *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails `type:"structure"` +} + +// String returns the string representation +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) GoString() string { + return s.String() +} + +// SetPredicate sets the Predicate field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) SetPredicate(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails { + s.Predicate = v + return s +} + +// The configuration for the filter. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails struct { _ struct{} `type:"structure"` - // Indicates whether the resize operation can be canceled. - AllowCancelResize *bool `type:"boolean"` + // The values to use for the filter. + Operands []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails `type:"list"` - // The type of resize operation. - // - // Valid values: ClassicResize - ResizeType *string `type:"string"` + // A prefix filter. + Prefix *string `type:"string"` + + // A tag filter. + Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails `type:"structure"` + + // Whether to use AND or OR to join the operands. + Type *string `type:"string"` } // String returns the string representation -func (s AwsRedshiftClusterResizeInfo) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterResizeInfo) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) GoString() string { return s.String() } -// SetAllowCancelResize sets the AllowCancelResize field's value. -func (s *AwsRedshiftClusterResizeInfo) SetAllowCancelResize(v bool) *AwsRedshiftClusterResizeInfo { - s.AllowCancelResize = &v +// SetOperands sets the Operands field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetOperands(v []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Operands = v return s } -// SetResizeType sets the ResizeType field's value. -func (s *AwsRedshiftClusterResizeInfo) SetResizeType(v string) *AwsRedshiftClusterResizeInfo { - s.ResizeType = &v +// SetPrefix sets the Prefix field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Prefix = &v return s } -// Information about the status of a cluster restore action. It only applies -// if the cluster was created by restoring a snapshot. -type AwsRedshiftClusterRestoreStatus struct { - _ struct{} `type:"structure"` - - // The number of megabytes per second being transferred from the backup storage. - // Returns the average rate for a completed backup. - // - // This field is only updated when you restore to DC2 and DS2 node types. - CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"` +// SetTag sets the Tag field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Tag = v + return s +} - // The amount of time an in-progress restore has been running, or the amount - // of time it took a completed restore to finish. - // - // This field is only updated when you restore to DC2 and DS2 node types. - ElapsedTimeInSeconds *int64 `type:"long"` +// SetType sets the Type field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { + s.Type = &v + return s +} - // The estimate of the time remaining before the restore is complete. Returns - // 0 for a completed restore. - // - // This field is only updated when you restore to DC2 and DS2 node types. - EstimatedTimeToCompletionInSeconds *int64 `type:"long"` +// A value to use for the filter. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails struct { + _ struct{} `type:"structure"` - // The number of megabytes that were transferred from snapshot storage. - // - // This field is only updated when you restore to DC2 and DS2 node types. - ProgressInMegaBytes *int64 `type:"long"` + // Prefix text for matching objects. + Prefix *string `type:"string"` - // The size of the set of snapshot data that was used to restore the cluster. - // - // This field is only updated when you restore to DC2 and DS2 node types. - SnapshotSizeInMegaBytes *int64 `type:"long"` + // A tag that is assigned to matching objects. + Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails `type:"structure"` - // The status of the restore action. - // - // Valid values: starting | restoring | completed | failed - Status *string `type:"string"` + // The type of filter value. + Type *string `type:"string"` } // String returns the string representation -func (s AwsRedshiftClusterRestoreStatus) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterRestoreStatus) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) GoString() string { return s.String() } -// SetCurrentRestoreRateInMegaBytesPerSecond sets the CurrentRestoreRateInMegaBytesPerSecond field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetCurrentRestoreRateInMegaBytesPerSecond(v float64) *AwsRedshiftClusterRestoreStatus { - s.CurrentRestoreRateInMegaBytesPerSecond = &v - return s -} - -// SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetElapsedTimeInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { - s.ElapsedTimeInSeconds = &v - return s -} - -// SetEstimatedTimeToCompletionInSeconds sets the EstimatedTimeToCompletionInSeconds field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetEstimatedTimeToCompletionInSeconds(v int64) *AwsRedshiftClusterRestoreStatus { - s.EstimatedTimeToCompletionInSeconds = &v - return s -} - -// SetProgressInMegaBytes sets the ProgressInMegaBytes field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetProgressInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { - s.ProgressInMegaBytes = &v +// SetPrefix sets the Prefix field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { + s.Prefix = &v return s } -// SetSnapshotSizeInMegaBytes sets the SnapshotSizeInMegaBytes field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetSnapshotSizeInMegaBytes(v int64) *AwsRedshiftClusterRestoreStatus { - s.SnapshotSizeInMegaBytes = &v +// SetTag sets the Tag field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { + s.Tag = v return s } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterRestoreStatus) SetStatus(v string) *AwsRedshiftClusterRestoreStatus { - s.Status = &v +// SetType sets the Type field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { + s.Type = &v return s } -// A VPC security group that the cluster belongs to, if the cluster is in a -// VPC. -type AwsRedshiftClusterVpcSecurityGroup struct { +// A tag that is assigned to matching objects. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails struct { _ struct{} `type:"structure"` - // The status of the VPC security group. - Status *string `type:"string"` + // The tag key. + Key *string `type:"string"` - // The identifier of the VPC security group. - VpcSecurityGroupId *string `type:"string"` + // The tag value. + Value *string `type:"string"` } // String returns the string representation -func (s AwsRedshiftClusterVpcSecurityGroup) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsRedshiftClusterVpcSecurityGroup) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) GoString() string { return s.String() } -// SetStatus sets the Status field's value. -func (s *AwsRedshiftClusterVpcSecurityGroup) SetStatus(v string) *AwsRedshiftClusterVpcSecurityGroup { - s.Status = &v +// SetKey sets the Key field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { + s.Key = &v return s } -// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. -func (s *AwsRedshiftClusterVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRedshiftClusterVpcSecurityGroup { - s.VpcSecurityGroupId = &v +// SetValue sets the Value field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { + s.Value = &v return s } -// provides information about the Amazon S3 Public Access Block configuration -// for accounts. -type AwsS3AccountPublicAccessBlockDetails struct { +// A tag filter. +type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails struct { _ struct{} `type:"structure"` - // Indicates whether to reject calls to update an S3 bucket if the calls include - // a public access control list (ACL). - BlockPublicAcls *bool `type:"boolean"` - - // Indicates whether to reject calls to update the access policy for an S3 bucket - // or access point if the policy allows public access. - BlockPublicPolicy *bool `type:"boolean"` - - // Indicates whether Amazon S3 ignores public ACLs that are associated with - // an S3 bucket. - IgnorePublicAcls *bool `type:"boolean"` + // The tag key. + Key *string `type:"string"` - // Indicates whether to restrict access to an access point or S3 bucket that - // has a public policy to only Amazon Web Services service principals and authorized - // users within the S3 bucket owner's account. - RestrictPublicBuckets *bool `type:"boolean"` + // The tag value + Value *string `type:"string"` } // String returns the string representation -func (s AwsS3AccountPublicAccessBlockDetails) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3AccountPublicAccessBlockDetails) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) GoString() string { return s.String() } -// SetBlockPublicAcls sets the BlockPublicAcls field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.BlockPublicAcls = &v - return s -} - -// SetBlockPublicPolicy sets the BlockPublicPolicy field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetBlockPublicPolicy(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.BlockPublicPolicy = &v - return s -} - -// SetIgnorePublicAcls sets the IgnorePublicAcls field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetIgnorePublicAcls(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.IgnorePublicAcls = &v +// SetKey sets the Key field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { + s.Key = &v return s } -// SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value. -func (s *AwsS3AccountPublicAccessBlockDetails) SetRestrictPublicBuckets(v bool) *AwsS3AccountPublicAccessBlockDetails { - s.RestrictPublicBuckets = &v +// SetValue sets the Value field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { + s.Value = &v return s } -// The lifecycle configuration for the objects in the S3 bucket. -type AwsS3BucketBucketLifecycleConfigurationDetails struct { +// A transition rule that describes when noncurrent objects transition to a +// specified storage class. +type AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails struct { _ struct{} `type:"structure"` - // The lifecycle rules. - Rules []*AwsS3BucketBucketLifecycleConfigurationRulesDetails `type:"list"` + // The number of days that an object is noncurrent before Amazon S3 can perform + // the associated action. + Days *int64 `type:"integer"` + + // The class of storage to change the object to after the object is noncurrent + // for the specified number of days. + StorageClass *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationDetails) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationDetails) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) GoString() string { return s.String() } -// SetRules sets the Rules field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationDetails) SetRules(v []*AwsS3BucketBucketLifecycleConfigurationRulesDetails) *AwsS3BucketBucketLifecycleConfigurationDetails { - s.Rules = v +// SetDays sets the Days field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { + s.Days = &v return s } -// Information about what Amazon S3 does when a multipart upload is incomplete. -type AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails struct { +// SetStorageClass sets the StorageClass field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { + s.StorageClass = &v + return s +} + +// A rule for when objects transition to specific storage classes. +type AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails struct { _ struct{} `type:"structure"` - // The number of days after which Amazon S3 cancels an incomplete multipart - // upload. - DaysAfterInitiation *int64 `type:"integer"` + // A date on which to transition objects to the specified storage class. If + // you provide Date, you cannot provide Days. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + Date *string `type:"string"` + + // The number of days after which to transition the object to the specified + // storage class. If you provide Days, you cannot provide Date. + Days *int64 `type:"integer"` + + // The storage class to transition the object to. + StorageClass *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) String() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) GoString() string { +func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) GoString() string { return s.String() } -// SetDaysAfterInitiation sets the DaysAfterInitiation field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) SetDaysAfterInitiation(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails { - s.DaysAfterInitiation = &v +// SetDate sets the Date field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { + s.Date = &v return s } -// Configuration for a lifecycle rule. -type AwsS3BucketBucketLifecycleConfigurationRulesDetails struct { - _ struct{} `type:"structure"` +// SetDays sets the Days field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { + s.Days = &v + return s +} - // How Amazon S3 responds when a multipart upload is incomplete. Specifically, - // provides a number of days before Amazon S3 cancels the entire upload. - AbortIncompleteMultipartUpload *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails `type:"structure"` +// SetStorageClass sets the StorageClass field's value. +func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { + s.StorageClass = &v + return s +} - // The date when objects are moved or deleted. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - ExpirationDate *string `type:"string"` +// The details of an Amazon S3 bucket. +type AwsS3BucketDetails struct { + _ struct{} `type:"structure"` - // The length in days of the lifetime for objects that are subject to the rule. - ExpirationInDays *int64 `type:"integer"` + // The access control list for the S3 bucket. + AccessControlList *string `type:"string"` - // Whether Amazon S3 removes a delete marker that has no noncurrent versions. - // If set to true, the delete marker is expired. If set to false, the policy - // takes no action. - // - // If you provide ExpiredObjectDeleteMarker, you cannot provide ExpirationInDays - // or ExpirationDate. - ExpiredObjectDeleteMarker *bool `type:"boolean"` + // The lifecycle configuration for objects in the S3 bucket. + BucketLifecycleConfiguration *AwsS3BucketBucketLifecycleConfigurationDetails `type:"structure"` - // Identifies the objects that a rule applies to. - Filter *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails `type:"structure"` + // The logging configuration for the S3 bucket. + BucketLoggingConfiguration *AwsS3BucketLoggingConfiguration `type:"structure"` - // The unique identifier of the rule. - ID *string `type:"string"` + // The notification configuration for the S3 bucket. + BucketNotificationConfiguration *AwsS3BucketNotificationConfiguration `type:"structure"` - // The number of days that an object is noncurrent before Amazon S3 can perform - // the associated action. - NoncurrentVersionExpirationInDays *int64 `type:"integer"` + // The website configuration parameters for the S3 bucket. + BucketWebsiteConfiguration *AwsS3BucketWebsiteConfiguration `type:"structure"` - // Transition rules that describe when noncurrent objects transition to a specified - // storage class. - NoncurrentVersionTransitions []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails `type:"list"` + // Indicates when the S3 bucket was created. + // + // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time + // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot + // contain spaces. For example, 2020-03-22T13:22:13.933Z. + CreatedAt *string `type:"string"` - // A prefix that identifies one or more objects that the rule applies to. - Prefix *string `type:"string"` + // The canonical user ID of the owner of the S3 bucket. + OwnerId *string `type:"string"` - // The current status of the rule. Indicates whether the rule is currently being - // applied. - Status *string `type:"string"` + // The display name of the owner of the S3 bucket. + OwnerName *string `type:"string"` - // Transition rules that indicate when objects transition to a specified storage - // class. - Transitions []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails `type:"list"` + // Provides information about the Amazon S3 Public Access Block configuration + // for the S3 bucket. + PublicAccessBlockConfiguration *AwsS3AccountPublicAccessBlockDetails `type:"structure"` + + // The encryption rules that are applied to the S3 bucket. + ServerSideEncryptionConfiguration *AwsS3BucketServerSideEncryptionConfiguration `type:"structure"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) String() string { +func (s AwsS3BucketDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesDetails) GoString() string { +func (s AwsS3BucketDetails) GoString() string { return s.String() } -// SetAbortIncompleteMultipartUpload sets the AbortIncompleteMultipartUpload field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetAbortIncompleteMultipartUpload(v *AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.AbortIncompleteMultipartUpload = v +// SetAccessControlList sets the AccessControlList field's value. +func (s *AwsS3BucketDetails) SetAccessControlList(v string) *AwsS3BucketDetails { + s.AccessControlList = &v return s } -// SetExpirationDate sets the ExpirationDate field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ExpirationDate = &v +// SetBucketLifecycleConfiguration sets the BucketLifecycleConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketLifecycleConfiguration(v *AwsS3BucketBucketLifecycleConfigurationDetails) *AwsS3BucketDetails { + s.BucketLifecycleConfiguration = v return s } -// SetExpirationInDays sets the ExpirationInDays field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ExpirationInDays = &v +// SetBucketLoggingConfiguration sets the BucketLoggingConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketLoggingConfiguration(v *AwsS3BucketLoggingConfiguration) *AwsS3BucketDetails { + s.BucketLoggingConfiguration = v return s } -// SetExpiredObjectDeleteMarker sets the ExpiredObjectDeleteMarker field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetExpiredObjectDeleteMarker(v bool) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ExpiredObjectDeleteMarker = &v +// SetBucketNotificationConfiguration sets the BucketNotificationConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketNotificationConfiguration(v *AwsS3BucketNotificationConfiguration) *AwsS3BucketDetails { + s.BucketNotificationConfiguration = v return s } -// SetFilter sets the Filter field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetFilter(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Filter = v +// SetBucketWebsiteConfiguration sets the BucketWebsiteConfiguration field's value. +func (s *AwsS3BucketDetails) SetBucketWebsiteConfiguration(v *AwsS3BucketWebsiteConfiguration) *AwsS3BucketDetails { + s.BucketWebsiteConfiguration = v return s } -// SetID sets the ID field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetID(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.ID = &v +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsS3BucketDetails) SetCreatedAt(v string) *AwsS3BucketDetails { + s.CreatedAt = &v return s } -// SetNoncurrentVersionExpirationInDays sets the NoncurrentVersionExpirationInDays field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionExpirationInDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.NoncurrentVersionExpirationInDays = &v +// SetOwnerId sets the OwnerId field's value. +func (s *AwsS3BucketDetails) SetOwnerId(v string) *AwsS3BucketDetails { + s.OwnerId = &v return s } -// SetNoncurrentVersionTransitions sets the NoncurrentVersionTransitions field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetNoncurrentVersionTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.NoncurrentVersionTransitions = v +// SetOwnerName sets the OwnerName field's value. +func (s *AwsS3BucketDetails) SetOwnerName(v string) *AwsS3BucketDetails { + s.OwnerName = &v return s } -// SetPrefix sets the Prefix field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Prefix = &v +// SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. +func (s *AwsS3BucketDetails) SetPublicAccessBlockConfiguration(v *AwsS3AccountPublicAccessBlockDetails) *AwsS3BucketDetails { + s.PublicAccessBlockConfiguration = v return s } -// SetStatus sets the Status field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetStatus(v string) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Status = &v +// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. +func (s *AwsS3BucketDetails) SetServerSideEncryptionConfiguration(v *AwsS3BucketServerSideEncryptionConfiguration) *AwsS3BucketDetails { + s.ServerSideEncryptionConfiguration = v return s } -// SetTransitions sets the Transitions field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesDetails) SetTransitions(v []*AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesDetails { - s.Transitions = v +// Information about logging for the S3 bucket +type AwsS3BucketLoggingConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the S3 bucket where log files for the S3 bucket are stored. + DestinationBucketName *string `type:"string"` + + // The prefix added to log files for the S3 bucket. + LogFilePrefix *string `type:"string"` +} + +// String returns the string representation +func (s AwsS3BucketLoggingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsS3BucketLoggingConfiguration) GoString() string { + return s.String() +} + +// SetDestinationBucketName sets the DestinationBucketName field's value. +func (s *AwsS3BucketLoggingConfiguration) SetDestinationBucketName(v string) *AwsS3BucketLoggingConfiguration { + s.DestinationBucketName = &v return s } -// Identifies the objects that a rule applies to. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails struct { +// SetLogFilePrefix sets the LogFilePrefix field's value. +func (s *AwsS3BucketLoggingConfiguration) SetLogFilePrefix(v string) *AwsS3BucketLoggingConfiguration { + s.LogFilePrefix = &v + return s +} + +// The notification configuration for the S3 bucket. +type AwsS3BucketNotificationConfiguration struct { _ struct{} `type:"structure"` - // The configuration for the filter. - Predicate *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails `type:"structure"` + // Configurations for S3 bucket notifications. + Configurations []*AwsS3BucketNotificationConfigurationDetail `type:"list"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) String() string { +func (s AwsS3BucketNotificationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) GoString() string { +func (s AwsS3BucketNotificationConfiguration) GoString() string { return s.String() } -// SetPredicate sets the Predicate field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails) SetPredicate(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails { - s.Predicate = v +// SetConfigurations sets the Configurations field's value. +func (s *AwsS3BucketNotificationConfiguration) SetConfigurations(v []*AwsS3BucketNotificationConfigurationDetail) *AwsS3BucketNotificationConfiguration { + s.Configurations = v return s } -// The configuration for the filter. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails struct { +// Details for an S3 bucket notification configuration. +type AwsS3BucketNotificationConfigurationDetail struct { _ struct{} `type:"structure"` - // The values to use for the filter. - Operands []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails `type:"list"` + // The ARN of the Lambda function, Amazon SQS queue, or Amazon SNS topic that + // generates the notification. + Destination *string `type:"string"` - // A prefix filter. - Prefix *string `type:"string"` + // The list of events that trigger a notification. + Events []*string `type:"list"` - // A tag filter. - Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails `type:"structure"` + // The filters that determine which S3 buckets generate notifications. + Filter *AwsS3BucketNotificationConfigurationFilter `type:"structure"` - // Whether to use AND or OR to join the operands. + // Indicates the type of notification. Notifications can be generated using + // Lambda functions, Amazon SQS queues or Amazon SNS topics. Type *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) String() string { +func (s AwsS3BucketNotificationConfigurationDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) GoString() string { +func (s AwsS3BucketNotificationConfigurationDetail) GoString() string { return s.String() } -// SetOperands sets the Operands field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetOperands(v []*AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Operands = v +// SetDestination sets the Destination field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetDestination(v string) *AwsS3BucketNotificationConfigurationDetail { + s.Destination = &v return s } -// SetPrefix sets the Prefix field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Prefix = &v +// SetEvents sets the Events field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetEvents(v []*string) *AwsS3BucketNotificationConfigurationDetail { + s.Events = v return s } -// SetTag sets the Tag field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { - s.Tag = v +// SetFilter sets the Filter field's value. +func (s *AwsS3BucketNotificationConfigurationDetail) SetFilter(v *AwsS3BucketNotificationConfigurationFilter) *AwsS3BucketNotificationConfigurationDetail { + s.Filter = v return s } // SetType sets the Type field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetails { +func (s *AwsS3BucketNotificationConfigurationDetail) SetType(v string) *AwsS3BucketNotificationConfigurationDetail { s.Type = &v return s } -// A value to use for the filter. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails struct { +// Filtering information for the notifications. The filtering is based on Amazon +// S3 key names. +type AwsS3BucketNotificationConfigurationFilter struct { _ struct{} `type:"structure"` - // Prefix text for matching objects. - Prefix *string `type:"string"` - - // A tag that is assigned to matching objects. - Tag *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails `type:"structure"` - - // The type of filter value. - Type *string `type:"string"` + // Details for an Amazon S3 filter. + S3KeyFilter *AwsS3BucketNotificationConfigurationS3KeyFilter `type:"structure"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) String() string { +func (s AwsS3BucketNotificationConfigurationFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) GoString() string { +func (s AwsS3BucketNotificationConfigurationFilter) GoString() string { return s.String() } -// SetPrefix sets the Prefix field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetPrefix(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { - s.Prefix = &v +// SetS3KeyFilter sets the S3KeyFilter field's value. +func (s *AwsS3BucketNotificationConfigurationFilter) SetS3KeyFilter(v *AwsS3BucketNotificationConfigurationS3KeyFilter) *AwsS3BucketNotificationConfigurationFilter { + s.S3KeyFilter = v return s } -// SetTag sets the Tag field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetTag(v *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { - s.Tag = v - return s +// Details for an Amazon S3 filter. +type AwsS3BucketNotificationConfigurationS3KeyFilter struct { + _ struct{} `type:"structure"` + + // The filter rules for the filter. + FilterRules []*AwsS3BucketNotificationConfigurationS3KeyFilterRule `type:"list"` } -// SetType sets the Type field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails) SetType(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetails { - s.Type = &v +// String returns the string representation +func (s AwsS3BucketNotificationConfigurationS3KeyFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsS3BucketNotificationConfigurationS3KeyFilter) GoString() string { + return s.String() +} + +// SetFilterRules sets the FilterRules field's value. +func (s *AwsS3BucketNotificationConfigurationS3KeyFilter) SetFilterRules(v []*AwsS3BucketNotificationConfigurationS3KeyFilterRule) *AwsS3BucketNotificationConfigurationS3KeyFilter { + s.FilterRules = v return s } -// A tag that is assigned to matching objects. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails struct { +// Details for a filter rule. +type AwsS3BucketNotificationConfigurationS3KeyFilterRule struct { _ struct{} `type:"structure"` - // The tag key. - Key *string `type:"string"` + // Indicates whether the filter is based on the prefix or suffix of the Amazon + // S3 key. + Name *string `type:"string" enum:"AwsS3BucketNotificationConfigurationS3KeyFilterRuleName"` - // The tag value. + // The filter value. Value *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) String() string { +func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) GoString() string { +func (s AwsS3BucketNotificationConfigurationS3KeyFilterRule) GoString() string { return s.String() } -// SetKey sets the Key field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { - s.Key = &v +// SetName sets the Name field's value. +func (s *AwsS3BucketNotificationConfigurationS3KeyFilterRule) SetName(v string) *AwsS3BucketNotificationConfigurationS3KeyFilterRule { + s.Name = &v return s } // SetValue sets the Value field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetails { +func (s *AwsS3BucketNotificationConfigurationS3KeyFilterRule) SetValue(v string) *AwsS3BucketNotificationConfigurationS3KeyFilterRule { s.Value = &v return s } -// A tag filter. -type AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails struct { +// Specifies the default server-side encryption to apply to new objects in the +// bucket. +type AwsS3BucketServerSideEncryptionByDefault struct { + _ struct{} `type:"structure"` + + // KMS key ID to use for the default encryption. + KMSMasterKeyID *string `type:"string"` + + // Server-side encryption algorithm to use for the default encryption. + SSEAlgorithm *string `type:"string"` +} + +// String returns the string representation +func (s AwsS3BucketServerSideEncryptionByDefault) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsS3BucketServerSideEncryptionByDefault) GoString() string { + return s.String() +} + +// SetKMSMasterKeyID sets the KMSMasterKeyID field's value. +func (s *AwsS3BucketServerSideEncryptionByDefault) SetKMSMasterKeyID(v string) *AwsS3BucketServerSideEncryptionByDefault { + s.KMSMasterKeyID = &v + return s +} + +// SetSSEAlgorithm sets the SSEAlgorithm field's value. +func (s *AwsS3BucketServerSideEncryptionByDefault) SetSSEAlgorithm(v string) *AwsS3BucketServerSideEncryptionByDefault { + s.SSEAlgorithm = &v + return s +} + +// The encryption configuration for the S3 bucket. +type AwsS3BucketServerSideEncryptionConfiguration struct { _ struct{} `type:"structure"` - // The tag key. - Key *string `type:"string"` - - // The tag value - Value *string `type:"string"` + // The encryption rules that are applied to the S3 bucket. + Rules []*AwsS3BucketServerSideEncryptionRule `type:"list"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) String() string { +func (s AwsS3BucketServerSideEncryptionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) GoString() string { +func (s AwsS3BucketServerSideEncryptionConfiguration) GoString() string { return s.String() } -// SetKey sets the Key field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetKey(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { - s.Key = &v - return s -} - -// SetValue sets the Value field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails) SetValue(v string) *AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetails { - s.Value = &v +// SetRules sets the Rules field's value. +func (s *AwsS3BucketServerSideEncryptionConfiguration) SetRules(v []*AwsS3BucketServerSideEncryptionRule) *AwsS3BucketServerSideEncryptionConfiguration { + s.Rules = v return s } -// A transition rule that describes when noncurrent objects transition to a -// specified storage class. -type AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails struct { +// An encryption rule to apply to the S3 bucket. +type AwsS3BucketServerSideEncryptionRule struct { _ struct{} `type:"structure"` - // The number of days that an object is noncurrent before Amazon S3 can perform - // the associated action. - Days *int64 `type:"integer"` - - // The class of storage to change the object to after the object is noncurrent - // for the specified number of days. - StorageClass *string `type:"string"` + // Specifies the default server-side encryption to apply to new objects in the + // bucket. If a PUT object request doesn't specify any server-side encryption, + // this default encryption is applied. + ApplyServerSideEncryptionByDefault *AwsS3BucketServerSideEncryptionByDefault `type:"structure"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) String() string { +func (s AwsS3BucketServerSideEncryptionRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) GoString() string { +func (s AwsS3BucketServerSideEncryptionRule) GoString() string { return s.String() } -// SetDays sets the Days field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { - s.Days = &v - return s -} - -// SetStorageClass sets the StorageClass field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetails { - s.StorageClass = &v +// SetApplyServerSideEncryptionByDefault sets the ApplyServerSideEncryptionByDefault field's value. +func (s *AwsS3BucketServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *AwsS3BucketServerSideEncryptionByDefault) *AwsS3BucketServerSideEncryptionRule { + s.ApplyServerSideEncryptionByDefault = v return s } -// A rule for when objects transition to specific storage classes. -type AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails struct { +// Website parameters for the S3 bucket. +type AwsS3BucketWebsiteConfiguration struct { _ struct{} `type:"structure"` - // A date on which to transition objects to the specified storage class. If - // you provide Date, you cannot provide Days. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - Date *string `type:"string"` + // The name of the error document for the website. + ErrorDocument *string `type:"string"` - // The number of days after which to transition the object to the specified - // storage class. If you provide Days, you cannot provide Date. - Days *int64 `type:"integer"` + // The name of the index document for the website. + IndexDocumentSuffix *string `type:"string"` - // The storage class to transition the object to. - StorageClass *string `type:"string"` + // The redirect behavior for requests to the website. + RedirectAllRequestsTo *AwsS3BucketWebsiteConfigurationRedirectTo `type:"structure"` + + // The rules for applying redirects for requests to the website. + RoutingRules []*AwsS3BucketWebsiteConfigurationRoutingRule `type:"list"` } // String returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) String() string { +func (s AwsS3BucketWebsiteConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) GoString() string { +func (s AwsS3BucketWebsiteConfiguration) GoString() string { return s.String() } -// SetDate sets the Date field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDate(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { - s.Date = &v +// SetErrorDocument sets the ErrorDocument field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetErrorDocument(v string) *AwsS3BucketWebsiteConfiguration { + s.ErrorDocument = &v return s } -// SetDays sets the Days field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetDays(v int64) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { - s.Days = &v +// SetIndexDocumentSuffix sets the IndexDocumentSuffix field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetIndexDocumentSuffix(v string) *AwsS3BucketWebsiteConfiguration { + s.IndexDocumentSuffix = &v return s } -// SetStorageClass sets the StorageClass field's value. -func (s *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails) SetStorageClass(v string) *AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetails { - s.StorageClass = &v +// SetRedirectAllRequestsTo sets the RedirectAllRequestsTo field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetRedirectAllRequestsTo(v *AwsS3BucketWebsiteConfigurationRedirectTo) *AwsS3BucketWebsiteConfiguration { + s.RedirectAllRequestsTo = v return s } -// The details of an Amazon S3 bucket. -type AwsS3BucketDetails struct { - _ struct{} `type:"structure"` - - // The lifecycle configuration for objects in the S3 bucket. - BucketLifecycleConfiguration *AwsS3BucketBucketLifecycleConfigurationDetails `type:"structure"` - - // Indicates when the S3 bucket was created. - // - // Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time - // Format (https://tools.ietf.org/html/rfc3339#section-5.6). The value cannot - // contain spaces. For example, 2020-03-22T13:22:13.933Z. - CreatedAt *string `type:"string"` - - // The canonical user ID of the owner of the S3 bucket. - OwnerId *string `type:"string"` +// SetRoutingRules sets the RoutingRules field's value. +func (s *AwsS3BucketWebsiteConfiguration) SetRoutingRules(v []*AwsS3BucketWebsiteConfigurationRoutingRule) *AwsS3BucketWebsiteConfiguration { + s.RoutingRules = v + return s +} - // The display name of the owner of the S3 bucket. - OwnerName *string `type:"string"` +// The redirect behavior for requests to the website. +type AwsS3BucketWebsiteConfigurationRedirectTo struct { + _ struct{} `type:"structure"` - // Provides information about the Amazon S3 Public Access Block configuration - // for the S3 bucket. - PublicAccessBlockConfiguration *AwsS3AccountPublicAccessBlockDetails `type:"structure"` + // The name of the host to redirect requests to. + Hostname *string `type:"string"` - // The encryption rules that are applied to the S3 bucket. - ServerSideEncryptionConfiguration *AwsS3BucketServerSideEncryptionConfiguration `type:"structure"` + // The protocol to use when redirecting requests. By default, uses the same + // protocol as the original request. + Protocol *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketDetails) String() string { +func (s AwsS3BucketWebsiteConfigurationRedirectTo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketDetails) GoString() string { +func (s AwsS3BucketWebsiteConfigurationRedirectTo) GoString() string { return s.String() } -// SetBucketLifecycleConfiguration sets the BucketLifecycleConfiguration field's value. -func (s *AwsS3BucketDetails) SetBucketLifecycleConfiguration(v *AwsS3BucketBucketLifecycleConfigurationDetails) *AwsS3BucketDetails { - s.BucketLifecycleConfiguration = v +// SetHostname sets the Hostname field's value. +func (s *AwsS3BucketWebsiteConfigurationRedirectTo) SetHostname(v string) *AwsS3BucketWebsiteConfigurationRedirectTo { + s.Hostname = &v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsS3BucketDetails) SetCreatedAt(v string) *AwsS3BucketDetails { - s.CreatedAt = &v +// SetProtocol sets the Protocol field's value. +func (s *AwsS3BucketWebsiteConfigurationRedirectTo) SetProtocol(v string) *AwsS3BucketWebsiteConfigurationRedirectTo { + s.Protocol = &v return s } -// SetOwnerId sets the OwnerId field's value. -func (s *AwsS3BucketDetails) SetOwnerId(v string) *AwsS3BucketDetails { - s.OwnerId = &v - return s +// A rule for redirecting requests to the website. +type AwsS3BucketWebsiteConfigurationRoutingRule struct { + _ struct{} `type:"structure"` + + // Provides the condition that must be met in order to apply the routing rule. + Condition *AwsS3BucketWebsiteConfigurationRoutingRuleCondition `type:"structure"` + + // Provides the rules to redirect the request if the condition in Condition + // is met. + Redirect *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect `type:"structure"` } -// SetOwnerName sets the OwnerName field's value. -func (s *AwsS3BucketDetails) SetOwnerName(v string) *AwsS3BucketDetails { - s.OwnerName = &v - return s +// String returns the string representation +func (s AwsS3BucketWebsiteConfigurationRoutingRule) String() string { + return awsutil.Prettify(s) } -// SetPublicAccessBlockConfiguration sets the PublicAccessBlockConfiguration field's value. -func (s *AwsS3BucketDetails) SetPublicAccessBlockConfiguration(v *AwsS3AccountPublicAccessBlockDetails) *AwsS3BucketDetails { - s.PublicAccessBlockConfiguration = v +// GoString returns the string representation +func (s AwsS3BucketWebsiteConfigurationRoutingRule) GoString() string { + return s.String() +} + +// SetCondition sets the Condition field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRule) SetCondition(v *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) *AwsS3BucketWebsiteConfigurationRoutingRule { + s.Condition = v return s } -// SetServerSideEncryptionConfiguration sets the ServerSideEncryptionConfiguration field's value. -func (s *AwsS3BucketDetails) SetServerSideEncryptionConfiguration(v *AwsS3BucketServerSideEncryptionConfiguration) *AwsS3BucketDetails { - s.ServerSideEncryptionConfiguration = v +// SetRedirect sets the Redirect field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRule) SetRedirect(v *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) *AwsS3BucketWebsiteConfigurationRoutingRule { + s.Redirect = v return s } -// Specifies the default server-side encryption to apply to new objects in the -// bucket. -type AwsS3BucketServerSideEncryptionByDefault struct { +// The condition that must be met in order to apply the routing rule. +type AwsS3BucketWebsiteConfigurationRoutingRuleCondition struct { _ struct{} `type:"structure"` - // KMS customer master key (CMK) ID to use for the default encryption. - KMSMasterKeyID *string `type:"string"` + // Indicates to redirect the request if the HTTP error code matches this value. + HttpErrorCodeReturnedEquals *string `type:"string"` - // Server-side encryption algorithm to use for the default encryption. - SSEAlgorithm *string `type:"string"` + // Indicates to redirect the request if the key prefix matches this value. + KeyPrefixEquals *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketServerSideEncryptionByDefault) String() string { +func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketServerSideEncryptionByDefault) GoString() string { +func (s AwsS3BucketWebsiteConfigurationRoutingRuleCondition) GoString() string { return s.String() } -// SetKMSMasterKeyID sets the KMSMasterKeyID field's value. -func (s *AwsS3BucketServerSideEncryptionByDefault) SetKMSMasterKeyID(v string) *AwsS3BucketServerSideEncryptionByDefault { - s.KMSMasterKeyID = &v +// SetHttpErrorCodeReturnedEquals sets the HttpErrorCodeReturnedEquals field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) SetHttpErrorCodeReturnedEquals(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleCondition { + s.HttpErrorCodeReturnedEquals = &v return s } -// SetSSEAlgorithm sets the SSEAlgorithm field's value. -func (s *AwsS3BucketServerSideEncryptionByDefault) SetSSEAlgorithm(v string) *AwsS3BucketServerSideEncryptionByDefault { - s.SSEAlgorithm = &v +// SetKeyPrefixEquals sets the KeyPrefixEquals field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleCondition) SetKeyPrefixEquals(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleCondition { + s.KeyPrefixEquals = &v return s } -// The encryption configuration for the S3 bucket. -type AwsS3BucketServerSideEncryptionConfiguration struct { +// The rules to redirect the request if the condition in Condition is met. +type AwsS3BucketWebsiteConfigurationRoutingRuleRedirect struct { _ struct{} `type:"structure"` - // The encryption rules that are applied to the S3 bucket. - Rules []*AwsS3BucketServerSideEncryptionRule `type:"list"` + // The host name to use in the redirect request. + Hostname *string `type:"string"` + + // The HTTP redirect code to use in the response. + HttpRedirectCode *string `type:"string"` + + // The protocol to use to redirect the request. By default, uses the protocol + // from the original request. + Protocol *string `type:"string"` + + // The object key prefix to use in the redirect request. + // + // Cannot be provided if ReplaceKeyWith is present. + ReplaceKeyPrefixWith *string `type:"string"` + + // The specific object key to use in the redirect request. + // + // Cannot be provided if ReplaceKeyPrefixWith is present. + ReplaceKeyWith *string `type:"string"` } // String returns the string representation -func (s AwsS3BucketServerSideEncryptionConfiguration) String() string { +func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsS3BucketServerSideEncryptionConfiguration) GoString() string { +func (s AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) GoString() string { return s.String() } -// SetRules sets the Rules field's value. -func (s *AwsS3BucketServerSideEncryptionConfiguration) SetRules(v []*AwsS3BucketServerSideEncryptionRule) *AwsS3BucketServerSideEncryptionConfiguration { - s.Rules = v +// SetHostname sets the Hostname field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetHostname(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.Hostname = &v return s } -// An encryption rule to apply to the S3 bucket. -type AwsS3BucketServerSideEncryptionRule struct { - _ struct{} `type:"structure"` - - // Specifies the default server-side encryption to apply to new objects in the - // bucket. If a PUT object request doesn't specify any server-side encryption, - // this default encryption is applied. - ApplyServerSideEncryptionByDefault *AwsS3BucketServerSideEncryptionByDefault `type:"structure"` +// SetHttpRedirectCode sets the HttpRedirectCode field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetHttpRedirectCode(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.HttpRedirectCode = &v + return s } -// String returns the string representation -func (s AwsS3BucketServerSideEncryptionRule) String() string { - return awsutil.Prettify(s) +// SetProtocol sets the Protocol field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetProtocol(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.Protocol = &v + return s } -// GoString returns the string representation -func (s AwsS3BucketServerSideEncryptionRule) GoString() string { - return s.String() +// SetReplaceKeyPrefixWith sets the ReplaceKeyPrefixWith field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetReplaceKeyPrefixWith(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.ReplaceKeyPrefixWith = &v + return s } -// SetApplyServerSideEncryptionByDefault sets the ApplyServerSideEncryptionByDefault field's value. -func (s *AwsS3BucketServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *AwsS3BucketServerSideEncryptionByDefault) *AwsS3BucketServerSideEncryptionRule { - s.ApplyServerSideEncryptionByDefault = v +// SetReplaceKeyWith sets the ReplaceKeyWith field's value. +func (s *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect) SetReplaceKeyWith(v string) *AwsS3BucketWebsiteConfigurationRoutingRuleRedirect { + s.ReplaceKeyWith = &v return s } @@ -21342,8 +22690,8 @@ type AwsS3ObjectDetails struct { // contain spaces. For example, 2020-03-22T13:22:13.933Z. LastModified *string `type:"string"` - // The identifier of the KMS symmetric customer managed customer master key - // (CMK) that was used for the object. + // The identifier of the KMS symmetric customer managed key that was used for + // the object. SSEKMSKeyId *string `type:"string"` // If the object is stored using server-side encryption, the value of the server-side @@ -21410,8 +22758,8 @@ type AwsSecretsManagerSecretDetails struct { // The user-provided description of the secret. Description *string `type:"string"` - // The ARN, Key ID, or alias of the KMS customer master key (CMK) used to encrypt - // the SecretString or SecretBinary values for versions of this secret. + // The ARN, Key ID, or alias of the KMS key used to encrypt the SecretString + // or SecretBinary values for versions of this secret. KmsKeyId *string `type:"string"` // The name of the secret. @@ -21658,7 +23006,7 @@ type AwsSecurityFinding struct { // you use this attribute. // // When you use the Security Hub API to filter findings by product name, you - // use the aws/securityhub/ProductyName attribute under ProductFields. + // use the aws/securityhub/ProductName attribute under ProductFields. // // Security Hub does not synchronize those two attributes. ProductName *string `type:"string"` @@ -23085,8 +24433,8 @@ func (s *AwsSecurityFindingIdentifier) SetProductArn(v string) *AwsSecurityFindi type AwsSnsTopicDetails struct { _ struct{} `type:"structure"` - // The ID of an Amazon Web Services managed customer master key (CMK) for Amazon - // SNS or a custom CMK. + // The ID of an Amazon Web Services managed key for Amazon SNS or a customer + // managed key. KmsMasterKeyId *string `type:"string"` // The subscription's owner. @@ -23179,8 +24527,8 @@ type AwsSqsQueueDetails struct { // to encrypt or decrypt messages before calling KMS again. KmsDataKeyReusePeriodSeconds *int64 `type:"integer"` - // The ID of an Amazon Web Services managed customer master key (CMK) for Amazon - // SQS or a custom CMK. + // The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS + // key. KmsMasterKeyId *string `type:"string"` // The name of the new queue. @@ -24859,12 +26207,18 @@ func (s *CustomDataIdentifiersResult) SetTotalCount(v int64) *CustomDataIdentifi type Cvss struct { _ struct{} `type:"structure"` + // Adjustments to the CVSS metrics. + Adjustments []*Adjustment `type:"list"` + // The base CVSS score. BaseScore *float64 `type:"double"` // The base scoring vector for the CVSS score. BaseVector *string `type:"string"` + // The origin of the original CVSS score and vector. + Source *string `type:"string"` + // The version of CVSS for the CVSS score. Version *string `type:"string"` } @@ -24879,6 +26233,12 @@ func (s Cvss) GoString() string { return s.String() } +// SetAdjustments sets the Adjustments field's value. +func (s *Cvss) SetAdjustments(v []*Adjustment) *Cvss { + s.Adjustments = v + return s +} + // SetBaseScore sets the BaseScore field's value. func (s *Cvss) SetBaseScore(v float64) *Cvss { s.BaseScore = &v @@ -24891,6 +26251,12 @@ func (s *Cvss) SetBaseVector(v string) *Cvss { return s } +// SetSource sets the Source field's value. +func (s *Cvss) SetSource(v string) *Cvss { + s.Source = &v + return s +} + // SetVersion sets the Version field's value. func (s *Cvss) SetVersion(v string) *Cvss { s.Version = &v @@ -29393,8 +30759,8 @@ type Product struct { // For integrations with Amazon Web Services services, the Amazon Web Services // Console URL from which to activate the service. // - // For integrations with third-party products, the Marketplace URL from which - // to subscribe to or purchase the product. + // For integrations with third-party products, the Amazon Web Services Marketplace + // URL from which to subscribe to or purchase the product. MarketplaceUrl *string `type:"string"` // The ARN assigned to the product. @@ -29875,6 +31241,9 @@ type ResourceDetails struct { // Details for an autoscaling group. AwsAutoScalingAutoScalingGroup *AwsAutoScalingAutoScalingGroupDetails `type:"structure"` + // Provides details about a launch configuration. + AwsAutoScalingLaunchConfiguration *AwsAutoScalingLaunchConfigurationDetails `type:"structure"` + // Provides details about an Certificate Manager certificate. AwsCertificateManagerCertificate *AwsCertificateManagerCertificateDetails `type:"structure"` @@ -29914,6 +31283,12 @@ type ResourceDetails struct { // Details for an EC2 VPC. AwsEc2Vpc *AwsEc2VpcDetails `type:"structure"` + // Details about an EC2 VPN connection. + AwsEc2VpnConnection *AwsEc2VpnConnectionDetails `type:"structure"` + + // information about an Amazon ECR image. + AwsEcrContainerImage *AwsEcrContainerImageDetails `type:"structure"` + // Details about an ECS cluster. AwsEcsCluster *AwsEcsClusterDetails `type:"structure"` @@ -29930,7 +31305,7 @@ type ResourceDetails struct { // Details for an Elasticsearch domain. AwsElasticsearchDomain *AwsElasticsearchDomainDetails `type:"structure"` - // contains details about a Classic Load Balancer. + // Contains details about a Classic Load Balancer. AwsElbLoadBalancer *AwsElbLoadBalancerDetails `type:"structure"` // Details about a load balancer. @@ -30074,6 +31449,12 @@ func (s *ResourceDetails) SetAwsAutoScalingAutoScalingGroup(v *AwsAutoScalingAut return s } +// SetAwsAutoScalingLaunchConfiguration sets the AwsAutoScalingLaunchConfiguration field's value. +func (s *ResourceDetails) SetAwsAutoScalingLaunchConfiguration(v *AwsAutoScalingLaunchConfigurationDetails) *ResourceDetails { + s.AwsAutoScalingLaunchConfiguration = v + return s +} + // SetAwsCertificateManagerCertificate sets the AwsCertificateManagerCertificate field's value. func (s *ResourceDetails) SetAwsCertificateManagerCertificate(v *AwsCertificateManagerCertificateDetails) *ResourceDetails { s.AwsCertificateManagerCertificate = v @@ -30152,6 +31533,18 @@ func (s *ResourceDetails) SetAwsEc2Vpc(v *AwsEc2VpcDetails) *ResourceDetails { return s } +// SetAwsEc2VpnConnection sets the AwsEc2VpnConnection field's value. +func (s *ResourceDetails) SetAwsEc2VpnConnection(v *AwsEc2VpnConnectionDetails) *ResourceDetails { + s.AwsEc2VpnConnection = v + return s +} + +// SetAwsEcrContainerImage sets the AwsEcrContainerImage field's value. +func (s *ResourceDetails) SetAwsEcrContainerImage(v *AwsEcrContainerImageDetails) *ResourceDetails { + s.AwsEcrContainerImage = v + return s +} + // SetAwsEcsCluster sets the AwsEcsCluster field's value. func (s *ResourceDetails) SetAwsEcsCluster(v *AwsEcsClusterDetails) *ResourceDetails { s.AwsEcsCluster = v @@ -30694,9 +32087,15 @@ type SoftwarePackage struct { // The epoch of the software package. Epoch *string `type:"string"` + // The file system path to the package manager inventory file. + FilePath *string `type:"string"` + // The name of the software package. Name *string `type:"string"` + // The source of the package. + PackageManager *string `type:"string"` + // The release of the software package. Release *string `type:"string"` @@ -30726,12 +32125,24 @@ func (s *SoftwarePackage) SetEpoch(v string) *SoftwarePackage { return s } +// SetFilePath sets the FilePath field's value. +func (s *SoftwarePackage) SetFilePath(v string) *SoftwarePackage { + s.FilePath = &v + return s +} + // SetName sets the Name field's value. func (s *SoftwarePackage) SetName(v string) *SoftwarePackage { s.Name = &v return s } +// SetPackageManager sets the PackageManager field's value. +func (s *SoftwarePackage) SetPackageManager(v string) *SoftwarePackage { + s.PackageManager = &v + return s +} + // SetRelease sets the Release field's value. func (s *SoftwarePackage) SetRelease(v string) *SoftwarePackage { s.Release = &v @@ -32090,8 +33501,12 @@ func (s *WafOverrideAction) SetType(v string) *WafOverrideAction { type Workflow struct { _ struct{} `type:"structure"` - // The status of the investigation into the finding. The allowed values are - // the following. + // The status of the investigation into the finding. The workflow status is + // specific to an individual finding. It does not affect the generation of new + // findings. For example, setting the workflow status to SUPPRESSED or RESOLVED + // does not prevent a new finding for the same issue. + // + // The allowed values are the following. // // * NEW - The initial state of a finding, before it is reviewed. Security // Hub also resets the workflow status from NOTIFIED or RESOLVED to NEW in @@ -32102,8 +33517,8 @@ type Workflow struct { // security issue. Used when the initial reviewer is not the resource owner, // and needs intervention from the resource owner. // - // * SUPPRESSED - The finding will not be reviewed again and will not be - // acted upon. + // * SUPPRESSED - Indicates that you reviewed the finding and do not believe + // that any action is needed. The finding is no longer updated. // // * RESOLVED - The finding was reviewed and remediated and is now considered // resolved. @@ -32130,8 +33545,12 @@ func (s *Workflow) SetStatus(v string) *Workflow { type WorkflowUpdate struct { _ struct{} `type:"structure"` - // The status of the investigation into the finding. The allowed values are - // the following. + // The status of the investigation into the finding. The workflow status is + // specific to an individual finding. It does not affect the generation of new + // findings. For example, setting the workflow status to SUPPRESSED or RESOLVED + // does not prevent a new finding for the same issue. + // + // The allowed values are the following. // // * NEW - The initial state of a finding, before it is reviewed. Security // Hub also resets WorkFlowStatus from NOTIFIED or RESOLVED to NEW in the @@ -32145,8 +33564,8 @@ type WorkflowUpdate struct { // * RESOLVED - The finding was reviewed and remediated and is now considered // resolved. // - // * SUPPRESSED - The finding will not be reviewed again and will not be - // acted upon. + // * SUPPRESSED - Indicates that you reviewed the finding and do not believe + // that any action is needed. The finding is no longer updated. Status *string `type:"string" enum:"WorkflowStatus"` } @@ -32198,6 +33617,22 @@ func AwsIamAccessKeyStatus_Values() []string { } } +const ( + // AwsS3BucketNotificationConfigurationS3KeyFilterRuleNamePrefix is a AwsS3BucketNotificationConfigurationS3KeyFilterRuleName enum value + AwsS3BucketNotificationConfigurationS3KeyFilterRuleNamePrefix = "Prefix" + + // AwsS3BucketNotificationConfigurationS3KeyFilterRuleNameSuffix is a AwsS3BucketNotificationConfigurationS3KeyFilterRuleName enum value + AwsS3BucketNotificationConfigurationS3KeyFilterRuleNameSuffix = "Suffix" +) + +// AwsS3BucketNotificationConfigurationS3KeyFilterRuleName_Values returns all elements of the AwsS3BucketNotificationConfigurationS3KeyFilterRuleName enum +func AwsS3BucketNotificationConfigurationS3KeyFilterRuleName_Values() []string { + return []string{ + AwsS3BucketNotificationConfigurationS3KeyFilterRuleNamePrefix, + AwsS3BucketNotificationConfigurationS3KeyFilterRuleNameSuffix, + } +} + const ( // ComplianceStatusPassed is a ComplianceStatus enum value ComplianceStatusPassed = "PASSED" diff --git a/service/transfer/api.go b/service/transfer/api.go index 0a0de4f1f1e..8d993e75d28 100644 --- a/service/transfer/api.go +++ b/service/transfer/api.go @@ -186,6 +186,10 @@ func (c *Transfer) CreateServerRequest(input *CreateServerInput) (req *request.R // * ResourceExistsException // The requested resource does not exist. // +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// // * ThrottlingException // The request was denied due to request throttling. // @@ -262,7 +266,7 @@ func (c *Transfer) CreateUserRequest(input *CreateUserInput) (req *request.Reque // IdentityProviderType set to SERVICE_MANAGED. Using parameters for CreateUser, // you can specify the user name, set the home directory, store the user's public // key, and assign the user's Amazon Web Services Identity and Access Management -// (IAM) role. You can also optionally add a scope-down policy, and assign metadata +// (IAM) role. You can also optionally add a session policy, and assign metadata // with tags that can be used to group and search for users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -313,6 +317,107 @@ func (c *Transfer) CreateUserWithContext(ctx aws.Context, input *CreateUserInput return out, req.Send() } +const opCreateWorkflow = "CreateWorkflow" + +// CreateWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the CreateWorkflow 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 CreateWorkflow for more information on using the CreateWorkflow +// 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 CreateWorkflowRequest method. +// req, resp := client.CreateWorkflowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflow +func (c *Transfer) CreateWorkflowRequest(input *CreateWorkflowInput) (req *request.Request, output *CreateWorkflowOutput) { + op := &request.Operation{ + Name: opCreateWorkflow, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateWorkflowInput{} + } + + output = &CreateWorkflowOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateWorkflow API operation for AWS Transfer Family. +// +// Allows you to create a workflow with specified steps and step details the +// workflow invokes after file transfer completes. After creating a workflow, +// you can associate the workflow created with any transfer servers by specifying +// the workflow-details field in CreateServer and UpdateServer operations. +// +// 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 Transfer Family's +// API operation CreateWorkflow for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You do not have sufficient access to perform this action. +// +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceExistsException +// The requested resource does not exist. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflow +func (c *Transfer) CreateWorkflow(input *CreateWorkflowInput) (*CreateWorkflowOutput, error) { + req, out := c.CreateWorkflowRequest(input) + return out, req.Send() +} + +// CreateWorkflowWithContext is the same as CreateWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See CreateWorkflow 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 *Transfer) CreateWorkflowWithContext(ctx aws.Context, input *CreateWorkflowInput, opts ...request.Option) (*CreateWorkflowOutput, error) { + req, out := c.CreateWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAccess = "DeleteAccess" // DeleteAccessRequest generates a "aws/request.Request" representing the @@ -550,8 +655,6 @@ func (c *Transfer) DeleteSshPublicKeyRequest(input *DeleteSshPublicKeyInput) (re // // Deletes a user's Secure Shell (SSH) public key. // -// No response is returned from this operation. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -699,6 +802,101 @@ func (c *Transfer) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput return out, req.Send() } +const opDeleteWorkflow = "DeleteWorkflow" + +// DeleteWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the DeleteWorkflow 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 DeleteWorkflow for more information on using the DeleteWorkflow +// 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 DeleteWorkflowRequest method. +// req, resp := client.DeleteWorkflowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteWorkflow +func (c *Transfer) DeleteWorkflowRequest(input *DeleteWorkflowInput) (req *request.Request, output *DeleteWorkflowOutput) { + op := &request.Operation{ + Name: opDeleteWorkflow, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteWorkflowInput{} + } + + output = &DeleteWorkflowOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteWorkflow API operation for AWS Transfer Family. +// +// Deletes the specified workflow. +// +// 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 Transfer Family's +// API operation DeleteWorkflow for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You do not have sufficient access to perform this action. +// +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteWorkflow +func (c *Transfer) DeleteWorkflow(input *DeleteWorkflowInput) (*DeleteWorkflowOutput, error) { + req, out := c.DeleteWorkflowRequest(input) + return out, req.Send() +} + +// DeleteWorkflowWithContext is the same as DeleteWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteWorkflow 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 *Transfer) DeleteWorkflowWithContext(ctx aws.Context, input *DeleteWorkflowInput, opts ...request.Option) (*DeleteWorkflowOutput, error) { + req, out := c.DeleteWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAccess = "DescribeAccess" // DescribeAccessRequest generates a "aws/request.Request" representing the @@ -794,6 +992,98 @@ func (c *Transfer) DescribeAccessWithContext(ctx aws.Context, input *DescribeAcc return out, req.Send() } +const opDescribeExecution = "DescribeExecution" + +// DescribeExecutionRequest generates a "aws/request.Request" representing the +// client's request for the DescribeExecution 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 DescribeExecution for more information on using the DescribeExecution +// 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 DescribeExecutionRequest method. +// req, resp := client.DescribeExecutionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecution +func (c *Transfer) DescribeExecutionRequest(input *DescribeExecutionInput) (req *request.Request, output *DescribeExecutionOutput) { + op := &request.Operation{ + Name: opDescribeExecution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeExecutionInput{} + } + + output = &DescribeExecutionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeExecution API operation for AWS Transfer Family. +// +// You can use DescribeExecution to check the details of the execution of the +// specified workflow. +// +// 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 Transfer Family's +// API operation DescribeExecution for usage and error information. +// +// Returned Error Types: +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecution +func (c *Transfer) DescribeExecution(input *DescribeExecutionInput) (*DescribeExecutionOutput, error) { + req, out := c.DescribeExecutionRequest(input) + return out, req.Send() +} + +// DescribeExecutionWithContext is the same as DescribeExecution with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeExecution 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 *Transfer) DescribeExecutionWithContext(ctx aws.Context, input *DescribeExecutionInput, opts ...request.Option) (*DescribeExecutionOutput, error) { + req, out := c.DescribeExecutionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeSecurityPolicy = "DescribeSecurityPolicy" // DescribeSecurityPolicyRequest generates a "aws/request.Request" representing the @@ -1078,63 +1368,58 @@ func (c *Transfer) DescribeUserWithContext(ctx aws.Context, input *DescribeUserI return out, req.Send() } -const opImportSshPublicKey = "ImportSshPublicKey" +const opDescribeWorkflow = "DescribeWorkflow" -// ImportSshPublicKeyRequest generates a "aws/request.Request" representing the -// client's request for the ImportSshPublicKey operation. The "output" return +// DescribeWorkflowRequest generates a "aws/request.Request" representing the +// client's request for the DescribeWorkflow 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 ImportSshPublicKey for more information on using the ImportSshPublicKey +// See DescribeWorkflow for more information on using the DescribeWorkflow // 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 ImportSshPublicKeyRequest method. -// req, resp := client.ImportSshPublicKeyRequest(params) +// // Example sending a request using the DescribeWorkflowRequest method. +// req, resp := client.DescribeWorkflowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey -func (c *Transfer) ImportSshPublicKeyRequest(input *ImportSshPublicKeyInput) (req *request.Request, output *ImportSshPublicKeyOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflow +func (c *Transfer) DescribeWorkflowRequest(input *DescribeWorkflowInput) (req *request.Request, output *DescribeWorkflowOutput) { op := &request.Operation{ - Name: opImportSshPublicKey, + Name: opDescribeWorkflow, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ImportSshPublicKeyInput{} + input = &DescribeWorkflowInput{} } - output = &ImportSshPublicKeyOutput{} + output = &DescribeWorkflowOutput{} req = c.newRequest(op, input, output) return } -// ImportSshPublicKey API operation for AWS Transfer Family. -// -// Adds a Secure Shell (SSH) public key to a user account identified by a UserName -// value assigned to the specific file transfer protocol-enabled server, identified -// by ServerId. +// DescribeWorkflow API operation for AWS Transfer Family. // -// The response returns the UserName value, the ServerId value, and the name -// of the SshPublicKeyId. +// Describes the specified workflow. // // 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 Transfer Family's -// API operation ImportSshPublicKey for usage and error information. +// API operation DescribeWorkflow for usage and error information. // // Returned Error Types: // * ServiceUnavailableException @@ -1148,21 +1433,117 @@ func (c *Transfer) ImportSshPublicKeyRequest(input *ImportSshPublicKeyInput) (re // * InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// * ResourceExistsException -// The requested resource does not exist. -// // * ResourceNotFoundException // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer // Family service. // -// * ThrottlingException -// The request was denied due to request throttling. -// -// HTTP Status Code: 400 -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey -func (c *Transfer) ImportSshPublicKey(input *ImportSshPublicKeyInput) (*ImportSshPublicKeyOutput, error) { - req, out := c.ImportSshPublicKeyRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflow +func (c *Transfer) DescribeWorkflow(input *DescribeWorkflowInput) (*DescribeWorkflowOutput, error) { + req, out := c.DescribeWorkflowRequest(input) + return out, req.Send() +} + +// DescribeWorkflowWithContext is the same as DescribeWorkflow with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeWorkflow 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 *Transfer) DescribeWorkflowWithContext(ctx aws.Context, input *DescribeWorkflowInput, opts ...request.Option) (*DescribeWorkflowOutput, error) { + req, out := c.DescribeWorkflowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opImportSshPublicKey = "ImportSshPublicKey" + +// ImportSshPublicKeyRequest generates a "aws/request.Request" representing the +// client's request for the ImportSshPublicKey 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 ImportSshPublicKey for more information on using the ImportSshPublicKey +// 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 ImportSshPublicKeyRequest method. +// req, resp := client.ImportSshPublicKeyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey +func (c *Transfer) ImportSshPublicKeyRequest(input *ImportSshPublicKeyInput) (req *request.Request, output *ImportSshPublicKeyOutput) { + op := &request.Operation{ + Name: opImportSshPublicKey, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ImportSshPublicKeyInput{} + } + + output = &ImportSshPublicKeyOutput{} + req = c.newRequest(op, input, output) + return +} + +// ImportSshPublicKey API operation for AWS Transfer Family. +// +// Adds a Secure Shell (SSH) public key to a user account identified by a UserName +// value assigned to the specific file transfer protocol-enabled server, identified +// by ServerId. +// +// The response returns the UserName value, the ServerId value, and the name +// of the SshPublicKeyId. +// +// 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 Transfer Family's +// API operation ImportSshPublicKey for usage and error information. +// +// Returned Error Types: +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceExistsException +// The requested resource does not exist. +// +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey +func (c *Transfer) ImportSshPublicKey(input *ImportSshPublicKeyInput) (*ImportSshPublicKeyOutput, error) { + req, out := c.ImportSshPublicKeyRequest(input) return out, req.Send() } @@ -1334,6 +1715,158 @@ func (c *Transfer) ListAccessesPagesWithContext(ctx aws.Context, input *ListAcce return p.Err() } +const opListExecutions = "ListExecutions" + +// ListExecutionsRequest generates a "aws/request.Request" representing the +// client's request for the ListExecutions 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 ListExecutions for more information on using the ListExecutions +// 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 ListExecutionsRequest method. +// req, resp := client.ListExecutionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutions +func (c *Transfer) ListExecutionsRequest(input *ListExecutionsInput) (req *request.Request, output *ListExecutionsOutput) { + op := &request.Operation{ + Name: opListExecutions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListExecutionsInput{} + } + + output = &ListExecutionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExecutions API operation for AWS Transfer Family. +// +// Lists all executions for the specified workflow. +// +// 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 Transfer Family's +// API operation ListExecutions for usage and error information. +// +// Returned Error Types: +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidNextTokenException +// The NextToken parameter that was passed is invalid. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutions +func (c *Transfer) ListExecutions(input *ListExecutionsInput) (*ListExecutionsOutput, error) { + req, out := c.ListExecutionsRequest(input) + return out, req.Send() +} + +// ListExecutionsWithContext is the same as ListExecutions with the addition of +// the ability to pass a context and additional request options. +// +// See ListExecutions 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 *Transfer) ListExecutionsWithContext(ctx aws.Context, input *ListExecutionsInput, opts ...request.Option) (*ListExecutionsOutput, error) { + req, out := c.ListExecutionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListExecutionsPages iterates over the pages of a ListExecutions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListExecutions 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 ListExecutions operation. +// pageNum := 0 +// err := client.ListExecutionsPages(params, +// func(page *transfer.ListExecutionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Transfer) ListExecutionsPages(input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool) error { + return c.ListExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListExecutionsPagesWithContext same as ListExecutionsPages 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 *Transfer) ListExecutionsPagesWithContext(ctx aws.Context, input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListExecutionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListExecutionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListExecutionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSecurityPolicies = "ListSecurityPolicies" // ListSecurityPoliciesRequest generates a "aws/request.Request" representing the @@ -1934,67 +2467,64 @@ func (c *Transfer) ListUsersPagesWithContext(ctx aws.Context, input *ListUsersIn return p.Err() } -const opStartServer = "StartServer" +const opListWorkflows = "ListWorkflows" -// StartServerRequest generates a "aws/request.Request" representing the -// client's request for the StartServer operation. The "output" return +// ListWorkflowsRequest generates a "aws/request.Request" representing the +// client's request for the ListWorkflows 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 StartServer for more information on using the StartServer +// See ListWorkflows for more information on using the ListWorkflows // 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 StartServerRequest method. -// req, resp := client.StartServerRequest(params) +// // Example sending a request using the ListWorkflowsRequest method. +// req, resp := client.ListWorkflowsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServer -func (c *Transfer) StartServerRequest(input *StartServerInput) (req *request.Request, output *StartServerOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflows +func (c *Transfer) ListWorkflowsRequest(input *ListWorkflowsInput) (req *request.Request, output *ListWorkflowsOutput) { op := &request.Operation{ - Name: opStartServer, + Name: opListWorkflows, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartServerInput{} + input = &ListWorkflowsInput{} } - output = &StartServerOutput{} + output = &ListWorkflowsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// StartServer API operation for AWS Transfer Family. -// -// Changes the state of a file transfer protocol-enabled server from OFFLINE -// to ONLINE. It has no impact on a server that is already ONLINE. An ONLINE -// server can accept and process file transfer jobs. -// -// The state of STARTING indicates that the server is in an intermediate state, -// either not fully able to respond, or not fully online. The values of START_FAILED -// can indicate an error condition. +// ListWorkflows API operation for AWS Transfer Family. // -// No response is returned from this call. +// Lists all of your workflows. // // 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 Transfer Family's -// API operation StartServer for usage and error information. +// API operation ListWorkflows for usage and error information. // // Returned Error Types: // * ServiceUnavailableException @@ -2005,14 +2535,269 @@ func (c *Transfer) StartServerRequest(input *StartServerInput) (req *request.Req // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer // Family service. // +// * InvalidNextTokenException +// The NextToken parameter that was passed is invalid. +// // * InvalidRequestException // This exception is thrown when the client submits a malformed request. // -// * ResourceNotFoundException -// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer -// Family service. -// -// * ThrottlingException +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflows +func (c *Transfer) ListWorkflows(input *ListWorkflowsInput) (*ListWorkflowsOutput, error) { + req, out := c.ListWorkflowsRequest(input) + return out, req.Send() +} + +// ListWorkflowsWithContext is the same as ListWorkflows with the addition of +// the ability to pass a context and additional request options. +// +// See ListWorkflows 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 *Transfer) ListWorkflowsWithContext(ctx aws.Context, input *ListWorkflowsInput, opts ...request.Option) (*ListWorkflowsOutput, error) { + req, out := c.ListWorkflowsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListWorkflowsPages iterates over the pages of a ListWorkflows operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWorkflows 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 ListWorkflows operation. +// pageNum := 0 +// err := client.ListWorkflowsPages(params, +// func(page *transfer.ListWorkflowsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Transfer) ListWorkflowsPages(input *ListWorkflowsInput, fn func(*ListWorkflowsOutput, bool) bool) error { + return c.ListWorkflowsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListWorkflowsPagesWithContext same as ListWorkflowsPages 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 *Transfer) ListWorkflowsPagesWithContext(ctx aws.Context, input *ListWorkflowsInput, fn func(*ListWorkflowsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWorkflowsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWorkflowsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWorkflowsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSendWorkflowStepState = "SendWorkflowStepState" + +// SendWorkflowStepStateRequest generates a "aws/request.Request" representing the +// client's request for the SendWorkflowStepState 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 SendWorkflowStepState for more information on using the SendWorkflowStepState +// 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 SendWorkflowStepStateRequest method. +// req, resp := client.SendWorkflowStepStateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepState +func (c *Transfer) SendWorkflowStepStateRequest(input *SendWorkflowStepStateInput) (req *request.Request, output *SendWorkflowStepStateOutput) { + op := &request.Operation{ + Name: opSendWorkflowStepState, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &SendWorkflowStepStateInput{} + } + + output = &SendWorkflowStepStateOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// SendWorkflowStepState API operation for AWS Transfer Family. +// +// Sends a callback for asynchronous custom steps. +// +// The ExecutionId, WorkflowId, and Token are passed to the target resource +// during execution of a custom step of a workflow. You must include those with +// their callback as well as providing a status. +// +// 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 Transfer Family's +// API operation SendWorkflowStepState for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You do not have sufficient access to perform this action. +// +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// HTTP Status Code: 400 +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepState +func (c *Transfer) SendWorkflowStepState(input *SendWorkflowStepStateInput) (*SendWorkflowStepStateOutput, error) { + req, out := c.SendWorkflowStepStateRequest(input) + return out, req.Send() +} + +// SendWorkflowStepStateWithContext is the same as SendWorkflowStepState with the addition of +// the ability to pass a context and additional request options. +// +// See SendWorkflowStepState 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 *Transfer) SendWorkflowStepStateWithContext(ctx aws.Context, input *SendWorkflowStepStateInput, opts ...request.Option) (*SendWorkflowStepStateOutput, error) { + req, out := c.SendWorkflowStepStateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartServer = "StartServer" + +// StartServerRequest generates a "aws/request.Request" representing the +// client's request for the StartServer 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 StartServer for more information on using the StartServer +// 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 StartServerRequest method. +// req, resp := client.StartServerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServer +func (c *Transfer) StartServerRequest(input *StartServerInput) (req *request.Request, output *StartServerOutput) { + op := &request.Operation{ + Name: opStartServer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartServerInput{} + } + + output = &StartServerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StartServer API operation for AWS Transfer Family. +// +// Changes the state of a file transfer protocol-enabled server from OFFLINE +// to ONLINE. It has no impact on a server that is already ONLINE. An ONLINE +// server can accept and process file transfer jobs. +// +// The state of STARTING indicates that the server is in an intermediate state, +// either not fully able to respond, or not fully online. The values of START_FAILED +// can indicate an error condition. +// +// No response is returned from this call. +// +// 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 Transfer Family's +// API operation StartServer for usage and error information. +// +// Returned Error Types: +// * ServiceUnavailableException +// The request has failed because the Amazon Web ServicesTransfer Family service +// is not available. +// +// * InternalServiceError +// This exception is thrown when an error occurs in the Amazon Web ServicesTransfer +// Family service. +// +// * InvalidRequestException +// This exception is thrown when the client submits a malformed request. +// +// * ResourceNotFoundException +// This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer +// Family service. +// +// * ThrottlingException // The request was denied due to request throttling. // // HTTP Status Code: 400 @@ -2294,6 +3079,25 @@ func (c *Transfer) TestIdentityProviderRequest(input *TestIdentityProviderInput) // doing so, you can troubleshoot issues with the identity provider integration // to ensure that your users can successfully use the service. // +// The ServerId and UserName parameters are required. The ServerProtocol, SourceIp, +// and UserPassword are all optional. +// +// You cannot use TestIdentityProvider if the IdentityProviderType of your server +// is SERVICE_MANAGED. +// +// * If you provide any incorrect values for any parameters, the Response +// field is empty. +// +// * If you provide a server ID for a server that uses service-managed users, +// you get an error: An error occurred (InvalidRequestException) when calling +// the TestIdentityProvider operation: s-server-ID not configured for external +// auth +// +// * If you enter a Server ID for the --server-id parameter that does not +// identify an actual Transfer server, you receive the following error: An +// error occurred (ResourceNotFoundException) when calling the TestIdentityProvider +// operation: Unknown server +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2594,7 +3398,7 @@ func (c *Transfer) UpdateServerRequest(input *UpdateServerInput) (req *request.R // is not available. // // * ConflictException -// This exception is thrown when the UpdatServer is called for a file transfer +// This exception is thrown when the UpdateServer is called for a file transfer // protocol-enabled server that has VPC as the endpoint type and the server's // VpcEndpointID is not in the available state. // @@ -2795,7 +3599,7 @@ func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } -// This exception is thrown when the UpdatServer is called for a file transfer +// This exception is thrown when the UpdateServer is called for a file transfer // protocol-enabled server that has VPC as the endpoint type and the server's // VpcEndpointID is not in the available state. type ConflictException struct { @@ -2853,6 +3657,65 @@ func (s *ConflictException) RequestID() string { return s.RespMetadata.RequestID } +// Each step type has its own StepDetails structure. +type CopyStepDetails struct { + _ struct{} `type:"structure"` + + // Specifies the location for the file being copied. Only applicable for the + // Copy type of workflow steps. + DestinationFileLocation *InputFileLocation `type:"structure"` + + // The name of the step, used as an identifier. + Name *string `type:"string"` + + // A flag that indicates whether or not to overwrite an existing file of the + // same name. The default is FALSE. + OverwriteExisting *string `type:"string" enum:"OverwriteExisting"` +} + +// String returns the string representation +func (s CopyStepDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CopyStepDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyStepDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyStepDetails"} + if s.DestinationFileLocation != nil { + if err := s.DestinationFileLocation.Validate(); err != nil { + invalidParams.AddNested("DestinationFileLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationFileLocation sets the DestinationFileLocation field's value. +func (s *CopyStepDetails) SetDestinationFileLocation(v *InputFileLocation) *CopyStepDetails { + s.DestinationFileLocation = v + return s +} + +// SetName sets the Name field's value. +func (s *CopyStepDetails) SetName(v string) *CopyStepDetails { + s.Name = &v + return s +} + +// SetOverwriteExisting sets the OverwriteExisting field's value. +func (s *CopyStepDetails) SetOverwriteExisting(v string) *CopyStepDetails { + s.OverwriteExisting = &v + return s +} + type CreateAccessInput struct { _ struct{} `type:"structure"` @@ -2895,9 +3758,9 @@ type CreateAccessInput struct { // [ { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" // } ] // - // In most cases, you can use this value instead of the scope-down policy to - // lock down your user to the designated home directory ("chroot"). To do this, - // you can set Entry to / and set Target to the HomeDirectory parameter value. + // In most cases, you can use this value instead of the session policy to lock + // down your user to the designated home directory ("chroot"). To do this, you + // can set Entry to / and set Target to the HomeDirectory parameter value. // // The following is an Entry and Target pair example for chroot. // @@ -2915,24 +3778,24 @@ type CreateAccessInput struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same IAM role across + // A session policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. // - // This only applies when domain of ServerId is S3. Amazon EFS does not use - // scope-down policies. + // This only applies when the domain of ServerId is S3. EFS does not use session + // policies. // - // For scope-down policies, Amazon Web Services Transfer Family stores the policy + // For session policies, Amazon Web Services Transfer Family stores the policy // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. // You save the policy as a JSON blob and pass it in the Policy argument. // - // For an example of a scope-down policy, see Example scope-down policy (https://docs.aws.amazon.com/transfer/latest/userguide/scope-down-policy.html). + // For an example of a session policy, see Example session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html). // // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) // in the Amazon Web Services Security Token Service API Reference. @@ -3243,6 +4106,10 @@ type CreateServerInput struct { // Key-value pairs that can be used to group and search for servers. Tags []*Tag `min:"1" type:"list"` + + // Specifies the workflow ID for the workflow to assign and the execution role + // used for executing the workflow. + WorkflowDetails *WorkflowDetails `type:"structure"` } // String returns the string representation @@ -3287,6 +4154,11 @@ func (s *CreateServerInput) Validate() error { } } } + if s.WorkflowDetails != nil { + if err := s.WorkflowDetails.Validate(); err != nil { + invalidParams.AddNested("WorkflowDetails", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -3360,6 +4232,12 @@ func (s *CreateServerInput) SetTags(v []*Tag) *CreateServerInput { return s } +// SetWorkflowDetails sets the WorkflowDetails field's value. +func (s *CreateServerInput) SetWorkflowDetails(v *WorkflowDetails) *CreateServerInput { + s.WorkflowDetails = v + return s +} + type CreateServerOutput struct { _ struct{} `type:"structure"` @@ -3408,9 +4286,9 @@ type CreateUserInput struct { // [ { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" // } ] // - // In most cases, you can use this value instead of the scope-down policy to - // lock your user down to the designated home directory ("chroot"). To do this, - // you can set Entry to / and set Target to the HomeDirectory parameter value. + // In most cases, you can use this value instead of the session policy to lock + // your user down to the designated home directory ("chroot"). To do this, you + // can set Entry to / and set Target to the HomeDirectory parameter value. // // The following is an Entry and Target pair example for chroot. // @@ -3428,24 +4306,24 @@ type CreateUserInput struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same IAM role across + // A session policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. // - // This only applies when domain of ServerId is S3. EFS does not use scope down - // policy. + // This only applies when the domain of ServerId is S3. EFS does not use session + // policies. // - // For scope-down policies, Amazon Web Services Transfer Family stores the policy + // For session policies, Amazon Web Services Transfer Family stores the policy // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. // You save the policy as a JSON blob and pass it in the Policy argument. // - // For an example of a scope-down policy, see Example scope-down policy (https://docs.aws.amazon.com/transfer/latest/userguide/scope-down-policy.html). + // For an example of a session policy, see Example session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html). // // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) // in the Amazon Web Services Security Token Service API Reference. @@ -3482,11 +4360,11 @@ type CreateUserInput struct { // metadata attached to users for any purpose. Tags []*Tag `min:"1" type:"list"` - // A unique string that identifies a user and is associated with a as specified - // by the ServerId. This user name must be a minimum of 3 and a maximum of 100 - // characters long. The following are valid characters: a-z, A-Z, 0-9, underscore - // '_', hyphen '-', period '.', and at sign '@'. The user name can't start with - // a hyphen, period, or at sign. + // A unique string that identifies a user and is associated with a ServerId. + // This user name must be a minimum of 3 and a maximum of 100 characters long. + // The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen + // '-', period '.', and at sign '@'. The user name can't start with a hyphen, + // period, or at sign. // // UserName is a required field UserName *string `min:"3" type:"string" required:"true"` @@ -3657,6 +4535,200 @@ func (s *CreateUserOutput) SetUserName(v string) *CreateUserOutput { return s } +type CreateWorkflowInput struct { + _ struct{} `type:"structure"` + + // A textual description for the workflow. + Description *string `type:"string"` + + // Specifies the steps (actions) to take if any errors are encountered during + // execution of the workflow. + OnExceptionSteps []*WorkflowStep `type:"list"` + + // Specifies the details for the steps that are in the specified workflow. + // + // The TYPE specifies which of the following actions is being taken for this + // step. + // + // * Copy: copy the file to another location + // + // * Custom: custom step with a lambda target + // + // * Delete: delete the file + // + // * Tag: add a tag to the file + // + // For file location, you specify either the S3 bucket and key, or the EFS filesystem + // ID and path. + // + // Steps is a required field + Steps []*WorkflowStep `type:"list" required:"true"` + + // Key-value pairs that can be used to group and search for workflows. Tags + // are metadata attached to workflows for any purpose. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s CreateWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateWorkflowInput"} + if s.Steps == nil { + invalidParams.Add(request.NewErrParamRequired("Steps")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.OnExceptionSteps != nil { + for i, v := range s.OnExceptionSteps { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnExceptionSteps", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Steps != nil { + for i, v := range s.Steps { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateWorkflowInput) SetDescription(v string) *CreateWorkflowInput { + s.Description = &v + return s +} + +// SetOnExceptionSteps sets the OnExceptionSteps field's value. +func (s *CreateWorkflowInput) SetOnExceptionSteps(v []*WorkflowStep) *CreateWorkflowInput { + s.OnExceptionSteps = v + return s +} + +// SetSteps sets the Steps field's value. +func (s *CreateWorkflowInput) SetSteps(v []*WorkflowStep) *CreateWorkflowInput { + s.Steps = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateWorkflowInput) SetTags(v []*Tag) *CreateWorkflowInput { + s.Tags = v + return s +} + +type CreateWorkflowOutput struct { + _ struct{} `type:"structure"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateWorkflowOutput) GoString() string { + return s.String() +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *CreateWorkflowOutput) SetWorkflowId(v string) *CreateWorkflowOutput { + s.WorkflowId = &v + return s +} + +// Each step type has its own StepDetails structure. +type CustomStepDetails struct { + _ struct{} `type:"structure"` + + // The name of the step, used as an identifier. + Name *string `type:"string"` + + // The ARN for the lambda function that is being called. + Target *string `type:"string"` + + // Timeout, in seconds, for the step. + TimeoutSeconds *int64 `min:"1" type:"integer"` +} + +// String returns the string representation +func (s CustomStepDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CustomStepDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomStepDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomStepDetails"} + if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 1 { + invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *CustomStepDetails) SetName(v string) *CustomStepDetails { + s.Name = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *CustomStepDetails) SetTarget(v string) *CustomStepDetails { + s.Target = &v + return s +} + +// SetTimeoutSeconds sets the TimeoutSeconds field's value. +func (s *CustomStepDetails) SetTimeoutSeconds(v int64) *CustomStepDetails { + s.TimeoutSeconds = &v + return s +} + type DeleteAccessInput struct { _ struct{} `type:"structure"` @@ -3888,6 +4960,30 @@ func (s DeleteSshPublicKeyOutput) GoString() string { return s.String() } +// The name of the step, used to identify the step that is being deleted. +type DeleteStepDetails struct { + _ struct{} `type:"structure"` + + // The name of the step, used as an identifier. + Name *string `type:"string"` +} + +// String returns the string representation +func (s DeleteStepDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteStepDetails) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *DeleteStepDetails) SetName(v string) *DeleteStepDetails { + s.Name = &v + return s +} + type DeleteUserInput struct { _ struct{} `type:"structure"` @@ -3961,6 +5057,61 @@ func (s DeleteUserOutput) GoString() string { return s.String() } +type DeleteWorkflowInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteWorkflowInput"} + if s.WorkflowId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowId")) + } + if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *DeleteWorkflowInput) SetWorkflowId(v string) *DeleteWorkflowInput { + s.WorkflowId = &v + return s +} + +type DeleteWorkflowOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteWorkflowOutput) GoString() string { + return s.String() +} + type DescribeAccessInput struct { _ struct{} `type:"structure"` @@ -4069,6 +5220,100 @@ func (s *DescribeAccessOutput) SetServerId(v string) *DescribeAccessOutput { return s } +type DescribeExecutionInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for the execution of a workflow. + // + // ExecutionId is a required field + ExecutionId *string `min:"36" type:"string" required:"true"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeExecutionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeExecutionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeExecutionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeExecutionInput"} + if s.ExecutionId == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionId")) + } + if s.ExecutionId != nil && len(*s.ExecutionId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionId", 36)) + } + if s.WorkflowId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowId")) + } + if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *DescribeExecutionInput) SetExecutionId(v string) *DescribeExecutionInput { + s.ExecutionId = &v + return s +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *DescribeExecutionInput) SetWorkflowId(v string) *DescribeExecutionInput { + s.WorkflowId = &v + return s +} + +type DescribeExecutionOutput struct { + _ struct{} `type:"structure"` + + // The structure that contains the details of the workflow' execution. + // + // Execution is a required field + Execution *DescribedExecution `type:"structure" required:"true"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeExecutionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeExecutionOutput) GoString() string { + return s.String() +} + +// SetExecution sets the Execution field's value. +func (s *DescribeExecutionOutput) SetExecution(v *DescribedExecution) *DescribeExecutionOutput { + s.Execution = v + return s +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *DescribeExecutionOutput) SetWorkflowId(v string) *DescribeExecutionOutput { + s.WorkflowId = &v + return s +} + type DescribeSecurityPolicyInput struct { _ struct{} `type:"structure"` @@ -4295,32 +5540,98 @@ func (s *DescribeUserOutput) SetUser(v *DescribedUser) *DescribeUserOutput { return s } -// Describes the properties of the access that was specified. -type DescribedAccess struct { +type DescribeWorkflowInput struct { _ struct{} `type:"structure"` - // A unique identifier that is required to identify specific groups within your - // directory. The users of the group that you associate have access to your - // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon - // Web Services Transfer Family. If you know the group name, you can view the - // SID values by running the following command using Windows PowerShell. + // A unique identifier for the workflow. // - // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * - // | Select SamAccountName,ObjectSid - // - // In that command, replace YourGroupName with the name of your Active Directory - // group. - // - // The regex used to validate this parameter is a string of characters consisting - // of uppercase and lowercase alphanumeric characters with no spaces. You can - // also include underscores or any of the following characters: =,.@:/- - ExternalId *string `min:"1" type:"string"` + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} - // The landing directory (folder) for a user when they log in to the server - // using the client. - // - // A HomeDirectory example is /bucket_name/home/mydirectory. - HomeDirectory *string `type:"string"` +// String returns the string representation +func (s DescribeWorkflowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeWorkflowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeWorkflowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeWorkflowInput"} + if s.WorkflowId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowId")) + } + if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *DescribeWorkflowInput) SetWorkflowId(v string) *DescribeWorkflowInput { + s.WorkflowId = &v + return s +} + +type DescribeWorkflowOutput struct { + _ struct{} `type:"structure"` + + // The structure that contains the details of the workflow. + // + // Workflow is a required field + Workflow *DescribedWorkflow `type:"structure" required:"true"` +} + +// String returns the string representation +func (s DescribeWorkflowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeWorkflowOutput) GoString() string { + return s.String() +} + +// SetWorkflow sets the Workflow field's value. +func (s *DescribeWorkflowOutput) SetWorkflow(v *DescribedWorkflow) *DescribeWorkflowOutput { + s.Workflow = v + return s +} + +// Describes the properties of the access that was specified. +type DescribedAccess struct { + _ struct{} `type:"structure"` + + // A unique identifier that is required to identify specific groups within your + // directory. The users of the group that you associate have access to your + // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon + // Web Services Transfer Family. If you know the group name, you can view the + // SID values by running the following command using Windows PowerShell. + // + // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * + // | Select SamAccountName,ObjectSid + // + // In that command, replace YourGroupName with the name of your Active Directory + // group. + // + // The regex used to validate this parameter is a string of characters consisting + // of uppercase and lowercase alphanumeric characters with no spaces. You can + // also include underscores or any of the following characters: =,.@:/- + ExternalId *string `min:"1" type:"string"` + + // The landing directory (folder) for a user when they log in to the server + // using the client. + // + // A HomeDirectory example is /bucket_name/home/mydirectory. + HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths // and keys should be visible to your user and how you want to make them visible. @@ -4331,21 +5642,21 @@ type DescribedAccess struct { // access to paths in Target. This value can only be set when HomeDirectoryType // is set to LOGICAL. // - // In most cases, you can use this value instead of the scope-down policy to - // lock down the associated access to the designated home directory ("chroot"). - // To do this, you can set Entry to '/' and set Target to the HomeDirectory - // parameter value. + // In most cases, you can use this value instead of the session policy to lock + // down the associated access to the designated home directory ("chroot"). To + // do this, you can set Entry to '/' and set Target to the HomeDirectory parameter + // value. HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same IAM role across + // A session policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. @@ -4419,6 +5730,102 @@ func (s *DescribedAccess) SetRole(v string) *DescribedAccess { return s } +// The details for an execution object. +type DescribedExecution struct { + _ struct{} `type:"structure"` + + // A unique identifier for the execution of a workflow. + ExecutionId *string `min:"36" type:"string"` + + // The IAM role associated with the execution. + ExecutionRole *string `min:"20" type:"string"` + + // A structure that describes the Amazon S3 or EFS file location. This is the + // file location when the execution begins: if the file is being copied, this + // is the initial (as opposed to destination) file location. + InitialFileLocation *FileLocation `type:"structure"` + + // The IAM logging role associated with the execution. + LoggingConfiguration *LoggingConfiguration `type:"structure"` + + // The full POSIX identity, including user ID (Uid), group ID (Gid), and any + // secondary groups IDs (SecondaryGids), that controls your users' access to + // your Amazon EFS file systems. The POSIX permissions that are set on files + // and directories in your file system determine the level of access your users + // get when transferring files into and out of your Amazon EFS file systems. + PosixProfile *PosixProfile `type:"structure"` + + // A structure that describes the execution results. This includes a list of + // the steps along with the details of each step, error type and message (if + // any), and the OnExceptionSteps structure. + Results *ExecutionResults `type:"structure"` + + // A container object for the session details associated with a workflow. + ServiceMetadata *ServiceMetadata `type:"structure"` + + // The status is one of the execution. Can be in progress, completed, exception + // encountered, or handling the exception. + Status *string `type:"string" enum:"ExecutionStatus"` +} + +// String returns the string representation +func (s DescribedExecution) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribedExecution) GoString() string { + return s.String() +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *DescribedExecution) SetExecutionId(v string) *DescribedExecution { + s.ExecutionId = &v + return s +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *DescribedExecution) SetExecutionRole(v string) *DescribedExecution { + s.ExecutionRole = &v + return s +} + +// SetInitialFileLocation sets the InitialFileLocation field's value. +func (s *DescribedExecution) SetInitialFileLocation(v *FileLocation) *DescribedExecution { + s.InitialFileLocation = v + return s +} + +// SetLoggingConfiguration sets the LoggingConfiguration field's value. +func (s *DescribedExecution) SetLoggingConfiguration(v *LoggingConfiguration) *DescribedExecution { + s.LoggingConfiguration = v + return s +} + +// SetPosixProfile sets the PosixProfile field's value. +func (s *DescribedExecution) SetPosixProfile(v *PosixProfile) *DescribedExecution { + s.PosixProfile = v + return s +} + +// SetResults sets the Results field's value. +func (s *DescribedExecution) SetResults(v *ExecutionResults) *DescribedExecution { + s.Results = v + return s +} + +// SetServiceMetadata sets the ServiceMetadata field's value. +func (s *DescribedExecution) SetServiceMetadata(v *ServiceMetadata) *DescribedExecution { + s.ServiceMetadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribedExecution) SetStatus(v string) *DescribedExecution { + s.Status = &v + return s +} + // Describes the properties of a security policy that was specified. For more // information about security policies, see Working with security policies (https://docs.aws.amazon.com/transfer/latest/userguide/security-policies.html). type DescribedSecurityPolicy struct { @@ -4599,6 +6006,10 @@ type DescribedServer struct { // Specifies the number of users that are assigned to a server you specified // with the ServerId. UserCount *int64 `type:"integer"` + + // Specifies the workflow ID for the workflow to assign and the execution role + // used for executing the workflow. + WorkflowDetails *WorkflowDetails `type:"structure"` } // String returns the string representation @@ -4707,6 +6118,12 @@ func (s *DescribedServer) SetUserCount(v int64) *DescribedServer { return s } +// SetWorkflowDetails sets the WorkflowDetails field's value. +func (s *DescribedServer) SetWorkflowDetails(v *WorkflowDetails) *DescribedServer { + s.WorkflowDetails = v + return s +} + // Describes the properties of a user that was specified. type DescribedUser struct { _ struct{} `type:"structure"` @@ -4732,20 +6149,20 @@ type DescribedUser struct { // access to paths in Target. This value can only be set when HomeDirectoryType // is set to LOGICAL. // - // In most cases, you can use this value instead of the scope-down policy to - // lock your user down to the designated home directory ("chroot"). To do this, - // you can set Entry to '/' and set Target to the HomeDirectory parameter value. + // In most cases, you can use this value instead of the session policy to lock + // your user down to the designated home directory ("chroot"). To do this, you + // can set Entry to '/' and set Target to the HomeDirectory parameter value. HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same IAM role across + // A session policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. @@ -4851,6 +6268,139 @@ func (s *DescribedUser) SetUserName(v string) *DescribedUser { return s } +// Describes the properties of the specified workflow +type DescribedWorkflow struct { + _ struct{} `type:"structure"` + + // Specifies the unique Amazon Resource Name (ARN) for the workflow. + // + // Arn is a required field + Arn *string `min:"20" type:"string" required:"true"` + + // Specifies the text description for the workflow. + Description *string `type:"string"` + + // Specifies the steps (actions) to take if any errors are encountered during + // execution of the workflow. + OnExceptionSteps []*WorkflowStep `type:"list"` + + // Specifies the details for the steps that are in the specified workflow. + Steps []*WorkflowStep `type:"list"` + + // Key-value pairs that can be used to group and search for workflows. Tags + // are metadata attached to workflows for any purpose. + Tags []*Tag `min:"1" type:"list"` + + // A unique identifier for the workflow. + WorkflowId *string `min:"19" type:"string"` +} + +// String returns the string representation +func (s DescribedWorkflow) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribedWorkflow) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DescribedWorkflow) SetArn(v string) *DescribedWorkflow { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DescribedWorkflow) SetDescription(v string) *DescribedWorkflow { + s.Description = &v + return s +} + +// SetOnExceptionSteps sets the OnExceptionSteps field's value. +func (s *DescribedWorkflow) SetOnExceptionSteps(v []*WorkflowStep) *DescribedWorkflow { + s.OnExceptionSteps = v + return s +} + +// SetSteps sets the Steps field's value. +func (s *DescribedWorkflow) SetSteps(v []*WorkflowStep) *DescribedWorkflow { + s.Steps = v + return s +} + +// SetTags sets the Tags field's value. +func (s *DescribedWorkflow) SetTags(v []*Tag) *DescribedWorkflow { + s.Tags = v + return s +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *DescribedWorkflow) SetWorkflowId(v string) *DescribedWorkflow { + s.WorkflowId = &v + return s +} + +// Specifies the details for the file location for the file being used in the +// workflow. Only applicable if you are using Amazon EFS for storage. +// +// You need to provide the file system ID and the pathname. The pathname can +// represent either a path or a file. This is determined by whether or not you +// end the path value with the forward slash (/) character. If the final character +// is "/", then your file is copied to the folder, and its name does not change. +// If, rather, the final character is alphanumeric, your uploaded file is renamed +// to the path value. In this case, if a file with that name already exists, +// it is overwritten. +// +// For example, if your path is shared-files/bob/, your uploaded files are copied +// to the shared-files/bob/, folder. If your path is shared-files/today, each +// uploaded file is copied to the shared-files folder and named today: each +// upload overwrites the previous version of the bob file. +type EfsFileLocation struct { + _ struct{} `type:"structure"` + + // The ID of the file system, assigned by Amazon EFS. + FileSystemId *string `type:"string"` + + // The pathname for the folder being used by a workflow. + Path *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s EfsFileLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EfsFileLocation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EfsFileLocation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EfsFileLocation"} + if s.Path != nil && len(*s.Path) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Path", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *EfsFileLocation) SetFileSystemId(v string) *EfsFileLocation { + s.FileSystemId = &v + return s +} + +// SetPath sets the Path field's value. +func (s *EfsFileLocation) SetPath(v string) *EfsFileLocation { + s.Path = &v + return s +} + // The virtual private cloud (VPC) endpoint settings that are configured for // your file transfer protocol-enabled server. With a VPC endpoint, you can // restrict access to your server and resources only within your VPC. To control @@ -4958,103 +6508,265 @@ func (s *EndpointDetails) SetVpcId(v string) *EndpointDetails { return s } -// Represents an object that contains entries and targets for HomeDirectoryMappings. -// -// The following is an Entry and Target pair example for chroot. -// -// [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] -// -// If the target of a logical directory entry does not exist in Amazon S3 or -// EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API -// or EFS API to create 0 byte objects as place holders for your directory. -// If using the CLI, use the s3api or efsapi call instead of s3 or efs so you -// can use the put-object operation. For example, you use the following: aws -// s3api put-object --bucket bucketname --key path/to/folder/. Make sure that -// the end of the key name ends in a / for it to be considered a folder. -type HomeDirectoryMapEntry struct { +// Specifies the error message and type, for an error that occurs during the +// execution of the workflow. +type ExecutionError struct { _ struct{} `type:"structure"` - // Represents an entry for HomeDirectoryMappings. + // Specifies the descriptive message that corresponds to the ErrorType. // - // Entry is a required field - Entry *string `type:"string" required:"true"` + // Message is a required field + Message *string `type:"string" required:"true"` - // Represents the map target that is used in a HomeDirectorymapEntry. + // Specifies the error type: currently, the only valid value is PERMISSION_DENIED, + // which occurs if your policy does not contain the correct permissions to complete + // one or more of the steps in the workflow. // - // Target is a required field - Target *string `type:"string" required:"true"` + // Type is a required field + Type *string `type:"string" required:"true" enum:"ExecutionErrorType"` } // String returns the string representation -func (s HomeDirectoryMapEntry) String() string { +func (s ExecutionError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HomeDirectoryMapEntry) GoString() string { +func (s ExecutionError) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *HomeDirectoryMapEntry) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HomeDirectoryMapEntry"} - if s.Entry == nil { - invalidParams.Add(request.NewErrParamRequired("Entry")) - } - if s.Target == nil { - invalidParams.Add(request.NewErrParamRequired("Target")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetEntry sets the Entry field's value. -func (s *HomeDirectoryMapEntry) SetEntry(v string) *HomeDirectoryMapEntry { - s.Entry = &v +// SetMessage sets the Message field's value. +func (s *ExecutionError) SetMessage(v string) *ExecutionError { + s.Message = &v return s } -// SetTarget sets the Target field's value. -func (s *HomeDirectoryMapEntry) SetTarget(v string) *HomeDirectoryMapEntry { - s.Target = &v +// SetType sets the Type field's value. +func (s *ExecutionError) SetType(v string) *ExecutionError { + s.Type = &v return s } -// Returns information related to the type of user authentication that is in -// use for a file transfer protocol-enabled server's users. A server can have -// only one method of authentication. -type IdentityProviderDetails struct { +// Specifies the steps in the workflow, as well as the steps to execute in case +// of any errors during workflow execution. +type ExecutionResults struct { _ struct{} `type:"structure"` - // The identifier of the Amazon Web ServicesDirectory Service directory that - // you want to stop sharing. - DirectoryId *string `min:"12" type:"string"` - - // Provides the type of InvocationRole used to authenticate the user account. - InvocationRole *string `min:"20" type:"string"` + // Specifies the steps (actions) to take if any errors are encountered during + // execution of the workflow. + OnExceptionSteps []*ExecutionStepResult `min:"1" type:"list"` - // Provides the location of the service endpoint used to authenticate users. - Url *string `type:"string"` + // Specifies the details for the steps that are in the specified workflow. + Steps []*ExecutionStepResult `min:"1" type:"list"` } // String returns the string representation -func (s IdentityProviderDetails) String() string { +func (s ExecutionResults) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IdentityProviderDetails) GoString() string { +func (s ExecutionResults) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *IdentityProviderDetails) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "IdentityProviderDetails"} - if s.DirectoryId != nil && len(*s.DirectoryId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("DirectoryId", 12)) +// SetOnExceptionSteps sets the OnExceptionSteps field's value. +func (s *ExecutionResults) SetOnExceptionSteps(v []*ExecutionStepResult) *ExecutionResults { + s.OnExceptionSteps = v + return s +} + +// SetSteps sets the Steps field's value. +func (s *ExecutionResults) SetSteps(v []*ExecutionStepResult) *ExecutionResults { + s.Steps = v + return s +} + +// Specifies the following details for the step: error (if any), outputs (if +// any), and the step type. +type ExecutionStepResult struct { + _ struct{} `type:"structure"` + + // Specifies the details for an error, if it occurred during execution of the + // specified workfow step. + Error *ExecutionError `type:"structure"` + + // The values for the key/value pair applied as a tag to the file. Only applicable + // if the step type is TAG. + Outputs *string `type:"string"` + + // One of the available step types. + // + // * Copy: copy the file to another location + // + // * Custom: custom step with a lambda target + // + // * Delete: delete the file + // + // * Tag: add a tag to the file + StepType *string `type:"string" enum:"WorkflowStepType"` +} + +// String returns the string representation +func (s ExecutionStepResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ExecutionStepResult) GoString() string { + return s.String() +} + +// SetError sets the Error field's value. +func (s *ExecutionStepResult) SetError(v *ExecutionError) *ExecutionStepResult { + s.Error = v + return s +} + +// SetOutputs sets the Outputs field's value. +func (s *ExecutionStepResult) SetOutputs(v string) *ExecutionStepResult { + s.Outputs = &v + return s +} + +// SetStepType sets the StepType field's value. +func (s *ExecutionStepResult) SetStepType(v string) *ExecutionStepResult { + s.StepType = &v + return s +} + +// Specifies the Amazon S3 or EFS file details to be used in the step. +type FileLocation struct { + _ struct{} `type:"structure"` + + // Specifies the Amazon EFS ID and the path for the file being used. + EfsFileLocation *EfsFileLocation `type:"structure"` + + // Specifies the S3 details for the file being used, such as bucket, Etag, and + // so forth. + S3FileLocation *S3FileLocation `type:"structure"` +} + +// String returns the string representation +func (s FileLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s FileLocation) GoString() string { + return s.String() +} + +// SetEfsFileLocation sets the EfsFileLocation field's value. +func (s *FileLocation) SetEfsFileLocation(v *EfsFileLocation) *FileLocation { + s.EfsFileLocation = v + return s +} + +// SetS3FileLocation sets the S3FileLocation field's value. +func (s *FileLocation) SetS3FileLocation(v *S3FileLocation) *FileLocation { + s.S3FileLocation = v + return s +} + +// Represents an object that contains entries and targets for HomeDirectoryMappings. +// +// The following is an Entry and Target pair example for chroot. +// +// [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] +// +// If the target of a logical directory entry does not exist in Amazon S3 or +// EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API +// or EFS API to create 0 byte objects as place holders for your directory. +// If using the CLI, use the s3api or efsapi call instead of s3 or efs so you +// can use the put-object operation. For example, you use the following: aws +// s3api put-object --bucket bucketname --key path/to/folder/. Make sure that +// the end of the key name ends in a / for it to be considered a folder. +type HomeDirectoryMapEntry struct { + _ struct{} `type:"structure"` + + // Represents an entry for HomeDirectoryMappings. + // + // Entry is a required field + Entry *string `type:"string" required:"true"` + + // Represents the map target that is used in a HomeDirectorymapEntry. + // + // Target is a required field + Target *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s HomeDirectoryMapEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s HomeDirectoryMapEntry) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *HomeDirectoryMapEntry) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HomeDirectoryMapEntry"} + if s.Entry == nil { + invalidParams.Add(request.NewErrParamRequired("Entry")) + } + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEntry sets the Entry field's value. +func (s *HomeDirectoryMapEntry) SetEntry(v string) *HomeDirectoryMapEntry { + s.Entry = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *HomeDirectoryMapEntry) SetTarget(v string) *HomeDirectoryMapEntry { + s.Target = &v + return s +} + +// Returns information related to the type of user authentication that is in +// use for a file transfer protocol-enabled server's users. A server can have +// only one method of authentication. +type IdentityProviderDetails struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Web ServicesDirectory Service directory that + // you want to stop sharing. + DirectoryId *string `min:"12" type:"string"` + + // Provides the type of InvocationRole used to authenticate the user account. + InvocationRole *string `min:"20" type:"string"` + + // Provides the location of the service endpoint used to authenticate users. + Url *string `type:"string"` +} + +// String returns the string representation +func (s IdentityProviderDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s IdentityProviderDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IdentityProviderDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IdentityProviderDetails"} + if s.DirectoryId != nil && len(*s.DirectoryId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("DirectoryId", 12)) } if s.InvocationRole != nil && len(*s.InvocationRole) < 20 { invalidParams.Add(request.NewErrParamMinLen("InvocationRole", 20)) @@ -5206,6 +6918,60 @@ func (s *ImportSshPublicKeyOutput) SetUserName(v string) *ImportSshPublicKeyOutp return s } +// Specifies the location for the file being copied. Only applicable for the +// Copy type of workflow steps. +type InputFileLocation struct { + _ struct{} `type:"structure"` + + // Specifies the details for the Amazon EFS file being copied. + EfsFileLocation *EfsFileLocation `type:"structure"` + + // Specifies the details for the S3 file being copied. + S3FileLocation *S3InputFileLocation `type:"structure"` +} + +// String returns the string representation +func (s InputFileLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s InputFileLocation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InputFileLocation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InputFileLocation"} + if s.EfsFileLocation != nil { + if err := s.EfsFileLocation.Validate(); err != nil { + invalidParams.AddNested("EfsFileLocation", err.(request.ErrInvalidParams)) + } + } + if s.S3FileLocation != nil { + if err := s.S3FileLocation.Validate(); err != nil { + invalidParams.AddNested("S3FileLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEfsFileLocation sets the EfsFileLocation field's value. +func (s *InputFileLocation) SetEfsFileLocation(v *EfsFileLocation) *InputFileLocation { + s.EfsFileLocation = v + return s +} + +// SetS3FileLocation sets the S3FileLocation field's value. +func (s *InputFileLocation) SetS3FileLocation(v *S3InputFileLocation) *InputFileLocation { + s.S3FileLocation = v + return s +} + // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer // Family service. type InternalServiceError struct { @@ -5492,39 +7258,64 @@ func (s *ListAccessesOutput) SetServerId(v string) *ListAccessesOutput { return s } -type ListSecurityPoliciesInput struct { +type ListExecutionsInput struct { _ struct{} `type:"structure"` - // Specifies the number of security policies to return as a response to the - // ListSecurityPolicies query. + // Specifies the aximum number of executions to return. MaxResults *int64 `min:"1" type:"integer"` - // When additional results are obtained from the ListSecurityPolicies command, - // a NextToken parameter is returned in the output. You can then pass the NextToken - // parameter in a subsequent command to continue listing additional security - // policies. + // ListExecutions returns the NextToken parameter in the output. You can then + // pass the NextToken parameter in a subsequent command to continue listing + // additional executions. + // + // This is useful for pagination, for instance. If you have 100 executions for + // a workflow, you might only want to list first 10. If so, callthe API by specifing + // the max-results: + // + // aws transfer list-executions --max-results 10 + // + // This returns details for the first 10 executions, as well as the pointer + // (NextToken) to the eleventh execution. You can now call the API again, suppling + // the NextToken value you received: + // + // aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult + // + // This call returns the next 10 executions, the 11th through the 20th. You + // can then repeat the call until the details for all 100 executions have been + // returned. NextToken *string `min:"1" type:"string"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` } // String returns the string representation -func (s ListSecurityPoliciesInput) String() string { +func (s ListExecutionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListSecurityPoliciesInput) GoString() string { +func (s ListExecutionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListSecurityPoliciesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListSecurityPoliciesInput"} +func (s *ListExecutionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExecutionsInput"} 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.WorkflowId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowId")) + } + if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) + } if invalidParams.Len() > 0 { return invalidParams @@ -5533,79 +7324,108 @@ func (s *ListSecurityPoliciesInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListSecurityPoliciesInput) SetMaxResults(v int64) *ListSecurityPoliciesInput { +func (s *ListExecutionsInput) SetMaxResults(v int64) *ListExecutionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListSecurityPoliciesInput) SetNextToken(v string) *ListSecurityPoliciesInput { +func (s *ListExecutionsInput) SetNextToken(v string) *ListExecutionsInput { s.NextToken = &v return s } -type ListSecurityPoliciesOutput struct { +// SetWorkflowId sets the WorkflowId field's value. +func (s *ListExecutionsInput) SetWorkflowId(v string) *ListExecutionsInput { + s.WorkflowId = &v + return s +} + +type ListExecutionsOutput struct { _ struct{} `type:"structure"` - // When you can get additional results from the ListSecurityPolicies operation, - // a NextToken parameter is returned in the output. In a following command, - // you can pass in the NextToken parameter to continue listing security policies. + // Returns the details for each execution. + // + // * NextToken: returned from a call to several APIs, you can use pass it + // to a subsequent command to continue listing additional executions. + // + // * StartTime: timestamp indicating when the execution began. + // + // * Executions: details of the execution, including the execution ID, initial + // file location, and Service metadata. + // + // * Status: one of the following values: IN_PROGRESS, COMPLETED, EXCEPTION, + // HANDLING_EXEPTION. + // + // Executions is a required field + Executions []*ListedExecution `type:"list" required:"true"` + + // ListExecutions returns the NextToken parameter in the output. You can then + // pass the NextToken parameter in a subsequent command to continue listing + // additional executions. NextToken *string `min:"1" type:"string"` - // An array of security policies that were listed. + // A unique identifier for the workflow. // - // SecurityPolicyNames is a required field - SecurityPolicyNames []*string `type:"list" required:"true"` + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` } // String returns the string representation -func (s ListSecurityPoliciesOutput) String() string { +func (s ListExecutionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListSecurityPoliciesOutput) GoString() string { +func (s ListExecutionsOutput) GoString() string { return s.String() } +// SetExecutions sets the Executions field's value. +func (s *ListExecutionsOutput) SetExecutions(v []*ListedExecution) *ListExecutionsOutput { + s.Executions = v + return s +} + // SetNextToken sets the NextToken field's value. -func (s *ListSecurityPoliciesOutput) SetNextToken(v string) *ListSecurityPoliciesOutput { +func (s *ListExecutionsOutput) SetNextToken(v string) *ListExecutionsOutput { s.NextToken = &v return s } -// SetSecurityPolicyNames sets the SecurityPolicyNames field's value. -func (s *ListSecurityPoliciesOutput) SetSecurityPolicyNames(v []*string) *ListSecurityPoliciesOutput { - s.SecurityPolicyNames = v +// SetWorkflowId sets the WorkflowId field's value. +func (s *ListExecutionsOutput) SetWorkflowId(v string) *ListExecutionsOutput { + s.WorkflowId = &v return s } -type ListServersInput struct { +type ListSecurityPoliciesInput struct { _ struct{} `type:"structure"` - // Specifies the number of servers to return as a response to the ListServers - // query. + // Specifies the number of security policies to return as a response to the + // ListSecurityPolicies query. MaxResults *int64 `min:"1" type:"integer"` - // When additional results are obtained from the ListServers command, a NextToken - // parameter is returned in the output. You can then pass the NextToken parameter - // in a subsequent command to continue listing additional servers. + // When additional results are obtained from the ListSecurityPolicies command, + // a NextToken parameter is returned in the output. You can then pass the NextToken + // parameter in a subsequent command to continue listing additional security + // policies. NextToken *string `min:"1" type:"string"` } // String returns the string representation -func (s ListServersInput) String() string { +func (s ListSecurityPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListServersInput) GoString() string { +func (s ListSecurityPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListServersInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListServersInput"} +func (s *ListSecurityPoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSecurityPoliciesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -5620,22 +7440,109 @@ func (s *ListServersInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListServersInput) SetMaxResults(v int64) *ListServersInput { +func (s *ListSecurityPoliciesInput) SetMaxResults(v int64) *ListSecurityPoliciesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListServersInput) SetNextToken(v string) *ListServersInput { +func (s *ListSecurityPoliciesInput) SetNextToken(v string) *ListSecurityPoliciesInput { s.NextToken = &v return s } -type ListServersOutput struct { +type ListSecurityPoliciesOutput struct { _ struct{} `type:"structure"` - // When you can get additional results from the ListServers operation, a NextToken - // parameter is returned in the output. In a following command, you can pass + // When you can get additional results from the ListSecurityPolicies operation, + // a NextToken parameter is returned in the output. In a following command, + // you can pass in the NextToken parameter to continue listing security policies. + NextToken *string `min:"1" type:"string"` + + // An array of security policies that were listed. + // + // SecurityPolicyNames is a required field + SecurityPolicyNames []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s ListSecurityPoliciesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListSecurityPoliciesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSecurityPoliciesOutput) SetNextToken(v string) *ListSecurityPoliciesOutput { + s.NextToken = &v + return s +} + +// SetSecurityPolicyNames sets the SecurityPolicyNames field's value. +func (s *ListSecurityPoliciesOutput) SetSecurityPolicyNames(v []*string) *ListSecurityPoliciesOutput { + s.SecurityPolicyNames = v + return s +} + +type ListServersInput struct { + _ struct{} `type:"structure"` + + // Specifies the number of servers to return as a response to the ListServers + // query. + MaxResults *int64 `min:"1" type:"integer"` + + // When additional results are obtained from the ListServers command, a NextToken + // parameter is returned in the output. You can then pass the NextToken parameter + // in a subsequent command to continue listing additional servers. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s ListServersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListServersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListServersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListServersInput) SetMaxResults(v int64) *ListServersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServersInput) SetNextToken(v string) *ListServersInput { + s.NextToken = &v + return s +} + +type ListServersOutput struct { + _ struct{} `type:"structure"` + + // When you can get additional results from the ListServers operation, a NextToken + // parameter is returned in the output. In a following command, you can pass // in the NextToken parameter to continue listing additional servers. NextToken *string `min:"1" type:"string"` @@ -5898,6 +7805,92 @@ func (s *ListUsersOutput) SetUsers(v []*ListedUser) *ListUsersOutput { return s } +type ListWorkflowsInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of workflows to return. + MaxResults *int64 `min:"1" type:"integer"` + + // ListWorkflows returns the NextToken parameter in the output. You can then + // pass the NextToken parameter in a subsequent command to continue listing + // additional workflows. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s ListWorkflowsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListWorkflowsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListWorkflowsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWorkflowsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListWorkflowsInput) SetMaxResults(v int64) *ListWorkflowsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkflowsInput) SetNextToken(v string) *ListWorkflowsInput { + s.NextToken = &v + return s +} + +type ListWorkflowsOutput struct { + _ struct{} `type:"structure"` + + // ListWorkflows returns the NextToken parameter in the output. You can then + // pass the NextToken parameter in a subsequent command to continue listing + // additional workflows. + NextToken *string `min:"1" type:"string"` + + // Returns the Arn, WorkflowId, and Description for each workflow. + // + // Workflows is a required field + Workflows []*ListedWorkflow `type:"list" required:"true"` +} + +// String returns the string representation +func (s ListWorkflowsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListWorkflowsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkflowsOutput) SetNextToken(v string) *ListWorkflowsOutput { + s.NextToken = &v + return s +} + +// SetWorkflows sets the Workflows field's value. +func (s *ListWorkflowsOutput) SetWorkflows(v []*ListedWorkflow) *ListWorkflowsOutput { + s.Workflows = v + return s +} + // Lists the properties for one or more specified associated accesses. type ListedAccess struct { _ struct{} `type:"structure"` @@ -5928,8 +7921,8 @@ type ListedAccess struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` @@ -5976,6 +7969,60 @@ func (s *ListedAccess) SetRole(v string) *ListedAccess { return s } +// Returns properties of the execution that is specified. +type ListedExecution struct { + _ struct{} `type:"structure"` + + // A unique identifier for the execution of a workflow. + ExecutionId *string `min:"36" type:"string"` + + // A structure that describes the Amazon S3 or EFS file location. This is the + // file location when the execution begins: if the file is being copied, this + // is the initial (as opposed to destination) file location. + InitialFileLocation *FileLocation `type:"structure"` + + // A container object for the session details associated with a workflow. + ServiceMetadata *ServiceMetadata `type:"structure"` + + // The status is one of the execution. Can be in progress, completed, exception + // encountered, or handling the exception. + Status *string `type:"string" enum:"ExecutionStatus"` +} + +// String returns the string representation +func (s ListedExecution) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListedExecution) GoString() string { + return s.String() +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *ListedExecution) SetExecutionId(v string) *ListedExecution { + s.ExecutionId = &v + return s +} + +// SetInitialFileLocation sets the InitialFileLocation field's value. +func (s *ListedExecution) SetInitialFileLocation(v *FileLocation) *ListedExecution { + s.InitialFileLocation = v + return s +} + +// SetServiceMetadata sets the ServiceMetadata field's value. +func (s *ListedExecution) SetServiceMetadata(v *ServiceMetadata) *ListedExecution { + s.ServiceMetadata = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListedExecution) SetStatus(v string) *ListedExecution { + s.Status = &v + return s +} + // Returns properties of a file transfer protocol-enabled server that was specified. type ListedServer struct { _ struct{} `type:"structure"` @@ -6111,8 +8158,8 @@ type ListedUser struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` @@ -6185,6 +8232,86 @@ func (s *ListedUser) SetUserName(v string) *ListedUser { return s } +// Contains the ID, text description, and Amazon Resource Name (ARN) for the +// workflow. +type ListedWorkflow struct { + _ struct{} `type:"structure"` + + // Specifies the unique Amazon Resource Name (ARN) for the workflow. + Arn *string `min:"20" type:"string"` + + // Specifies the text description for the workflow. + Description *string `type:"string"` + + // A unique identifier for the workflow. + WorkflowId *string `min:"19" type:"string"` +} + +// String returns the string representation +func (s ListedWorkflow) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListedWorkflow) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ListedWorkflow) SetArn(v string) *ListedWorkflow { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ListedWorkflow) SetDescription(v string) *ListedWorkflow { + s.Description = &v + return s +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *ListedWorkflow) SetWorkflowId(v string) *ListedWorkflow { + s.WorkflowId = &v + return s +} + +// Consists of the logging role and the log group name. +type LoggingConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the CloudWatch logging group for the Amazon Web Services Transfer + // server to which this workflow belongs. + LogGroupName *string `min:"1" type:"string"` + + // Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity + // and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch + // logging for Amazon S3 or Amazon EFS events. When set, user activity can be + // viewed in your CloudWatch logs. + LoggingRole *string `min:"20" type:"string"` +} + +// String returns the string representation +func (s LoggingConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s LoggingConfiguration) GoString() string { + return s.String() +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *LoggingConfiguration) SetLogGroupName(v string) *LoggingConfiguration { + s.LogGroupName = &v + return s +} + +// SetLoggingRole sets the LoggingRole field's value. +func (s *LoggingConfiguration) SetLoggingRole(v string) *LoggingConfiguration { + s.LoggingRole = &v + return s +} + // The full POSIX identity, including user ID (Uid), group ID (Gid), and any // secondary groups IDs (SecondaryGids), that controls your users' access to // your Amazon EFS file systems. The POSIX permissions that are set on files @@ -6265,6 +8392,11 @@ type ProtocolDetails struct { // // Replace 0.0.0.0 in the example above with the actual IP address you want // to use. + // + // If you change the PassiveIp value, you must stop and then restart your Transfer + // server for the change to take effect. For details on using Passive IP (PASV) + // in a NAT environment, see Configuring your FTPS server behind a firewall + // or NAT with Amazon Web Services Transfer Family (http://aws.amazon.com/blogs/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/). PassiveIp *string `type:"string"` } @@ -6404,9 +8536,310 @@ func (s *ResourceNotFoundException) StatusCode() int { return s.RespMetadata.StatusCode } -// RequestID returns the service's response RequestID for request. -func (s *ResourceNotFoundException) RequestID() string { - return s.RespMetadata.RequestID +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Specifies the details for the file location for the file being used in the +// workflow. Only applicable if you are using S3 storage. +// +// You need to provide the bucket and key. The key can represent either a path +// or a file. This is determined by whether or not you end the key value with +// the forward slash (/) character. If the final character is "/", then your +// file is copied to the folder, and its name does not change. If, rather, the +// final character is alphanumeric, your uploaded file is renamed to the path +// value. In this case, if a file with that name already exists, it is overwritten. +// +// For example, if your path is shared-files/bob/, your uploaded files are copied +// to the shared-files/bob/, folder. If your path is shared-files/today, each +// uploaded file is copied to the shared-files folder and named today: each +// upload overwrites the previous version of the bob file. +type S3FileLocation struct { + _ struct{} `type:"structure"` + + // Specifies the S3 bucket that contains the file being used. + Bucket *string `min:"3" type:"string"` + + // The entity tag is a hash of the object. The ETag reflects changes only to + // the contents of an object, not its metadata. + Etag *string `min:"1" type:"string"` + + // The name assigned to the file when it was created in S3. You use the object + // key to retrieve the object. + Key *string `type:"string"` + + // Specifies the file version. + VersionId *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s S3FileLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s S3FileLocation) GoString() string { + return s.String() +} + +// SetBucket sets the Bucket field's value. +func (s *S3FileLocation) SetBucket(v string) *S3FileLocation { + s.Bucket = &v + return s +} + +// SetEtag sets the Etag field's value. +func (s *S3FileLocation) SetEtag(v string) *S3FileLocation { + s.Etag = &v + return s +} + +// SetKey sets the Key field's value. +func (s *S3FileLocation) SetKey(v string) *S3FileLocation { + s.Key = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *S3FileLocation) SetVersionId(v string) *S3FileLocation { + s.VersionId = &v + return s +} + +// Specifies the details for the S3 file being copied. +type S3InputFileLocation struct { + _ struct{} `type:"structure"` + + // Specifies the S3 bucket that contains the file being copied. + Bucket *string `min:"3" type:"string"` + + // The name assigned to the file when it was created in S3. You use the object + // key to retrieve the object. + Key *string `type:"string"` +} + +// String returns the string representation +func (s S3InputFileLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s S3InputFileLocation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3InputFileLocation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3InputFileLocation"} + if s.Bucket != nil && len(*s.Bucket) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *S3InputFileLocation) SetBucket(v string) *S3InputFileLocation { + s.Bucket = &v + return s +} + +// SetKey sets the Key field's value. +func (s *S3InputFileLocation) SetKey(v string) *S3InputFileLocation { + s.Key = &v + return s +} + +// Specifies the key-value pair that are assigned to a file during the execution +// of a Tagging step. +type S3Tag struct { + _ struct{} `type:"structure"` + + // The name assigned to the tag that you create. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value that corresponds to the key. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s S3Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s S3Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *S3Tag) SetKey(v string) *S3Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *S3Tag) SetValue(v string) *S3Tag { + s.Value = &v + return s +} + +type SendWorkflowStepStateInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for the execution of a workflow. + // + // ExecutionId is a required field + ExecutionId *string `min:"36" type:"string" required:"true"` + + // Indicates whether the specified step succeeded or failed. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"CustomStepStatus"` + + // Used to distinguish between multiple callbacks for multiple Lambda steps + // within the same execution. + // + // Token is a required field + Token *string `min:"1" type:"string" required:"true"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} + +// String returns the string representation +func (s SendWorkflowStepStateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SendWorkflowStepStateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SendWorkflowStepStateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SendWorkflowStepStateInput"} + if s.ExecutionId == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionId")) + } + if s.ExecutionId != nil && len(*s.ExecutionId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionId", 36)) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + if s.Token == nil { + invalidParams.Add(request.NewErrParamRequired("Token")) + } + if s.Token != nil && len(*s.Token) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Token", 1)) + } + if s.WorkflowId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowId")) + } + if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExecutionId sets the ExecutionId field's value. +func (s *SendWorkflowStepStateInput) SetExecutionId(v string) *SendWorkflowStepStateInput { + s.ExecutionId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SendWorkflowStepStateInput) SetStatus(v string) *SendWorkflowStepStateInput { + s.Status = &v + return s +} + +// SetToken sets the Token field's value. +func (s *SendWorkflowStepStateInput) SetToken(v string) *SendWorkflowStepStateInput { + s.Token = &v + return s +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *SendWorkflowStepStateInput) SetWorkflowId(v string) *SendWorkflowStepStateInput { + s.WorkflowId = &v + return s +} + +type SendWorkflowStepStateOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s SendWorkflowStepStateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SendWorkflowStepStateOutput) GoString() string { + return s.String() +} + +// A container object for the session details associated with a workflow. +type ServiceMetadata struct { + _ struct{} `type:"structure"` + + // The Server ID (ServerId), Session ID (SessionId) and user (UserName) make + // up the UserDetails. + // + // UserDetails is a required field + UserDetails *UserDetails `type:"structure" required:"true"` +} + +// String returns the string representation +func (s ServiceMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceMetadata) GoString() string { + return s.String() +} + +// SetUserDetails sets the UserDetails field's value. +func (s *ServiceMetadata) SetUserDetails(v *UserDetails) *ServiceMetadata { + s.UserDetails = v + return s } // The request has failed because the Amazon Web ServicesTransfer Family service @@ -6773,6 +9206,65 @@ func (s TagResourceOutput) GoString() string { return s.String() } +// Each step type has its own StepDetails structure. +// +// The key/value pairs used to tag a file during the execution of a workflow +// step. +type TagStepDetails struct { + _ struct{} `type:"structure"` + + // The name of the step, used as an identifier. + Name *string `type:"string"` + + // Array that contains from 1 to 10 key/value pairs. + Tags []*S3Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s TagStepDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagStepDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagStepDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagStepDetails"} + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *TagStepDetails) SetName(v string) *TagStepDetails { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagStepDetails) SetTags(v []*S3Tag) *TagStepDetails { + s.Tags = v + return s +} + type TestIdentityProviderInput struct { _ struct{} `type:"structure"` @@ -7099,9 +9591,9 @@ type UpdateAccessInput struct { // [ { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" // } ] // - // In most cases, you can use this value instead of the scope-down policy to - // lock down your user to the designated home directory ("chroot"). To do this, - // you can set Entry to / and set Target to the HomeDirectory parameter value. + // In most cases, you can use this value instead of the session policy to lock + // down your user to the designated home directory ("chroot"). To do this, you + // can set Entry to / and set Target to the HomeDirectory parameter value. // // The following is an Entry and Target pair example for chroot. // @@ -7119,24 +9611,24 @@ type UpdateAccessInput struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same IAM role across + // A session policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. // - // This only applies when domain of ServerId is S3. Amazon EFS does not use - // scope down policy. + // This only applies when the domain of ServerId is S3. EFS does not use session + // policies. // - // For scope-down policies, Amazon Web ServicesTransfer Family stores the policy + // For session policies, Amazon Web Services Transfer Family stores the policy // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. // You save the policy as a JSON blob and pass it in the Policy argument. // - // For an example of a scope-down policy, see Example scope-down policy (https://docs.aws.amazon.com/transfer/latest/userguide/scope-down-policy.html). + // For an example of a session policy, see Example session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html). // // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) // in the Amazon Web ServicesSecurity Token Service API Reference. @@ -7425,6 +9917,10 @@ type UpdateServerInput struct { // // ServerId is a required field ServerId *string `min:"19" type:"string" required:"true"` + + // Specifies the workflow ID for the workflow to assign and the execution role + // used for executing the workflow. + WorkflowDetails *WorkflowDetails `type:"structure"` } // String returns the string representation @@ -7459,6 +9955,11 @@ func (s *UpdateServerInput) Validate() error { invalidParams.AddNested("IdentityProviderDetails", err.(request.ErrInvalidParams)) } } + if s.WorkflowDetails != nil { + if err := s.WorkflowDetails.Validate(); err != nil { + invalidParams.AddNested("WorkflowDetails", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -7526,6 +10027,12 @@ func (s *UpdateServerInput) SetServerId(v string) *UpdateServerInput { return s } +// SetWorkflowDetails sets the WorkflowDetails field's value. +func (s *UpdateServerInput) SetWorkflowDetails(v *WorkflowDetails) *UpdateServerInput { + s.WorkflowDetails = v + return s +} + type UpdateServerOutput struct { _ struct{} `type:"structure"` @@ -7575,9 +10082,9 @@ type UpdateUserInput struct { // [ { "Entry": "your-personal-report.pdf", "Target": "/bucket3/customized-reports/${transfer:UserName}.pdf" // } ] // - // In most cases, you can use this value instead of the scope-down policy to - // lock down your user to the designated home directory ("chroot"). To do this, - // you can set Entry to '/' and set Target to the HomeDirectory parameter value. + // In most cases, you can use this value instead of the session policy to lock + // down your user to the designated home directory ("chroot"). To do this, you + // can set Entry to '/' and set Target to the HomeDirectory parameter value. // // The following is an Entry and Target pair example for chroot. // @@ -7595,24 +10102,24 @@ type UpdateUserInput struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer - // protocol clients. If you set it LOGICAL, you will need to provide mappings - // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // protocol clients. If you set it LOGICAL, you need to provide mappings in + // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same IAM role across + // A session policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. // - // This only applies when domain of ServerId is S3. Amazon EFS does not use - // scope-down policies. + // This only applies when the domain of ServerId is S3. EFS does not use session + // policies. // - // For scope-down policies, Amazon Web ServicesTransfer Family stores the policy + // For session policies, Amazon Web Services Transfer Family stores the policy // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. // You save the policy as a JSON blob and pass it in the Policy argument. // - // For an example of a scope-down policy, see Creating a scope-down policy (https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down). + // For an example of a session policy, see Creating a session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy). // // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) // in the Amazon Web Services Security Token Service API Reference. @@ -7791,6 +10298,288 @@ func (s *UpdateUserOutput) SetUserName(v string) *UpdateUserOutput { return s } +// Specifies the user name, server ID, and session ID for a workflow. +type UserDetails struct { + _ struct{} `type:"structure"` + + // The system-assigned unique identifier for a Transfer server instance. + // + // ServerId is a required field + ServerId *string `min:"19" type:"string" required:"true"` + + // The system-assigned unique identifier for a session that corresponds to the + // workflow. + SessionId *string `min:"3" type:"string"` + + // A unique string that identifies a user account associated with a server. + // + // UserName is a required field + UserName *string `min:"3" type:"string" required:"true"` +} + +// String returns the string representation +func (s UserDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UserDetails) GoString() string { + return s.String() +} + +// SetServerId sets the ServerId field's value. +func (s *UserDetails) SetServerId(v string) *UserDetails { + s.ServerId = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *UserDetails) SetSessionId(v string) *UserDetails { + s.SessionId = &v + return s +} + +// SetUserName sets the UserName field's value. +func (s *UserDetails) SetUserName(v string) *UserDetails { + s.UserName = &v + return s +} + +// Specifies the workflow ID for the workflow to assign and the execution role +// used for executing the workflow. +type WorkflowDetail struct { + _ struct{} `type:"structure"` + + // Includes the necessary permissions for S3, EFS, and Lambda operations that + // Transfer can assume, so that all workflow steps can operate on the required + // resources + // + // ExecutionRole is a required field + ExecutionRole *string `min:"20" type:"string" required:"true"` + + // A unique identifier for the workflow. + // + // WorkflowId is a required field + WorkflowId *string `min:"19" type:"string" required:"true"` +} + +// String returns the string representation +func (s WorkflowDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s WorkflowDetail) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *WorkflowDetail) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "WorkflowDetail"} + if s.ExecutionRole == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionRole")) + } + if s.ExecutionRole != nil && len(*s.ExecutionRole) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ExecutionRole", 20)) + } + if s.WorkflowId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkflowId")) + } + if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExecutionRole sets the ExecutionRole field's value. +func (s *WorkflowDetail) SetExecutionRole(v string) *WorkflowDetail { + s.ExecutionRole = &v + return s +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *WorkflowDetail) SetWorkflowId(v string) *WorkflowDetail { + s.WorkflowId = &v + return s +} + +// Container for the WorkflowDetail data type. It is used by actions that trigger +// a workflow to begin execution. +type WorkflowDetails struct { + _ struct{} `type:"structure"` + + // A trigger that starts a workflow: the workflow begins to execute after a + // file is uploaded. + // + // OnUpload is a required field + OnUpload []*WorkflowDetail `type:"list" required:"true"` +} + +// String returns the string representation +func (s WorkflowDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s WorkflowDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *WorkflowDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "WorkflowDetails"} + if s.OnUpload == nil { + invalidParams.Add(request.NewErrParamRequired("OnUpload")) + } + if s.OnUpload != nil { + for i, v := range s.OnUpload { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnUpload", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOnUpload sets the OnUpload field's value. +func (s *WorkflowDetails) SetOnUpload(v []*WorkflowDetail) *WorkflowDetails { + s.OnUpload = v + return s +} + +// The basic building block of a workflow. +type WorkflowStep struct { + _ struct{} `type:"structure"` + + // Details for a step that performs a file copy. + // + // Consists of the following values: + // + // * A description + // + // * An S3 or EFS location for the destination of the file copy. + // + // * A flag that indicates whether or not to overwrite an existing file of + // the same name. The default is FALSE. + CopyStepDetails *CopyStepDetails `type:"structure"` + + // Details for a step that invokes a lambda function. + // + // Consists of the lambda function name, target, and timeout (in seconds). + CustomStepDetails *CustomStepDetails `type:"structure"` + + // You need to specify the name of the file to be deleted. + DeleteStepDetails *DeleteStepDetails `type:"structure"` + + // Details for a step that creates one or more tags. + // + // You specify one or more tags: each tag contains a key/value pair. + TagStepDetails *TagStepDetails `type:"structure"` + + // Currently, the following step types are supported. + // + // * Copy: copy the file to another location + // + // * Custom: custom step with a lambda target + // + // * Delete: delete the file + // + // * Tag: add a tag to the file + Type *string `type:"string" enum:"WorkflowStepType"` +} + +// String returns the string representation +func (s WorkflowStep) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s WorkflowStep) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *WorkflowStep) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "WorkflowStep"} + if s.CopyStepDetails != nil { + if err := s.CopyStepDetails.Validate(); err != nil { + invalidParams.AddNested("CopyStepDetails", err.(request.ErrInvalidParams)) + } + } + if s.CustomStepDetails != nil { + if err := s.CustomStepDetails.Validate(); err != nil { + invalidParams.AddNested("CustomStepDetails", err.(request.ErrInvalidParams)) + } + } + if s.TagStepDetails != nil { + if err := s.TagStepDetails.Validate(); err != nil { + invalidParams.AddNested("TagStepDetails", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCopyStepDetails sets the CopyStepDetails field's value. +func (s *WorkflowStep) SetCopyStepDetails(v *CopyStepDetails) *WorkflowStep { + s.CopyStepDetails = v + return s +} + +// SetCustomStepDetails sets the CustomStepDetails field's value. +func (s *WorkflowStep) SetCustomStepDetails(v *CustomStepDetails) *WorkflowStep { + s.CustomStepDetails = v + return s +} + +// SetDeleteStepDetails sets the DeleteStepDetails field's value. +func (s *WorkflowStep) SetDeleteStepDetails(v *DeleteStepDetails) *WorkflowStep { + s.DeleteStepDetails = v + return s +} + +// SetTagStepDetails sets the TagStepDetails field's value. +func (s *WorkflowStep) SetTagStepDetails(v *TagStepDetails) *WorkflowStep { + s.TagStepDetails = v + return s +} + +// SetType sets the Type field's value. +func (s *WorkflowStep) SetType(v string) *WorkflowStep { + s.Type = &v + return s +} + +const ( + // CustomStepStatusSuccess is a CustomStepStatus enum value + CustomStepStatusSuccess = "SUCCESS" + + // CustomStepStatusFailure is a CustomStepStatus enum value + CustomStepStatusFailure = "FAILURE" +) + +// CustomStepStatus_Values returns all elements of the CustomStepStatus enum +func CustomStepStatus_Values() []string { + return []string{ + CustomStepStatusSuccess, + CustomStepStatusFailure, + } +} + const ( // DomainS3 is a Domain enum value DomainS3 = "S3" @@ -7827,6 +10616,42 @@ func EndpointType_Values() []string { } } +const ( + // ExecutionErrorTypePermissionDenied is a ExecutionErrorType enum value + ExecutionErrorTypePermissionDenied = "PERMISSION_DENIED" +) + +// ExecutionErrorType_Values returns all elements of the ExecutionErrorType enum +func ExecutionErrorType_Values() []string { + return []string{ + ExecutionErrorTypePermissionDenied, + } +} + +const ( + // ExecutionStatusInProgress is a ExecutionStatus enum value + ExecutionStatusInProgress = "IN_PROGRESS" + + // ExecutionStatusCompleted is a ExecutionStatus enum value + ExecutionStatusCompleted = "COMPLETED" + + // ExecutionStatusException is a ExecutionStatus enum value + ExecutionStatusException = "EXCEPTION" + + // ExecutionStatusHandlingException is a ExecutionStatus enum value + ExecutionStatusHandlingException = "HANDLING_EXCEPTION" +) + +// ExecutionStatus_Values returns all elements of the ExecutionStatus enum +func ExecutionStatus_Values() []string { + return []string{ + ExecutionStatusInProgress, + ExecutionStatusCompleted, + ExecutionStatusException, + ExecutionStatusHandlingException, + } +} + const ( // HomeDirectoryTypePath is a HomeDirectoryType enum value HomeDirectoryTypePath = "PATH" @@ -7869,6 +10694,22 @@ func IdentityProviderType_Values() []string { } } +const ( + // OverwriteExistingTrue is a OverwriteExisting enum value + OverwriteExistingTrue = "TRUE" + + // OverwriteExistingFalse is a OverwriteExisting enum value + OverwriteExistingFalse = "FALSE" +) + +// OverwriteExisting_Values returns all elements of the OverwriteExisting enum +func OverwriteExisting_Values() []string { + return []string{ + OverwriteExistingTrue, + OverwriteExistingFalse, + } +} + const ( // ProtocolSftp is a Protocol enum value ProtocolSftp = "SFTP" @@ -7930,3 +10771,27 @@ func State_Values() []string { StateStopFailed, } } + +const ( + // WorkflowStepTypeCopy is a WorkflowStepType enum value + WorkflowStepTypeCopy = "COPY" + + // WorkflowStepTypeCustom is a WorkflowStepType enum value + WorkflowStepTypeCustom = "CUSTOM" + + // WorkflowStepTypeTag is a WorkflowStepType enum value + WorkflowStepTypeTag = "TAG" + + // WorkflowStepTypeDelete is a WorkflowStepType enum value + WorkflowStepTypeDelete = "DELETE" +) + +// WorkflowStepType_Values returns all elements of the WorkflowStepType enum +func WorkflowStepType_Values() []string { + return []string{ + WorkflowStepTypeCopy, + WorkflowStepTypeCustom, + WorkflowStepTypeTag, + WorkflowStepTypeDelete, + } +} diff --git a/service/transfer/errors.go b/service/transfer/errors.go index 831745832d0..44b4f95fb88 100644 --- a/service/transfer/errors.go +++ b/service/transfer/errors.go @@ -17,7 +17,7 @@ const ( // ErrCodeConflictException for service response error code // "ConflictException". // - // This exception is thrown when the UpdatServer is called for a file transfer + // This exception is thrown when the UpdateServer is called for a file transfer // protocol-enabled server that has VPC as the endpoint type and the server's // VpcEndpointID is not in the available state. ErrCodeConflictException = "ConflictException" diff --git a/service/transfer/transferiface/interface.go b/service/transfer/transferiface/interface.go index 78de131ec87..9b045702da4 100644 --- a/service/transfer/transferiface/interface.go +++ b/service/transfer/transferiface/interface.go @@ -72,6 +72,10 @@ type TransferAPI interface { CreateUserWithContext(aws.Context, *transfer.CreateUserInput, ...request.Option) (*transfer.CreateUserOutput, error) CreateUserRequest(*transfer.CreateUserInput) (*request.Request, *transfer.CreateUserOutput) + CreateWorkflow(*transfer.CreateWorkflowInput) (*transfer.CreateWorkflowOutput, error) + CreateWorkflowWithContext(aws.Context, *transfer.CreateWorkflowInput, ...request.Option) (*transfer.CreateWorkflowOutput, error) + CreateWorkflowRequest(*transfer.CreateWorkflowInput) (*request.Request, *transfer.CreateWorkflowOutput) + DeleteAccess(*transfer.DeleteAccessInput) (*transfer.DeleteAccessOutput, error) DeleteAccessWithContext(aws.Context, *transfer.DeleteAccessInput, ...request.Option) (*transfer.DeleteAccessOutput, error) DeleteAccessRequest(*transfer.DeleteAccessInput) (*request.Request, *transfer.DeleteAccessOutput) @@ -88,10 +92,18 @@ type TransferAPI interface { DeleteUserWithContext(aws.Context, *transfer.DeleteUserInput, ...request.Option) (*transfer.DeleteUserOutput, error) DeleteUserRequest(*transfer.DeleteUserInput) (*request.Request, *transfer.DeleteUserOutput) + DeleteWorkflow(*transfer.DeleteWorkflowInput) (*transfer.DeleteWorkflowOutput, error) + DeleteWorkflowWithContext(aws.Context, *transfer.DeleteWorkflowInput, ...request.Option) (*transfer.DeleteWorkflowOutput, error) + DeleteWorkflowRequest(*transfer.DeleteWorkflowInput) (*request.Request, *transfer.DeleteWorkflowOutput) + DescribeAccess(*transfer.DescribeAccessInput) (*transfer.DescribeAccessOutput, error) DescribeAccessWithContext(aws.Context, *transfer.DescribeAccessInput, ...request.Option) (*transfer.DescribeAccessOutput, error) DescribeAccessRequest(*transfer.DescribeAccessInput) (*request.Request, *transfer.DescribeAccessOutput) + DescribeExecution(*transfer.DescribeExecutionInput) (*transfer.DescribeExecutionOutput, error) + DescribeExecutionWithContext(aws.Context, *transfer.DescribeExecutionInput, ...request.Option) (*transfer.DescribeExecutionOutput, error) + DescribeExecutionRequest(*transfer.DescribeExecutionInput) (*request.Request, *transfer.DescribeExecutionOutput) + DescribeSecurityPolicy(*transfer.DescribeSecurityPolicyInput) (*transfer.DescribeSecurityPolicyOutput, error) DescribeSecurityPolicyWithContext(aws.Context, *transfer.DescribeSecurityPolicyInput, ...request.Option) (*transfer.DescribeSecurityPolicyOutput, error) DescribeSecurityPolicyRequest(*transfer.DescribeSecurityPolicyInput) (*request.Request, *transfer.DescribeSecurityPolicyOutput) @@ -104,6 +116,10 @@ type TransferAPI interface { DescribeUserWithContext(aws.Context, *transfer.DescribeUserInput, ...request.Option) (*transfer.DescribeUserOutput, error) DescribeUserRequest(*transfer.DescribeUserInput) (*request.Request, *transfer.DescribeUserOutput) + DescribeWorkflow(*transfer.DescribeWorkflowInput) (*transfer.DescribeWorkflowOutput, error) + DescribeWorkflowWithContext(aws.Context, *transfer.DescribeWorkflowInput, ...request.Option) (*transfer.DescribeWorkflowOutput, error) + DescribeWorkflowRequest(*transfer.DescribeWorkflowInput) (*request.Request, *transfer.DescribeWorkflowOutput) + ImportSshPublicKey(*transfer.ImportSshPublicKeyInput) (*transfer.ImportSshPublicKeyOutput, error) ImportSshPublicKeyWithContext(aws.Context, *transfer.ImportSshPublicKeyInput, ...request.Option) (*transfer.ImportSshPublicKeyOutput, error) ImportSshPublicKeyRequest(*transfer.ImportSshPublicKeyInput) (*request.Request, *transfer.ImportSshPublicKeyOutput) @@ -115,6 +131,13 @@ type TransferAPI interface { ListAccessesPages(*transfer.ListAccessesInput, func(*transfer.ListAccessesOutput, bool) bool) error ListAccessesPagesWithContext(aws.Context, *transfer.ListAccessesInput, func(*transfer.ListAccessesOutput, bool) bool, ...request.Option) error + ListExecutions(*transfer.ListExecutionsInput) (*transfer.ListExecutionsOutput, error) + ListExecutionsWithContext(aws.Context, *transfer.ListExecutionsInput, ...request.Option) (*transfer.ListExecutionsOutput, error) + ListExecutionsRequest(*transfer.ListExecutionsInput) (*request.Request, *transfer.ListExecutionsOutput) + + ListExecutionsPages(*transfer.ListExecutionsInput, func(*transfer.ListExecutionsOutput, bool) bool) error + ListExecutionsPagesWithContext(aws.Context, *transfer.ListExecutionsInput, func(*transfer.ListExecutionsOutput, bool) bool, ...request.Option) error + ListSecurityPolicies(*transfer.ListSecurityPoliciesInput) (*transfer.ListSecurityPoliciesOutput, error) ListSecurityPoliciesWithContext(aws.Context, *transfer.ListSecurityPoliciesInput, ...request.Option) (*transfer.ListSecurityPoliciesOutput, error) ListSecurityPoliciesRequest(*transfer.ListSecurityPoliciesInput) (*request.Request, *transfer.ListSecurityPoliciesOutput) @@ -143,6 +166,17 @@ type TransferAPI interface { ListUsersPages(*transfer.ListUsersInput, func(*transfer.ListUsersOutput, bool) bool) error ListUsersPagesWithContext(aws.Context, *transfer.ListUsersInput, func(*transfer.ListUsersOutput, bool) bool, ...request.Option) error + ListWorkflows(*transfer.ListWorkflowsInput) (*transfer.ListWorkflowsOutput, error) + ListWorkflowsWithContext(aws.Context, *transfer.ListWorkflowsInput, ...request.Option) (*transfer.ListWorkflowsOutput, error) + ListWorkflowsRequest(*transfer.ListWorkflowsInput) (*request.Request, *transfer.ListWorkflowsOutput) + + ListWorkflowsPages(*transfer.ListWorkflowsInput, func(*transfer.ListWorkflowsOutput, bool) bool) error + ListWorkflowsPagesWithContext(aws.Context, *transfer.ListWorkflowsInput, func(*transfer.ListWorkflowsOutput, bool) bool, ...request.Option) error + + SendWorkflowStepState(*transfer.SendWorkflowStepStateInput) (*transfer.SendWorkflowStepStateOutput, error) + SendWorkflowStepStateWithContext(aws.Context, *transfer.SendWorkflowStepStateInput, ...request.Option) (*transfer.SendWorkflowStepStateOutput, error) + SendWorkflowStepStateRequest(*transfer.SendWorkflowStepStateInput) (*request.Request, *transfer.SendWorkflowStepStateOutput) + StartServer(*transfer.StartServerInput) (*transfer.StartServerOutput, error) StartServerWithContext(aws.Context, *transfer.StartServerInput, ...request.Option) (*transfer.StartServerOutput, error) StartServerRequest(*transfer.StartServerInput) (*request.Request, *transfer.StartServerOutput)