From a8e363e5212b9bd4b806bdd285e2dfd9fc619b25 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jul 2020 19:15:26 +0000 Subject: [PATCH] Update module aws/aws-sdk-go to v1.33.6 --- go.mod | 2 +- go.sum | 4 +- .../aws/aws-sdk-go/aws/endpoints/defaults.go | 140 +- .../github.com/aws/aws-sdk-go/aws/version.go | 2 +- .../aws/aws-sdk-go/service/amplify/api.go | 2 +- .../aws/aws-sdk-go/service/amplify/doc.go | 5 +- .../aws/aws-sdk-go/service/appmesh/api.go | 9089 ++++-- .../aws/aws-sdk-go/service/appsync/api.go | 98 +- .../aws/aws-sdk-go/service/cloudfront/api.go | 37 +- .../aws/aws-sdk-go/service/cloudhsmv2/api.go | 29 +- .../aws-sdk-go/service/cloudhsmv2/errors.go | 3 + .../service/cloudwatchevents/api.go | 176 +- .../service/cloudwatchevents/errors.go | 7 + .../aws/aws-sdk-go/service/codebuild/api.go | 106 +- .../aws/aws-sdk-go/service/ec2/api.go | 197 +- .../aws/aws-sdk-go/service/ecr/api.go | 70 + .../aws/aws-sdk-go/service/ecr/errors.go | 8 + .../aws/aws-sdk-go/service/efs/api.go | 568 +- .../aws/aws-sdk-go/service/efs/errors.go | 8 + .../aws/aws-sdk-go/service/elasticache/api.go | 72 +- .../aws-sdk-go/service/forecastservice/api.go | 1049 +- .../aws/aws-sdk-go/service/glue/api.go | 532 +- .../aws-sdk-go/service/imagebuilder/api.go | 16 +- .../aws-sdk-go/service/lakeformation/api.go | 178 +- .../aws-sdk-go/service/organizations/api.go | 37 +- .../aws/aws-sdk-go/service/quicksight/api.go | 23313 +++++++++------- .../aws/aws-sdk-go/service/rds/api.go | 148 +- .../aws/aws-sdk-go/service/sagemaker/api.go | 654 +- .../aws-sdk-go/service/secretsmanager/api.go | 819 +- .../aws-sdk-go/service/secretsmanager/doc.go | 53 +- .../service/secretsmanager/errors.go | 7 + .../aws/aws-sdk-go/service/securityhub/api.go | 822 + .../aws/aws-sdk-go/service/sns/api.go | 211 +- .../aws-sdk-go/service/storagegateway/api.go | 261 +- .../aws/aws-sdk-go/service/wafv2/api.go | 401 +- vendor/modules.txt | 2 +- 36 files changed, 26244 insertions(+), 12882 deletions(-) diff --git a/go.mod b/go.mod index cce30ee2666..31a98462889 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/terraform-providers/terraform-provider-aws go 1.13 require ( - github.com/aws/aws-sdk-go v1.32.12 + github.com/aws/aws-sdk-go v1.33.6 github.com/beevik/etree v1.1.0 github.com/bflad/tfproviderdocs v0.6.0 github.com/bflad/tfproviderlint v0.14.0 diff --git a/go.sum b/go.sum index f24bcaceb51..a639519c156 100644 --- a/go.sum +++ b/go.sum @@ -40,8 +40,8 @@ github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgI github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM= github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.31.9/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= -github.com/aws/aws-sdk-go v1.32.12 h1:l/djCeLI4ggBFWLlYUGTqkHraoLnVMubNlLXPdEtoYc= -github.com/aws/aws-sdk-go v1.32.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= +github.com/aws/aws-sdk-go v1.33.6 h1:YLoUeMSx05kHwhS+HLDSpdYYpPzJMyp6hn1cWsJ6a+U= +github.com/aws/aws-sdk-go v1.33.6/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs= github.com/beevik/etree v1.1.0/go.mod h1:r8Aw8JqVegEf0w2fDnATrX9VpkMcyFeM0FhwO62wh+A= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= diff --git a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go index 8bde8da5b39..d4ad56ff977 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go @@ -662,6 +662,7 @@ 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{}, "eu-central-1": endpoint{}, @@ -684,11 +685,16 @@ var awsPartition = partition{ "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-1": endpoint{}, "us-west-2": endpoint{}, }, }, @@ -2582,6 +2588,7 @@ var awsPartition = partition{ Protocols: []string{"https"}, }, Endpoints: endpoints{ + "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, "ap-south-1": endpoint{}, @@ -2683,11 +2690,12 @@ var awsPartition = partition{ Region: "us-west-2", }, }, - "sa-east-1": endpoint{}, - "us-east-1": endpoint{}, - "us-east-2": endpoint{}, - "us-west-1": endpoint{}, - "us-west-2": endpoint{}, + "me-south-1": endpoint{}, + "sa-east-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-1": endpoint{}, + "us-west-2": endpoint{}, }, }, "forecast": service{ @@ -3537,6 +3545,52 @@ var awsPartition = partition{ "us-west-2": endpoint{}, }, }, + "macie2": service{ + + Endpoints: endpoints{ + "ap-east-1": endpoint{}, + "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{}, + "fips-us-east-1": endpoint{ + Hostname: "macie2-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + "fips-us-east-2": endpoint{ + Hostname: "macie2-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + "fips-us-west-1": endpoint{ + Hostname: "macie2-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + "fips-us-west-2": endpoint{ + Hostname: "macie2-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + "sa-east-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-1": endpoint{}, + "us-west-2": endpoint{}, + }, + }, "managedblockchain": service{ Endpoints: endpoints{ @@ -3934,6 +3988,12 @@ var awsPartition = partition{ Region: "us-east-2", }, }, + "us-west-1": endpoint{ + Hostname: "rds.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, "us-west-2": endpoint{ Hostname: "rds.us-west-2.amazonaws.com", CredentialScope: credentialScope{ @@ -4280,6 +4340,7 @@ var awsPartition = partition{ "ram": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -4289,6 +4350,7 @@ var awsPartition = partition{ "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, "eu-north-1": endpoint{}, + "eu-south-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, @@ -4423,10 +4485,34 @@ var awsPartition = partition{ "eu-central-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, - "us-east-1": endpoint{}, - "us-east-2": endpoint{}, - "us-west-1": endpoint{}, - "us-west-2": endpoint{}, + "rekognition-fips.us-east-1": endpoint{ + Hostname: "rekognition-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + "rekognition-fips.us-east-2": endpoint{ + Hostname: "rekognition-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + "rekognition-fips.us-west-1": endpoint{ + Hostname: "rekognition-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + "rekognition-fips.us-west-2": endpoint{ + Hostname: "rekognition-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-1": endpoint{}, + "us-west-2": endpoint{}, }, }, "resource-groups": service{ @@ -4514,6 +4600,7 @@ var awsPartition = partition{ Protocols: []string{"https"}, }, Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -4523,6 +4610,7 @@ var awsPartition = partition{ "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, "eu-north-1": endpoint{}, + "eu-south-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, @@ -6329,6 +6417,19 @@ var awscnPartition = partition{ }, }, }, + "ce": service{ + PartitionEndpoint: "aws-cn-global", + IsRegionalized: boxedFalse, + + Endpoints: endpoints{ + "aws-cn-global": endpoint{ + Hostname: "ce.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, + }, + }, "cloudformation": service{ Endpoints: endpoints{ @@ -6811,13 +6912,20 @@ var awscnPartition = partition{ "snowball": service{ Endpoints: endpoints{ - "cn-north-1": endpoint{}, + "cn-north-1": endpoint{}, + "cn-northwest-1": endpoint{}, "fips-cn-north-1": endpoint{ Hostname: "snowball-fips.cn-north-1.amazonaws.com.cn", CredentialScope: credentialScope{ Region: "cn-north-1", }, }, + "fips-cn-northwest-1": endpoint{ + Hostname: "snowball-fips.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, }, }, "sns": service{ @@ -7308,6 +7416,12 @@ var awsusgovPartition = partition{ "comprehendmedical": service{ Endpoints: endpoints{ + "fips-us-gov-west-1": endpoint{ + Hostname: "comprehendmedical-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, "us-gov-west-1": endpoint{}, }, }, @@ -8013,6 +8127,12 @@ var awsusgovPartition = partition{ "rekognition": service{ Endpoints: endpoints{ + "rekognition-fips.us-gov-west-1": endpoint{ + Hostname: "rekognition-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, "us-gov-west-1": endpoint{}, }, }, diff --git a/vendor/github.com/aws/aws-sdk-go/aws/version.go b/vendor/github.com/aws/aws-sdk-go/aws/version.go index 298adf57b75..7b0f8d82268 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/version.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.32.12" +const SDKVersion = "1.33.6" diff --git a/vendor/github.com/aws/aws-sdk-go/service/amplify/api.go b/vendor/github.com/aws/aws-sdk-go/service/amplify/api.go index 082238f4253..c12ac6bd1d3 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/amplify/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/amplify/api.go @@ -3382,7 +3382,7 @@ type App struct { // EnableBranchAutoBuild is a required field EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean" required:"true"` - // Automatically disconnects a branch in the Amplify Console when you delete + // Automatically disconnect a branch in the Amplify Console when you delete // a branch from your Git repository. EnableBranchAutoDeletion *bool `locationName:"enableBranchAutoDeletion" type:"boolean"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/amplify/doc.go b/vendor/github.com/aws/aws-sdk-go/service/amplify/doc.go index 4f166f1e874..e1395d3fd2f 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/amplify/doc.go +++ b/vendor/github.com/aws/aws-sdk-go/service/amplify/doc.go @@ -3,16 +3,13 @@ // Package amplify provides the client and types for making API // requests to AWS Amplify. // -// Welcome to the AWS Amplify API documentation. This reference provides descriptions -// of the actions and data types for the Amplify API. -// // Amplify enables developers to develop and deploy cloud-powered mobile and // web apps. The Amplify Console provides a continuous delivery and hosting // service for web applications. For more information, see the Amplify Console // User Guide (https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html). // The Amplify Framework is a comprehensive set of SDKs, libraries, tools, and // documentation for client app development. For more information, see the Amplify -// Framework. (https://aws-amplify.github.io/docs/) +// Framework. (https://docs.amplify.aws/) // // See https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25 for more information on this service. // diff --git a/vendor/github.com/aws/aws-sdk-go/service/appmesh/api.go b/vendor/github.com/aws/aws-sdk-go/service/appmesh/api.go index 593060b6621..b9f33c52388 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/appmesh/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/appmesh/api.go @@ -13,6 +13,119 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateGatewayRoute = "CreateGatewayRoute" + +// CreateGatewayRouteRequest generates a "aws/request.Request" representing the +// client's request for the CreateGatewayRoute 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 CreateGatewayRoute for more information on using the CreateGatewayRoute +// 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 CreateGatewayRouteRequest method. +// req, resp := client.CreateGatewayRouteRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRoute +func (c *AppMesh) CreateGatewayRouteRequest(input *CreateGatewayRouteInput) (req *request.Request, output *CreateGatewayRouteOutput) { + op := &request.Operation{ + Name: opCreateGatewayRoute, + HTTPMethod: "PUT", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes", + } + + if input == nil { + input = &CreateGatewayRouteInput{} + } + + output = &CreateGatewayRouteOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateGatewayRoute API operation for AWS App Mesh. +// +// Creates a gateway route. +// +// A gateway route is attached to a virtual gateway and routes traffic to an +// existing virtual service. If a route matches a request, it can distribute +// traffic to a target virtual service. +// +// For more information about gateway routes, see Gateway routes (https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.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 App Mesh's +// API operation CreateGatewayRoute for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ConflictException +// The request contains a client token that was used for a previous update resource +// call with different specifications. Try the request again with a new client +// token. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * LimitExceededException +// You have exceeded a service limit for your account. For more information, +// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) +// in the AWS App Mesh User Guide. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRoute +func (c *AppMesh) CreateGatewayRoute(input *CreateGatewayRouteInput) (*CreateGatewayRouteOutput, error) { + req, out := c.CreateGatewayRouteRequest(input) + return out, req.Send() +} + +// CreateGatewayRouteWithContext is the same as CreateGatewayRoute with the addition of +// the ability to pass a context and additional request options. +// +// See CreateGatewayRoute 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 *AppMesh) CreateGatewayRouteWithContext(ctx aws.Context, input *CreateGatewayRouteInput, opts ...request.Option) (*CreateGatewayRouteOutput, error) { + req, out := c.CreateGatewayRouteRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateMesh = "CreateMesh" // CreateMeshRequest generates a "aws/request.Request" representing the @@ -239,6 +352,121 @@ func (c *AppMesh) CreateRouteWithContext(ctx aws.Context, input *CreateRouteInpu return out, req.Send() } +const opCreateVirtualGateway = "CreateVirtualGateway" + +// CreateVirtualGatewayRequest generates a "aws/request.Request" representing the +// client's request for the CreateVirtualGateway 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 CreateVirtualGateway for more information on using the CreateVirtualGateway +// 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 CreateVirtualGatewayRequest method. +// req, resp := client.CreateVirtualGatewayRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGateway +func (c *AppMesh) CreateVirtualGatewayRequest(input *CreateVirtualGatewayInput) (req *request.Request, output *CreateVirtualGatewayOutput) { + op := &request.Operation{ + Name: opCreateVirtualGateway, + HTTPMethod: "PUT", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateways", + } + + if input == nil { + input = &CreateVirtualGatewayInput{} + } + + output = &CreateVirtualGatewayOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateVirtualGateway API operation for AWS App Mesh. +// +// Creates a virtual gateway. +// +// A virtual gateway allows resources outside your mesh to communicate to resources +// that are inside your mesh. The virtual gateway represents an Envoy proxy +// running in an Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 +// instance. Unlike a virtual node, which represents an Envoy running with an +// application, a virtual gateway represents Envoy deployed by itself. +// +// For more information about virtual gateways, see Virtual gateways (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.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 App Mesh's +// API operation CreateVirtualGateway for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ConflictException +// The request contains a client token that was used for a previous update resource +// call with different specifications. Try the request again with a new client +// token. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * LimitExceededException +// You have exceeded a service limit for your account. For more information, +// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) +// in the AWS App Mesh User Guide. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGateway +func (c *AppMesh) CreateVirtualGateway(input *CreateVirtualGatewayInput) (*CreateVirtualGatewayOutput, error) { + req, out := c.CreateVirtualGatewayRequest(input) + return out, req.Send() +} + +// CreateVirtualGatewayWithContext is the same as CreateVirtualGateway with the addition of +// the ability to pass a context and additional request options. +// +// See CreateVirtualGateway 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 *AppMesh) CreateVirtualGatewayWithContext(ctx aws.Context, input *CreateVirtualGatewayInput, opts ...request.Option) (*CreateVirtualGatewayOutput, error) { + req, out := c.CreateVirtualGatewayRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateVirtualNode = "CreateVirtualNode" // CreateVirtualNodeRequest generates a "aws/request.Request" representing the @@ -599,6 +827,107 @@ func (c *AppMesh) CreateVirtualServiceWithContext(ctx aws.Context, input *Create return out, req.Send() } +const opDeleteGatewayRoute = "DeleteGatewayRoute" + +// DeleteGatewayRouteRequest generates a "aws/request.Request" representing the +// client's request for the DeleteGatewayRoute 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 DeleteGatewayRoute for more information on using the DeleteGatewayRoute +// 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 DeleteGatewayRouteRequest method. +// req, resp := client.DeleteGatewayRouteRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRoute +func (c *AppMesh) DeleteGatewayRouteRequest(input *DeleteGatewayRouteInput) (req *request.Request, output *DeleteGatewayRouteOutput) { + op := &request.Operation{ + Name: opDeleteGatewayRoute, + HTTPMethod: "DELETE", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes/{gatewayRouteName}", + } + + if input == nil { + input = &DeleteGatewayRouteInput{} + } + + output = &DeleteGatewayRouteOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteGatewayRoute API operation for AWS App Mesh. +// +// Deletes an existing gateway route. +// +// 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 App Mesh's +// API operation DeleteGatewayRoute for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ResourceInUseException +// You can't delete the specified resource because it's in use or required by +// another resource. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRoute +func (c *AppMesh) DeleteGatewayRoute(input *DeleteGatewayRouteInput) (*DeleteGatewayRouteOutput, error) { + req, out := c.DeleteGatewayRouteRequest(input) + return out, req.Send() +} + +// DeleteGatewayRouteWithContext is the same as DeleteGatewayRoute with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteGatewayRoute 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 *AppMesh) DeleteGatewayRouteWithContext(ctx aws.Context, input *DeleteGatewayRouteInput, opts ...request.Option) (*DeleteGatewayRouteOutput, error) { + req, out := c.DeleteGatewayRouteRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMesh = "DeleteMesh" // DeleteMeshRequest generates a "aws/request.Request" representing the @@ -804,10 +1133,112 @@ func (c *AppMesh) DeleteRouteWithContext(ctx aws.Context, input *DeleteRouteInpu return out, req.Send() } -const opDeleteVirtualNode = "DeleteVirtualNode" +const opDeleteVirtualGateway = "DeleteVirtualGateway" -// DeleteVirtualNodeRequest generates a "aws/request.Request" representing the -// client's request for the DeleteVirtualNode operation. The "output" return +// DeleteVirtualGatewayRequest generates a "aws/request.Request" representing the +// client's request for the DeleteVirtualGateway 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 DeleteVirtualGateway for more information on using the DeleteVirtualGateway +// 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 DeleteVirtualGatewayRequest method. +// req, resp := client.DeleteVirtualGatewayRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGateway +func (c *AppMesh) DeleteVirtualGatewayRequest(input *DeleteVirtualGatewayInput) (req *request.Request, output *DeleteVirtualGatewayOutput) { + op := &request.Operation{ + Name: opDeleteVirtualGateway, + HTTPMethod: "DELETE", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateways/{virtualGatewayName}", + } + + if input == nil { + input = &DeleteVirtualGatewayInput{} + } + + output = &DeleteVirtualGatewayOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteVirtualGateway API operation for AWS App Mesh. +// +// Deletes an existing virtual gateway. You cannot delete a virtual gateway +// if any gateway routes are associated to 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 +// the error. +// +// See the AWS API reference guide for AWS App Mesh's +// API operation DeleteVirtualGateway for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ResourceInUseException +// You can't delete the specified resource because it's in use or required by +// another resource. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGateway +func (c *AppMesh) DeleteVirtualGateway(input *DeleteVirtualGatewayInput) (*DeleteVirtualGatewayOutput, error) { + req, out := c.DeleteVirtualGatewayRequest(input) + return out, req.Send() +} + +// DeleteVirtualGatewayWithContext is the same as DeleteVirtualGateway with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteVirtualGateway 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 *AppMesh) DeleteVirtualGatewayWithContext(ctx aws.Context, input *DeleteVirtualGatewayInput, opts ...request.Option) (*DeleteVirtualGatewayOutput, error) { + req, out := c.DeleteVirtualGatewayRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteVirtualNode = "DeleteVirtualNode" + +// DeleteVirtualNodeRequest generates a "aws/request.Request" representing the +// client's request for the DeleteVirtualNode operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // @@ -1113,6 +1544,103 @@ func (c *AppMesh) DeleteVirtualServiceWithContext(ctx aws.Context, input *Delete return out, req.Send() } +const opDescribeGatewayRoute = "DescribeGatewayRoute" + +// DescribeGatewayRouteRequest generates a "aws/request.Request" representing the +// client's request for the DescribeGatewayRoute 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 DescribeGatewayRoute for more information on using the DescribeGatewayRoute +// 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 DescribeGatewayRouteRequest method. +// req, resp := client.DescribeGatewayRouteRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRoute +func (c *AppMesh) DescribeGatewayRouteRequest(input *DescribeGatewayRouteInput) (req *request.Request, output *DescribeGatewayRouteOutput) { + op := &request.Operation{ + Name: opDescribeGatewayRoute, + HTTPMethod: "GET", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes/{gatewayRouteName}", + } + + if input == nil { + input = &DescribeGatewayRouteInput{} + } + + output = &DescribeGatewayRouteOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeGatewayRoute API operation for AWS App Mesh. +// +// Describes an existing gateway route. +// +// 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 App Mesh's +// API operation DescribeGatewayRoute for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRoute +func (c *AppMesh) DescribeGatewayRoute(input *DescribeGatewayRouteInput) (*DescribeGatewayRouteOutput, error) { + req, out := c.DescribeGatewayRouteRequest(input) + return out, req.Send() +} + +// DescribeGatewayRouteWithContext is the same as DescribeGatewayRoute with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeGatewayRoute 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 *AppMesh) DescribeGatewayRouteWithContext(ctx aws.Context, input *DescribeGatewayRouteInput, opts ...request.Option) (*DescribeGatewayRouteOutput, error) { + req, out := c.DescribeGatewayRouteRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeMesh = "DescribeMesh" // DescribeMeshRequest generates a "aws/request.Request" representing the @@ -1307,6 +1835,103 @@ func (c *AppMesh) DescribeRouteWithContext(ctx aws.Context, input *DescribeRoute return out, req.Send() } +const opDescribeVirtualGateway = "DescribeVirtualGateway" + +// DescribeVirtualGatewayRequest generates a "aws/request.Request" representing the +// client's request for the DescribeVirtualGateway 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 DescribeVirtualGateway for more information on using the DescribeVirtualGateway +// 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 DescribeVirtualGatewayRequest method. +// req, resp := client.DescribeVirtualGatewayRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGateway +func (c *AppMesh) DescribeVirtualGatewayRequest(input *DescribeVirtualGatewayInput) (req *request.Request, output *DescribeVirtualGatewayOutput) { + op := &request.Operation{ + Name: opDescribeVirtualGateway, + HTTPMethod: "GET", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateways/{virtualGatewayName}", + } + + if input == nil { + input = &DescribeVirtualGatewayInput{} + } + + output = &DescribeVirtualGatewayOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeVirtualGateway API operation for AWS App Mesh. +// +// Describes an existing virtual gateway. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS App Mesh's +// API operation DescribeVirtualGateway for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGateway +func (c *AppMesh) DescribeVirtualGateway(input *DescribeVirtualGatewayInput) (*DescribeVirtualGatewayOutput, error) { + req, out := c.DescribeVirtualGatewayRequest(input) + return out, req.Send() +} + +// DescribeVirtualGatewayWithContext is the same as DescribeVirtualGateway with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeVirtualGateway 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 *AppMesh) DescribeVirtualGatewayWithContext(ctx aws.Context, input *DescribeVirtualGatewayInput, opts ...request.Option) (*DescribeVirtualGatewayOutput, error) { + req, out := c.DescribeVirtualGatewayRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeVirtualNode = "DescribeVirtualNode" // DescribeVirtualNodeRequest generates a "aws/request.Request" representing the @@ -1598,37 +2223,37 @@ func (c *AppMesh) DescribeVirtualServiceWithContext(ctx aws.Context, input *Desc return out, req.Send() } -const opListMeshes = "ListMeshes" +const opListGatewayRoutes = "ListGatewayRoutes" -// ListMeshesRequest generates a "aws/request.Request" representing the -// client's request for the ListMeshes operation. The "output" return +// ListGatewayRoutesRequest generates a "aws/request.Request" representing the +// client's request for the ListGatewayRoutes 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 ListMeshes for more information on using the ListMeshes +// See ListGatewayRoutes for more information on using the ListGatewayRoutes // 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 ListMeshesRequest method. -// req, resp := client.ListMeshesRequest(params) +// // Example sending a request using the ListGatewayRoutesRequest method. +// req, resp := client.ListGatewayRoutesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes -func (c *AppMesh) ListMeshesRequest(input *ListMeshesInput) (req *request.Request, output *ListMeshesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutes +func (c *AppMesh) ListGatewayRoutesRequest(input *ListGatewayRoutesInput) (req *request.Request, output *ListGatewayRoutesOutput) { op := &request.Operation{ - Name: opListMeshes, + Name: opListGatewayRoutes, HTTPMethod: "GET", - HTTPPath: "/v20190125/meshes", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -1638,24 +2263,25 @@ func (c *AppMesh) ListMeshesRequest(input *ListMeshesInput) (req *request.Reques } if input == nil { - input = &ListMeshesInput{} + input = &ListGatewayRoutesInput{} } - output = &ListMeshesOutput{} + output = &ListGatewayRoutesOutput{} req = c.newRequest(op, input, output) return } -// ListMeshes API operation for AWS App Mesh. +// ListGatewayRoutes API operation for AWS App Mesh. // -// Returns a list of existing service meshes. +// Returns a list of existing gateway routes that are associated to a virtual +// gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS App Mesh's -// API operation ListMeshes for usage and error information. +// API operation ListGatewayRoutes for usage and error information. // // Returned Error Types: // * BadRequestException @@ -1679,33 +2305,188 @@ func (c *AppMesh) ListMeshesRequest(input *ListMeshesInput) (req *request.Reques // for your account. For best results, use an increasing or variable sleep interval // between requests. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes -func (c *AppMesh) ListMeshes(input *ListMeshesInput) (*ListMeshesOutput, error) { - req, out := c.ListMeshesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutes +func (c *AppMesh) ListGatewayRoutes(input *ListGatewayRoutesInput) (*ListGatewayRoutesOutput, error) { + req, out := c.ListGatewayRoutesRequest(input) return out, req.Send() } -// ListMeshesWithContext is the same as ListMeshes with the addition of +// ListGatewayRoutesWithContext is the same as ListGatewayRoutes with the addition of // the ability to pass a context and additional request options. // -// See ListMeshes for details on how to use this API operation. +// See ListGatewayRoutes 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 *AppMesh) ListMeshesWithContext(ctx aws.Context, input *ListMeshesInput, opts ...request.Option) (*ListMeshesOutput, error) { - req, out := c.ListMeshesRequest(input) +func (c *AppMesh) ListGatewayRoutesWithContext(ctx aws.Context, input *ListGatewayRoutesInput, opts ...request.Option) (*ListGatewayRoutesOutput, error) { + req, out := c.ListGatewayRoutesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListMeshesPages iterates over the pages of a ListMeshes operation, +// ListGatewayRoutesPages iterates over the pages of a ListGatewayRoutes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListMeshes method for more information on how to use this operation. +// See ListGatewayRoutes 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 ListGatewayRoutes operation. +// pageNum := 0 +// err := client.ListGatewayRoutesPages(params, +// func(page *appmesh.ListGatewayRoutesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *AppMesh) ListGatewayRoutesPages(input *ListGatewayRoutesInput, fn func(*ListGatewayRoutesOutput, bool) bool) error { + return c.ListGatewayRoutesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListGatewayRoutesPagesWithContext same as ListGatewayRoutesPages 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 *AppMesh) ListGatewayRoutesPagesWithContext(ctx aws.Context, input *ListGatewayRoutesInput, fn func(*ListGatewayRoutesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListGatewayRoutesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListGatewayRoutesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListGatewayRoutesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListMeshes = "ListMeshes" + +// ListMeshesRequest generates a "aws/request.Request" representing the +// client's request for the ListMeshes 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 ListMeshes for more information on using the ListMeshes +// 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 ListMeshesRequest method. +// req, resp := client.ListMeshesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes +func (c *AppMesh) ListMeshesRequest(input *ListMeshesInput) (req *request.Request, output *ListMeshesOutput) { + op := &request.Operation{ + Name: opListMeshes, + HTTPMethod: "GET", + HTTPPath: "/v20190125/meshes", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMeshesInput{} + } + + output = &ListMeshesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMeshes API operation for AWS App Mesh. +// +// Returns a list of existing service meshes. +// +// 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 App Mesh's +// API operation ListMeshes for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes +func (c *AppMesh) ListMeshes(input *ListMeshesInput) (*ListMeshesOutput, error) { + req, out := c.ListMeshesRequest(input) + return out, req.Send() +} + +// ListMeshesWithContext is the same as ListMeshes with the addition of +// the ability to pass a context and additional request options. +// +// See ListMeshes 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 *AppMesh) ListMeshesWithContext(ctx aws.Context, input *ListMeshesInput, opts ...request.Option) (*ListMeshesOutput, error) { + req, out := c.ListMeshesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMeshesPages iterates over the pages of a ListMeshes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMeshes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // @@ -2063,37 +2844,37 @@ func (c *AppMesh) ListTagsForResourcePagesWithContext(ctx aws.Context, input *Li return p.Err() } -const opListVirtualNodes = "ListVirtualNodes" +const opListVirtualGateways = "ListVirtualGateways" -// ListVirtualNodesRequest generates a "aws/request.Request" representing the -// client's request for the ListVirtualNodes operation. The "output" return +// ListVirtualGatewaysRequest generates a "aws/request.Request" representing the +// client's request for the ListVirtualGateways 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 ListVirtualNodes for more information on using the ListVirtualNodes +// See ListVirtualGateways for more information on using the ListVirtualGateways // 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 ListVirtualNodesRequest method. -// req, resp := client.ListVirtualNodesRequest(params) +// // Example sending a request using the ListVirtualGatewaysRequest method. +// req, resp := client.ListVirtualGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes -func (c *AppMesh) ListVirtualNodesRequest(input *ListVirtualNodesInput) (req *request.Request, output *ListVirtualNodesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGateways +func (c *AppMesh) ListVirtualGatewaysRequest(input *ListVirtualGatewaysInput) (req *request.Request, output *ListVirtualGatewaysOutput) { op := &request.Operation{ - Name: opListVirtualNodes, + Name: opListVirtualGateways, HTTPMethod: "GET", - HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateways", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -2103,24 +2884,24 @@ func (c *AppMesh) ListVirtualNodesRequest(input *ListVirtualNodesInput) (req *re } if input == nil { - input = &ListVirtualNodesInput{} + input = &ListVirtualGatewaysInput{} } - output = &ListVirtualNodesOutput{} + output = &ListVirtualGatewaysOutput{} req = c.newRequest(op, input, output) return } -// ListVirtualNodes API operation for AWS App Mesh. +// ListVirtualGateways API operation for AWS App Mesh. // -// Returns a list of existing virtual nodes. +// Returns a list of existing virtual gateways in a service mesh. // // 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 App Mesh's -// API operation ListVirtualNodes for usage and error information. +// API operation ListVirtualGateways for usage and error information. // // Returned Error Types: // * BadRequestException @@ -2144,65 +2925,65 @@ func (c *AppMesh) ListVirtualNodesRequest(input *ListVirtualNodesInput) (req *re // for your account. For best results, use an increasing or variable sleep interval // between requests. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes -func (c *AppMesh) ListVirtualNodes(input *ListVirtualNodesInput) (*ListVirtualNodesOutput, error) { - req, out := c.ListVirtualNodesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGateways +func (c *AppMesh) ListVirtualGateways(input *ListVirtualGatewaysInput) (*ListVirtualGatewaysOutput, error) { + req, out := c.ListVirtualGatewaysRequest(input) return out, req.Send() } -// ListVirtualNodesWithContext is the same as ListVirtualNodes with the addition of +// ListVirtualGatewaysWithContext is the same as ListVirtualGateways with the addition of // the ability to pass a context and additional request options. // -// See ListVirtualNodes for details on how to use this API operation. +// See ListVirtualGateways 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 *AppMesh) ListVirtualNodesWithContext(ctx aws.Context, input *ListVirtualNodesInput, opts ...request.Option) (*ListVirtualNodesOutput, error) { - req, out := c.ListVirtualNodesRequest(input) +func (c *AppMesh) ListVirtualGatewaysWithContext(ctx aws.Context, input *ListVirtualGatewaysInput, opts ...request.Option) (*ListVirtualGatewaysOutput, error) { + req, out := c.ListVirtualGatewaysRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListVirtualNodesPages iterates over the pages of a ListVirtualNodes operation, +// ListVirtualGatewaysPages iterates over the pages of a ListVirtualGateways operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListVirtualNodes method for more information on how to use this operation. +// See ListVirtualGateways 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 ListVirtualNodes operation. +// // Example iterating over at most 3 pages of a ListVirtualGateways operation. // pageNum := 0 -// err := client.ListVirtualNodesPages(params, -// func(page *appmesh.ListVirtualNodesOutput, lastPage bool) bool { +// err := client.ListVirtualGatewaysPages(params, +// func(page *appmesh.ListVirtualGatewaysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *AppMesh) ListVirtualNodesPages(input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool) error { - return c.ListVirtualNodesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *AppMesh) ListVirtualGatewaysPages(input *ListVirtualGatewaysInput, fn func(*ListVirtualGatewaysOutput, bool) bool) error { + return c.ListVirtualGatewaysPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListVirtualNodesPagesWithContext same as ListVirtualNodesPages except +// ListVirtualGatewaysPagesWithContext same as ListVirtualGatewaysPages 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 *AppMesh) ListVirtualNodesPagesWithContext(ctx aws.Context, input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool, opts ...request.Option) error { +func (c *AppMesh) ListVirtualGatewaysPagesWithContext(ctx aws.Context, input *ListVirtualGatewaysInput, fn func(*ListVirtualGatewaysOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListVirtualNodesInput + var inCpy *ListVirtualGatewaysInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListVirtualNodesRequest(inCpy) + req, _ := c.ListVirtualGatewaysRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2210,7 +2991,7 @@ func (c *AppMesh) ListVirtualNodesPagesWithContext(ctx aws.Context, input *ListV } for p.Next() { - if !fn(p.Page().(*ListVirtualNodesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListVirtualGatewaysOutput), !p.HasNextPage()) { break } } @@ -2218,37 +2999,37 @@ func (c *AppMesh) ListVirtualNodesPagesWithContext(ctx aws.Context, input *ListV return p.Err() } -const opListVirtualRouters = "ListVirtualRouters" +const opListVirtualNodes = "ListVirtualNodes" -// ListVirtualRoutersRequest generates a "aws/request.Request" representing the -// client's request for the ListVirtualRouters operation. The "output" return +// ListVirtualNodesRequest generates a "aws/request.Request" representing the +// client's request for the ListVirtualNodes 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 ListVirtualRouters for more information on using the ListVirtualRouters +// See ListVirtualNodes for more information on using the ListVirtualNodes // 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 ListVirtualRoutersRequest method. -// req, resp := client.ListVirtualRoutersRequest(params) +// // Example sending a request using the ListVirtualNodesRequest method. +// req, resp := client.ListVirtualNodesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters -func (c *AppMesh) ListVirtualRoutersRequest(input *ListVirtualRoutersInput) (req *request.Request, output *ListVirtualRoutersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes +func (c *AppMesh) ListVirtualNodesRequest(input *ListVirtualNodesInput) (req *request.Request, output *ListVirtualNodesOutput) { op := &request.Operation{ - Name: opListVirtualRouters, + Name: opListVirtualNodes, HTTPMethod: "GET", - HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters", + HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -2258,24 +3039,24 @@ func (c *AppMesh) ListVirtualRoutersRequest(input *ListVirtualRoutersInput) (req } if input == nil { - input = &ListVirtualRoutersInput{} + input = &ListVirtualNodesInput{} } - output = &ListVirtualRoutersOutput{} + output = &ListVirtualNodesOutput{} req = c.newRequest(op, input, output) return } -// ListVirtualRouters API operation for AWS App Mesh. +// ListVirtualNodes API operation for AWS App Mesh. // -// Returns a list of existing virtual routers in a service mesh. +// Returns a list of existing virtual nodes. // // 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 App Mesh's -// API operation ListVirtualRouters for usage and error information. +// API operation ListVirtualNodes for usage and error information. // // Returned Error Types: // * BadRequestException @@ -2299,65 +3080,65 @@ func (c *AppMesh) ListVirtualRoutersRequest(input *ListVirtualRoutersInput) (req // for your account. For best results, use an increasing or variable sleep interval // between requests. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters -func (c *AppMesh) ListVirtualRouters(input *ListVirtualRoutersInput) (*ListVirtualRoutersOutput, error) { - req, out := c.ListVirtualRoutersRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes +func (c *AppMesh) ListVirtualNodes(input *ListVirtualNodesInput) (*ListVirtualNodesOutput, error) { + req, out := c.ListVirtualNodesRequest(input) return out, req.Send() } -// ListVirtualRoutersWithContext is the same as ListVirtualRouters with the addition of +// ListVirtualNodesWithContext is the same as ListVirtualNodes with the addition of // the ability to pass a context and additional request options. // -// See ListVirtualRouters for details on how to use this API operation. +// See ListVirtualNodes 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 *AppMesh) ListVirtualRoutersWithContext(ctx aws.Context, input *ListVirtualRoutersInput, opts ...request.Option) (*ListVirtualRoutersOutput, error) { - req, out := c.ListVirtualRoutersRequest(input) +func (c *AppMesh) ListVirtualNodesWithContext(ctx aws.Context, input *ListVirtualNodesInput, opts ...request.Option) (*ListVirtualNodesOutput, error) { + req, out := c.ListVirtualNodesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListVirtualRoutersPages iterates over the pages of a ListVirtualRouters operation, +// ListVirtualNodesPages iterates over the pages of a ListVirtualNodes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListVirtualRouters method for more information on how to use this operation. +// See ListVirtualNodes 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 ListVirtualRouters operation. +// // Example iterating over at most 3 pages of a ListVirtualNodes operation. // pageNum := 0 -// err := client.ListVirtualRoutersPages(params, -// func(page *appmesh.ListVirtualRoutersOutput, lastPage bool) bool { +// err := client.ListVirtualNodesPages(params, +// func(page *appmesh.ListVirtualNodesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *AppMesh) ListVirtualRoutersPages(input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool) error { - return c.ListVirtualRoutersPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *AppMesh) ListVirtualNodesPages(input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool) error { + return c.ListVirtualNodesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListVirtualRoutersPagesWithContext same as ListVirtualRoutersPages except +// ListVirtualNodesPagesWithContext same as ListVirtualNodesPages 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 *AppMesh) ListVirtualRoutersPagesWithContext(ctx aws.Context, input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool, opts ...request.Option) error { +func (c *AppMesh) ListVirtualNodesPagesWithContext(ctx aws.Context, input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListVirtualRoutersInput + var inCpy *ListVirtualNodesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListVirtualRoutersRequest(inCpy) + req, _ := c.ListVirtualNodesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2365,7 +3146,7 @@ func (c *AppMesh) ListVirtualRoutersPagesWithContext(ctx aws.Context, input *Lis } for p.Next() { - if !fn(p.Page().(*ListVirtualRoutersOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListVirtualNodesOutput), !p.HasNextPage()) { break } } @@ -2373,24 +3154,179 @@ func (c *AppMesh) ListVirtualRoutersPagesWithContext(ctx aws.Context, input *Lis return p.Err() } -const opListVirtualServices = "ListVirtualServices" +const opListVirtualRouters = "ListVirtualRouters" -// ListVirtualServicesRequest generates a "aws/request.Request" representing the -// client's request for the ListVirtualServices operation. The "output" return +// ListVirtualRoutersRequest generates a "aws/request.Request" representing the +// client's request for the ListVirtualRouters 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 ListVirtualServices for more information on using the ListVirtualServices +// See ListVirtualRouters for more information on using the ListVirtualRouters // 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 ListVirtualServicesRequest method. +// // Example sending a request using the ListVirtualRoutersRequest method. +// req, resp := client.ListVirtualRoutersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters +func (c *AppMesh) ListVirtualRoutersRequest(input *ListVirtualRoutersInput) (req *request.Request, output *ListVirtualRoutersOutput) { + op := &request.Operation{ + Name: opListVirtualRouters, + HTTPMethod: "GET", + HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "limit", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListVirtualRoutersInput{} + } + + output = &ListVirtualRoutersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListVirtualRouters API operation for AWS App Mesh. +// +// Returns a list of existing virtual routers in a service mesh. +// +// 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 App Mesh's +// API operation ListVirtualRouters for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters +func (c *AppMesh) ListVirtualRouters(input *ListVirtualRoutersInput) (*ListVirtualRoutersOutput, error) { + req, out := c.ListVirtualRoutersRequest(input) + return out, req.Send() +} + +// ListVirtualRoutersWithContext is the same as ListVirtualRouters with the addition of +// the ability to pass a context and additional request options. +// +// See ListVirtualRouters 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 *AppMesh) ListVirtualRoutersWithContext(ctx aws.Context, input *ListVirtualRoutersInput, opts ...request.Option) (*ListVirtualRoutersOutput, error) { + req, out := c.ListVirtualRoutersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListVirtualRoutersPages iterates over the pages of a ListVirtualRouters operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListVirtualRouters 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 ListVirtualRouters operation. +// pageNum := 0 +// err := client.ListVirtualRoutersPages(params, +// func(page *appmesh.ListVirtualRoutersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *AppMesh) ListVirtualRoutersPages(input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool) error { + return c.ListVirtualRoutersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListVirtualRoutersPagesWithContext same as ListVirtualRoutersPages 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 *AppMesh) ListVirtualRoutersPagesWithContext(ctx aws.Context, input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListVirtualRoutersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListVirtualRoutersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListVirtualRoutersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListVirtualServices = "ListVirtualServices" + +// ListVirtualServicesRequest generates a "aws/request.Request" representing the +// client's request for the ListVirtualServices 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 ListVirtualServices for more information on using the ListVirtualServices +// 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 ListVirtualServicesRequest method. // req, resp := client.ListVirtualServicesRequest(params) // // err := req.Send() @@ -2732,6 +3668,114 @@ func (c *AppMesh) UntagResourceWithContext(ctx aws.Context, input *UntagResource return out, req.Send() } +const opUpdateGatewayRoute = "UpdateGatewayRoute" + +// UpdateGatewayRouteRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGatewayRoute 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 UpdateGatewayRoute for more information on using the UpdateGatewayRoute +// 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 UpdateGatewayRouteRequest method. +// req, resp := client.UpdateGatewayRouteRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRoute +func (c *AppMesh) UpdateGatewayRouteRequest(input *UpdateGatewayRouteInput) (req *request.Request, output *UpdateGatewayRouteOutput) { + op := &request.Operation{ + Name: opUpdateGatewayRoute, + HTTPMethod: "PUT", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes/{gatewayRouteName}", + } + + if input == nil { + input = &UpdateGatewayRouteInput{} + } + + output = &UpdateGatewayRouteOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateGatewayRoute API operation for AWS App Mesh. +// +// Updates an existing gateway route that is associated to a specified virtual +// gateway in a service mesh. +// +// 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 App Mesh's +// API operation UpdateGatewayRoute for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ConflictException +// The request contains a client token that was used for a previous update resource +// call with different specifications. Try the request again with a new client +// token. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * LimitExceededException +// You have exceeded a service limit for your account. For more information, +// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) +// in the AWS App Mesh User Guide. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRoute +func (c *AppMesh) UpdateGatewayRoute(input *UpdateGatewayRouteInput) (*UpdateGatewayRouteOutput, error) { + req, out := c.UpdateGatewayRouteRequest(input) + return out, req.Send() +} + +// UpdateGatewayRouteWithContext is the same as UpdateGatewayRoute with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateGatewayRoute 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 *AppMesh) UpdateGatewayRouteWithContext(ctx aws.Context, input *UpdateGatewayRouteInput, opts ...request.Option) (*UpdateGatewayRouteOutput, error) { + req, out := c.UpdateGatewayRouteRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateMesh = "UpdateMesh" // UpdateMeshRequest generates a "aws/request.Request" representing the @@ -2941,58 +3985,165 @@ func (c *AppMesh) UpdateRouteWithContext(ctx aws.Context, input *UpdateRouteInpu return out, req.Send() } -const opUpdateVirtualNode = "UpdateVirtualNode" +const opUpdateVirtualGateway = "UpdateVirtualGateway" -// UpdateVirtualNodeRequest generates a "aws/request.Request" representing the -// client's request for the UpdateVirtualNode operation. The "output" return +// UpdateVirtualGatewayRequest generates a "aws/request.Request" representing the +// client's request for the UpdateVirtualGateway 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 UpdateVirtualNode for more information on using the UpdateVirtualNode +// See UpdateVirtualGateway for more information on using the UpdateVirtualGateway // 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 UpdateVirtualNodeRequest method. -// req, resp := client.UpdateVirtualNodeRequest(params) +// // Example sending a request using the UpdateVirtualGatewayRequest method. +// req, resp := client.UpdateVirtualGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode -func (c *AppMesh) UpdateVirtualNodeRequest(input *UpdateVirtualNodeInput) (req *request.Request, output *UpdateVirtualNodeOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGateway +func (c *AppMesh) UpdateVirtualGatewayRequest(input *UpdateVirtualGatewayInput) (req *request.Request, output *UpdateVirtualGatewayOutput) { op := &request.Operation{ - Name: opUpdateVirtualNode, + Name: opUpdateVirtualGateway, HTTPMethod: "PUT", - HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", + HTTPPath: "/v20190125/meshes/{meshName}/virtualGateways/{virtualGatewayName}", } if input == nil { - input = &UpdateVirtualNodeInput{} + input = &UpdateVirtualGatewayInput{} } - output = &UpdateVirtualNodeOutput{} + output = &UpdateVirtualGatewayOutput{} req = c.newRequest(op, input, output) return } -// UpdateVirtualNode API operation for AWS App Mesh. +// UpdateVirtualGateway API operation for AWS App Mesh. // -// Updates an existing virtual node in a specified service mesh. +// Updates an existing virtual gateway in a specified service mesh. // // 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 App Mesh's -// API operation UpdateVirtualNode for usage and error information. +// API operation UpdateVirtualGateway for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The request syntax was malformed. Check your request syntax and try again. +// +// * ConflictException +// The request contains a client token that was used for a previous update resource +// call with different specifications. Try the request again with a new client +// token. +// +// * ForbiddenException +// You don't have permissions to perform this action. +// +// * InternalServerErrorException +// The request processing has failed because of an unknown error, exception, +// or failure. +// +// * LimitExceededException +// You have exceeded a service limit for your account. For more information, +// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) +// in the AWS App Mesh User Guide. +// +// * NotFoundException +// The specified resource doesn't exist. Check your request syntax and try again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the service. +// +// * TooManyRequestsException +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGateway +func (c *AppMesh) UpdateVirtualGateway(input *UpdateVirtualGatewayInput) (*UpdateVirtualGatewayOutput, error) { + req, out := c.UpdateVirtualGatewayRequest(input) + return out, req.Send() +} + +// UpdateVirtualGatewayWithContext is the same as UpdateVirtualGateway with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateVirtualGateway 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 *AppMesh) UpdateVirtualGatewayWithContext(ctx aws.Context, input *UpdateVirtualGatewayInput, opts ...request.Option) (*UpdateVirtualGatewayOutput, error) { + req, out := c.UpdateVirtualGatewayRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateVirtualNode = "UpdateVirtualNode" + +// UpdateVirtualNodeRequest generates a "aws/request.Request" representing the +// client's request for the UpdateVirtualNode 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 UpdateVirtualNode for more information on using the UpdateVirtualNode +// 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 UpdateVirtualNodeRequest method. +// req, resp := client.UpdateVirtualNodeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode +func (c *AppMesh) UpdateVirtualNodeRequest(input *UpdateVirtualNodeInput) (req *request.Request, output *UpdateVirtualNodeOutput) { + op := &request.Operation{ + Name: opUpdateVirtualNode, + HTTPMethod: "PUT", + HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", + } + + if input == nil { + input = &UpdateVirtualNodeInput{} + } + + output = &UpdateVirtualNodeOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateVirtualNode API operation for AWS App Mesh. +// +// Updates an existing virtual node in a specified service mesh. +// +// 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 App Mesh's +// API operation UpdateVirtualNode for usage and error information. // // Returned Error Types: // * BadRequestException @@ -3723,6 +4874,157 @@ func (s *ConflictException) RequestID() string { return s.RespMetadata.RequestID } +type CreateGatewayRouteInput struct { + _ struct{} `type:"structure"` + + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // GatewayRouteName is a required field + GatewayRouteName *string `locationName:"gatewayRouteName" min:"1" type:"string" required:"true"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // An object that represents a gateway route specification. Specify one gateway + // route type. + // + // Spec is a required field + Spec *GatewayRouteSpec `locationName:"spec" type:"structure" required:"true"` + + Tags []*TagRef `locationName:"tags" type:"list"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateGatewayRouteInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGatewayRouteInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGatewayRouteInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGatewayRouteInput"} + if s.GatewayRouteName == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayRouteName")) + } + if s.GatewayRouteName != nil && len(*s.GatewayRouteName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GatewayRouteName", 1)) + } + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", 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 +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateGatewayRouteInput) SetClientToken(v string) *CreateGatewayRouteInput { + s.ClientToken = &v + return s +} + +// SetGatewayRouteName sets the GatewayRouteName field's value. +func (s *CreateGatewayRouteInput) SetGatewayRouteName(v string) *CreateGatewayRouteInput { + s.GatewayRouteName = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *CreateGatewayRouteInput) SetMeshName(v string) *CreateGatewayRouteInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *CreateGatewayRouteInput) SetMeshOwner(v string) *CreateGatewayRouteInput { + s.MeshOwner = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *CreateGatewayRouteInput) SetSpec(v *GatewayRouteSpec) *CreateGatewayRouteInput { + s.Spec = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateGatewayRouteInput) SetTags(v []*TagRef) *CreateGatewayRouteInput { + s.Tags = v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *CreateGatewayRouteInput) SetVirtualGatewayName(v string) *CreateGatewayRouteInput { + s.VirtualGatewayName = &v + return s +} + +type CreateGatewayRouteOutput struct { + _ struct{} `type:"structure" payload:"GatewayRoute"` + + // An object that represents a gateway route returned by a describe operation. + // + // GatewayRoute is a required field + GatewayRoute *GatewayRouteData `locationName:"gatewayRoute" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateGatewayRouteOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGatewayRouteOutput) GoString() string { + return s.String() +} + +// SetGatewayRoute sets the GatewayRoute field's value. +func (s *CreateGatewayRouteOutput) SetGatewayRoute(v *GatewayRouteData) *CreateGatewayRouteOutput { + s.GatewayRoute = v + return s +} + type CreateMeshInput struct { _ struct{} `type:"structure"` @@ -3977,7 +5279,7 @@ func (s *CreateRouteOutput) SetRoute(v *RouteData) *CreateRouteOutput { return s } -type CreateVirtualNodeInput struct { +type CreateVirtualGatewayInput struct { _ struct{} `type:"structure"` ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` @@ -3987,30 +5289,30 @@ type CreateVirtualNodeInput struct { MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // An object that represents the specification of a virtual node. + // An object that represents the specification of a service mesh resource. // // Spec is a required field - Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` + Spec *VirtualGatewaySpec `locationName:"spec" type:"structure" required:"true"` Tags []*TagRef `locationName:"tags" type:"list"` - // VirtualNodeName is a required field - VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` + // VirtualGatewayName is a required field + VirtualGatewayName *string `locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s CreateVirtualNodeInput) String() string { +func (s CreateVirtualGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateVirtualNodeInput) GoString() string { +func (s CreateVirtualGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateVirtualNodeInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateVirtualNodeInput"} +func (s *CreateVirtualGatewayInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVirtualGatewayInput"} if s.MeshName == nil { invalidParams.Add(request.NewErrParamRequired("MeshName")) } @@ -4023,11 +5325,11 @@ func (s *CreateVirtualNodeInput) Validate() error { if s.Spec == nil { invalidParams.Add(request.NewErrParamRequired("Spec")) } - if s.VirtualNodeName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) } - if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) } if s.Spec != nil { if err := s.Spec.Validate(); err != nil { @@ -4052,67 +5354,67 @@ func (s *CreateVirtualNodeInput) Validate() error { } // SetClientToken sets the ClientToken field's value. -func (s *CreateVirtualNodeInput) SetClientToken(v string) *CreateVirtualNodeInput { +func (s *CreateVirtualGatewayInput) SetClientToken(v string) *CreateVirtualGatewayInput { s.ClientToken = &v return s } // SetMeshName sets the MeshName field's value. -func (s *CreateVirtualNodeInput) SetMeshName(v string) *CreateVirtualNodeInput { +func (s *CreateVirtualGatewayInput) SetMeshName(v string) *CreateVirtualGatewayInput { s.MeshName = &v return s } // SetMeshOwner sets the MeshOwner field's value. -func (s *CreateVirtualNodeInput) SetMeshOwner(v string) *CreateVirtualNodeInput { +func (s *CreateVirtualGatewayInput) SetMeshOwner(v string) *CreateVirtualGatewayInput { s.MeshOwner = &v return s } // SetSpec sets the Spec field's value. -func (s *CreateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *CreateVirtualNodeInput { +func (s *CreateVirtualGatewayInput) SetSpec(v *VirtualGatewaySpec) *CreateVirtualGatewayInput { s.Spec = v return s } // SetTags sets the Tags field's value. -func (s *CreateVirtualNodeInput) SetTags(v []*TagRef) *CreateVirtualNodeInput { +func (s *CreateVirtualGatewayInput) SetTags(v []*TagRef) *CreateVirtualGatewayInput { s.Tags = v return s } -// SetVirtualNodeName sets the VirtualNodeName field's value. -func (s *CreateVirtualNodeInput) SetVirtualNodeName(v string) *CreateVirtualNodeInput { - s.VirtualNodeName = &v +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *CreateVirtualGatewayInput) SetVirtualGatewayName(v string) *CreateVirtualGatewayInput { + s.VirtualGatewayName = &v return s } -type CreateVirtualNodeOutput struct { - _ struct{} `type:"structure" payload:"VirtualNode"` +type CreateVirtualGatewayOutput struct { + _ struct{} `type:"structure" payload:"VirtualGateway"` - // An object that represents a virtual node returned by a describe operation. + // An object that represents a virtual gateway returned by a describe operation. // - // VirtualNode is a required field - VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` + // VirtualGateway is a required field + VirtualGateway *VirtualGatewayData `locationName:"virtualGateway" type:"structure" required:"true"` } // String returns the string representation -func (s CreateVirtualNodeOutput) String() string { +func (s CreateVirtualGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateVirtualNodeOutput) GoString() string { +func (s CreateVirtualGatewayOutput) GoString() string { return s.String() } -// SetVirtualNode sets the VirtualNode field's value. -func (s *CreateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *CreateVirtualNodeOutput { - s.VirtualNode = v +// SetVirtualGateway sets the VirtualGateway field's value. +func (s *CreateVirtualGatewayOutput) SetVirtualGateway(v *VirtualGatewayData) *CreateVirtualGatewayOutput { + s.VirtualGateway = v return s } -type CreateVirtualRouterInput struct { +type CreateVirtualNodeInput struct { _ struct{} `type:"structure"` ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` @@ -4122,29 +5424,164 @@ type CreateVirtualRouterInput struct { MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // An object that represents the specification of a virtual router. + // An object that represents the specification of a virtual node. // // Spec is a required field - Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` + Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` Tags []*TagRef `locationName:"tags" type:"list"` - // VirtualRouterName is a required field - VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // VirtualNodeName is a required field + VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s CreateVirtualRouterInput) String() string { +func (s CreateVirtualNodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateVirtualRouterInput) GoString() string { +func (s CreateVirtualNodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateVirtualRouterInput) Validate() error { +func (s *CreateVirtualNodeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVirtualNodeInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualNodeName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) + } + if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", 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 +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateVirtualNodeInput) SetClientToken(v string) *CreateVirtualNodeInput { + s.ClientToken = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *CreateVirtualNodeInput) SetMeshName(v string) *CreateVirtualNodeInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *CreateVirtualNodeInput) SetMeshOwner(v string) *CreateVirtualNodeInput { + s.MeshOwner = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *CreateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *CreateVirtualNodeInput { + s.Spec = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateVirtualNodeInput) SetTags(v []*TagRef) *CreateVirtualNodeInput { + s.Tags = v + return s +} + +// SetVirtualNodeName sets the VirtualNodeName field's value. +func (s *CreateVirtualNodeInput) SetVirtualNodeName(v string) *CreateVirtualNodeInput { + s.VirtualNodeName = &v + return s +} + +type CreateVirtualNodeOutput struct { + _ struct{} `type:"structure" payload:"VirtualNode"` + + // An object that represents a virtual node returned by a describe operation. + // + // VirtualNode is a required field + VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateVirtualNodeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateVirtualNodeOutput) GoString() string { + return s.String() +} + +// SetVirtualNode sets the VirtualNode field's value. +func (s *CreateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *CreateVirtualNodeOutput { + s.VirtualNode = v + return s +} + +type CreateVirtualRouterInput struct { + _ struct{} `type:"structure"` + + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // An object that represents the specification of a virtual router. + // + // Spec is a required field + Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` + + Tags []*TagRef `locationName:"tags" type:"list"` + + // VirtualRouterName is a required field + VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateVirtualRouterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateVirtualRouterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateVirtualRouterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVirtualRouterInput"} if s.MeshName == nil { invalidParams.Add(request.NewErrParamRequired("MeshName")) @@ -4379,6 +5816,111 @@ func (s *CreateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *C return s } +type DeleteGatewayRouteInput struct { + _ struct{} `type:"structure"` + + // GatewayRouteName is a required field + GatewayRouteName *string `location:"uri" locationName:"gatewayRouteName" min:"1" type:"string" required:"true"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteGatewayRouteInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteGatewayRouteInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteGatewayRouteInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGatewayRouteInput"} + if s.GatewayRouteName == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayRouteName")) + } + if s.GatewayRouteName != nil && len(*s.GatewayRouteName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GatewayRouteName", 1)) + } + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGatewayRouteName sets the GatewayRouteName field's value. +func (s *DeleteGatewayRouteInput) SetGatewayRouteName(v string) *DeleteGatewayRouteInput { + s.GatewayRouteName = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *DeleteGatewayRouteInput) SetMeshName(v string) *DeleteGatewayRouteInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *DeleteGatewayRouteInput) SetMeshOwner(v string) *DeleteGatewayRouteInput { + s.MeshOwner = &v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *DeleteGatewayRouteInput) SetVirtualGatewayName(v string) *DeleteGatewayRouteInput { + s.VirtualGatewayName = &v + return s +} + +type DeleteGatewayRouteOutput struct { + _ struct{} `type:"structure" payload:"GatewayRoute"` + + // An object that represents a gateway route returned by a describe operation. + // + // GatewayRoute is a required field + GatewayRoute *GatewayRouteData `locationName:"gatewayRoute" type:"structure" required:"true"` +} + +// String returns the string representation +func (s DeleteGatewayRouteOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteGatewayRouteOutput) GoString() string { + return s.String() +} + +// SetGatewayRoute sets the GatewayRoute field's value. +func (s *DeleteGatewayRouteOutput) SetGatewayRoute(v *GatewayRouteData) *DeleteGatewayRouteOutput { + s.GatewayRoute = v + return s +} + type DeleteMeshInput struct { _ struct{} `type:"structure"` @@ -4548,7 +6090,7 @@ func (s *DeleteRouteOutput) SetRoute(v *RouteData) *DeleteRouteOutput { return s } -type DeleteVirtualNodeInput struct { +type DeleteVirtualGatewayInput struct { _ struct{} `type:"structure"` // MeshName is a required field @@ -4556,23 +6098,23 @@ type DeleteVirtualNodeInput struct { MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // VirtualNodeName is a required field - VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DeleteVirtualNodeInput) String() string { +func (s DeleteVirtualGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteVirtualNodeInput) GoString() string { +func (s DeleteVirtualGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteVirtualNodeInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualNodeInput"} +func (s *DeleteVirtualGatewayInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualGatewayInput"} if s.MeshName == nil { invalidParams.Add(request.NewErrParamRequired("MeshName")) } @@ -4582,11 +6124,11 @@ func (s *DeleteVirtualNodeInput) Validate() error { if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } - if s.VirtualNodeName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) } - if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) } if invalidParams.Len() > 0 { @@ -4596,49 +6138,49 @@ func (s *DeleteVirtualNodeInput) Validate() error { } // SetMeshName sets the MeshName field's value. -func (s *DeleteVirtualNodeInput) SetMeshName(v string) *DeleteVirtualNodeInput { +func (s *DeleteVirtualGatewayInput) SetMeshName(v string) *DeleteVirtualGatewayInput { s.MeshName = &v return s } // SetMeshOwner sets the MeshOwner field's value. -func (s *DeleteVirtualNodeInput) SetMeshOwner(v string) *DeleteVirtualNodeInput { +func (s *DeleteVirtualGatewayInput) SetMeshOwner(v string) *DeleteVirtualGatewayInput { s.MeshOwner = &v return s } -// SetVirtualNodeName sets the VirtualNodeName field's value. -func (s *DeleteVirtualNodeInput) SetVirtualNodeName(v string) *DeleteVirtualNodeInput { - s.VirtualNodeName = &v +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *DeleteVirtualGatewayInput) SetVirtualGatewayName(v string) *DeleteVirtualGatewayInput { + s.VirtualGatewayName = &v return s } -type DeleteVirtualNodeOutput struct { - _ struct{} `type:"structure" payload:"VirtualNode"` +type DeleteVirtualGatewayOutput struct { + _ struct{} `type:"structure" payload:"VirtualGateway"` - // An object that represents a virtual node returned by a describe operation. + // An object that represents a virtual gateway returned by a describe operation. // - // VirtualNode is a required field - VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` + // VirtualGateway is a required field + VirtualGateway *VirtualGatewayData `locationName:"virtualGateway" type:"structure" required:"true"` } // String returns the string representation -func (s DeleteVirtualNodeOutput) String() string { +func (s DeleteVirtualGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteVirtualNodeOutput) GoString() string { +func (s DeleteVirtualGatewayOutput) GoString() string { return s.String() } -// SetVirtualNode sets the VirtualNode field's value. -func (s *DeleteVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *DeleteVirtualNodeOutput { - s.VirtualNode = v +// SetVirtualGateway sets the VirtualGateway field's value. +func (s *DeleteVirtualGatewayOutput) SetVirtualGateway(v *VirtualGatewayData) *DeleteVirtualGatewayOutput { + s.VirtualGateway = v return s } -type DeleteVirtualRouterInput struct { +type DeleteVirtualNodeInput struct { _ struct{} `type:"structure"` // MeshName is a required field @@ -4646,23 +6188,23 @@ type DeleteVirtualRouterInput struct { MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // VirtualRouterName is a required field - VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // VirtualNodeName is a required field + VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DeleteVirtualRouterInput) String() string { +func (s DeleteVirtualNodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteVirtualRouterInput) GoString() string { +func (s DeleteVirtualNodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteVirtualRouterInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualRouterInput"} +func (s *DeleteVirtualNodeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualNodeInput"} if s.MeshName == nil { invalidParams.Add(request.NewErrParamRequired("MeshName")) } @@ -4672,11 +6214,11 @@ func (s *DeleteVirtualRouterInput) Validate() error { if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } - if s.VirtualRouterName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) + if s.VirtualNodeName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) } - if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) + if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) } if invalidParams.Len() > 0 { @@ -4686,7 +6228,97 @@ func (s *DeleteVirtualRouterInput) Validate() error { } // SetMeshName sets the MeshName field's value. -func (s *DeleteVirtualRouterInput) SetMeshName(v string) *DeleteVirtualRouterInput { +func (s *DeleteVirtualNodeInput) SetMeshName(v string) *DeleteVirtualNodeInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *DeleteVirtualNodeInput) SetMeshOwner(v string) *DeleteVirtualNodeInput { + s.MeshOwner = &v + return s +} + +// SetVirtualNodeName sets the VirtualNodeName field's value. +func (s *DeleteVirtualNodeInput) SetVirtualNodeName(v string) *DeleteVirtualNodeInput { + s.VirtualNodeName = &v + return s +} + +type DeleteVirtualNodeOutput struct { + _ struct{} `type:"structure" payload:"VirtualNode"` + + // An object that represents a virtual node returned by a describe operation. + // + // VirtualNode is a required field + VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` +} + +// String returns the string representation +func (s DeleteVirtualNodeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteVirtualNodeOutput) GoString() string { + return s.String() +} + +// SetVirtualNode sets the VirtualNode field's value. +func (s *DeleteVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *DeleteVirtualNodeOutput { + s.VirtualNode = v + return s +} + +type DeleteVirtualRouterInput struct { + _ struct{} `type:"structure"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // VirtualRouterName is a required field + VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteVirtualRouterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteVirtualRouterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteVirtualRouterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualRouterInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.VirtualRouterName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) + } + if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMeshName sets the MeshName field's value. +func (s *DeleteVirtualRouterInput) SetMeshName(v string) *DeleteVirtualRouterInput { s.MeshName = &v return s } @@ -4818,6 +6450,111 @@ func (s *DeleteVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *D return s } +type DescribeGatewayRouteInput struct { + _ struct{} `type:"structure"` + + // GatewayRouteName is a required field + GatewayRouteName *string `location:"uri" locationName:"gatewayRouteName" min:"1" type:"string" required:"true"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeGatewayRouteInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeGatewayRouteInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeGatewayRouteInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeGatewayRouteInput"} + if s.GatewayRouteName == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayRouteName")) + } + if s.GatewayRouteName != nil && len(*s.GatewayRouteName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GatewayRouteName", 1)) + } + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGatewayRouteName sets the GatewayRouteName field's value. +func (s *DescribeGatewayRouteInput) SetGatewayRouteName(v string) *DescribeGatewayRouteInput { + s.GatewayRouteName = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *DescribeGatewayRouteInput) SetMeshName(v string) *DescribeGatewayRouteInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *DescribeGatewayRouteInput) SetMeshOwner(v string) *DescribeGatewayRouteInput { + s.MeshOwner = &v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *DescribeGatewayRouteInput) SetVirtualGatewayName(v string) *DescribeGatewayRouteInput { + s.VirtualGatewayName = &v + return s +} + +type DescribeGatewayRouteOutput struct { + _ struct{} `type:"structure" payload:"GatewayRoute"` + + // An object that represents a gateway route returned by a describe operation. + // + // GatewayRoute is a required field + GatewayRoute *GatewayRouteData `locationName:"gatewayRoute" type:"structure" required:"true"` +} + +// String returns the string representation +func (s DescribeGatewayRouteOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeGatewayRouteOutput) GoString() string { + return s.String() +} + +// SetGatewayRoute sets the GatewayRoute field's value. +func (s *DescribeGatewayRouteOutput) SetGatewayRoute(v *GatewayRouteData) *DescribeGatewayRouteOutput { + s.GatewayRoute = v + return s +} + type DescribeMeshInput struct { _ struct{} `type:"structure"` @@ -4998,6 +6735,96 @@ func (s *DescribeRouteOutput) SetRoute(v *RouteData) *DescribeRouteOutput { return s } +type DescribeVirtualGatewayInput struct { + _ struct{} `type:"structure"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeVirtualGatewayInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeVirtualGatewayInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeVirtualGatewayInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualGatewayInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMeshName sets the MeshName field's value. +func (s *DescribeVirtualGatewayInput) SetMeshName(v string) *DescribeVirtualGatewayInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *DescribeVirtualGatewayInput) SetMeshOwner(v string) *DescribeVirtualGatewayInput { + s.MeshOwner = &v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *DescribeVirtualGatewayInput) SetVirtualGatewayName(v string) *DescribeVirtualGatewayInput { + s.VirtualGatewayName = &v + return s +} + +type DescribeVirtualGatewayOutput struct { + _ struct{} `type:"structure" payload:"VirtualGateway"` + + // An object that represents a virtual gateway returned by a describe operation. + // + // VirtualGateway is a required field + VirtualGateway *VirtualGatewayData `locationName:"virtualGateway" type:"structure" required:"true"` +} + +// String returns the string representation +func (s DescribeVirtualGatewayOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeVirtualGatewayOutput) GoString() string { + return s.String() +} + +// SetVirtualGateway sets the VirtualGateway field's value. +func (s *DescribeVirtualGatewayOutput) SetVirtualGateway(v *VirtualGatewayData) *DescribeVirtualGatewayOutput { + s.VirtualGateway = v + return s +} + type DescribeVirtualNodeInput struct { _ struct{} `type:"structure"` @@ -5470,146 +7297,219 @@ func (s *ForbiddenException) RequestID() string { return s.RespMetadata.RequestID } -// An object that represents a retry policy. Specify at least one value for -// at least one of the types of RetryEvents, a value for maxRetries, and a value -// for perRetryTimeout. -type GrpcRetryPolicy struct { +// An object that represents a gateway route returned by a describe operation. +type GatewayRouteData struct { _ struct{} `type:"structure"` - GrpcRetryEvents []*string `locationName:"grpcRetryEvents" min:"1" type:"list"` + // GatewayRouteName is a required field + GatewayRouteName *string `locationName:"gatewayRouteName" min:"1" type:"string" required:"true"` - HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` - // MaxRetries is a required field - MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` + // An object that represents metadata for a resource. + // + // Metadata is a required field + Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` - // An object that represents a duration of time. + // An object that represents a gateway route specification. Specify one gateway + // route type. // - // PerRetryTimeout is a required field - PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` + // Spec is a required field + Spec *GatewayRouteSpec `locationName:"spec" type:"structure" required:"true"` - TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` + // An object that represents the current status of a gateway route. + // + // Status is a required field + Status *GatewayRouteStatus `locationName:"status" type:"structure" required:"true"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s GrpcRetryPolicy) String() string { +func (s GatewayRouteData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcRetryPolicy) GoString() string { +func (s GatewayRouteData) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GrpcRetryPolicy) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GrpcRetryPolicy"} - if s.GrpcRetryEvents != nil && len(s.GrpcRetryEvents) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GrpcRetryEvents", 1)) - } - if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { - invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) - } - if s.MaxRetries == nil { - invalidParams.Add(request.NewErrParamRequired("MaxRetries")) - } - if s.PerRetryTimeout == nil { - invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) - } - if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetGatewayRouteName sets the GatewayRouteName field's value. +func (s *GatewayRouteData) SetGatewayRouteName(v string) *GatewayRouteData { + s.GatewayRouteName = &v + return s } -// SetGrpcRetryEvents sets the GrpcRetryEvents field's value. -func (s *GrpcRetryPolicy) SetGrpcRetryEvents(v []*string) *GrpcRetryPolicy { - s.GrpcRetryEvents = v +// SetMeshName sets the MeshName field's value. +func (s *GatewayRouteData) SetMeshName(v string) *GatewayRouteData { + s.MeshName = &v return s } -// SetHttpRetryEvents sets the HttpRetryEvents field's value. -func (s *GrpcRetryPolicy) SetHttpRetryEvents(v []*string) *GrpcRetryPolicy { - s.HttpRetryEvents = v +// SetMetadata sets the Metadata field's value. +func (s *GatewayRouteData) SetMetadata(v *ResourceMetadata) *GatewayRouteData { + s.Metadata = v return s } -// SetMaxRetries sets the MaxRetries field's value. -func (s *GrpcRetryPolicy) SetMaxRetries(v int64) *GrpcRetryPolicy { - s.MaxRetries = &v +// SetSpec sets the Spec field's value. +func (s *GatewayRouteData) SetSpec(v *GatewayRouteSpec) *GatewayRouteData { + s.Spec = v return s } -// SetPerRetryTimeout sets the PerRetryTimeout field's value. -func (s *GrpcRetryPolicy) SetPerRetryTimeout(v *Duration) *GrpcRetryPolicy { - s.PerRetryTimeout = v +// SetStatus sets the Status field's value. +func (s *GatewayRouteData) SetStatus(v *GatewayRouteStatus) *GatewayRouteData { + s.Status = v return s } -// SetTcpRetryEvents sets the TcpRetryEvents field's value. -func (s *GrpcRetryPolicy) SetTcpRetryEvents(v []*string) *GrpcRetryPolicy { - s.TcpRetryEvents = v +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *GatewayRouteData) SetVirtualGatewayName(v string) *GatewayRouteData { + s.VirtualGatewayName = &v return s } -// An object that represents a gRPC route type. -type GrpcRoute struct { +// An object that represents a gateway route returned by a list operation. +type GatewayRouteRef struct { _ struct{} `type:"structure"` - // An object that represents the action to take if a match is determined. - // - // Action is a required field - Action *GrpcRouteAction `locationName:"action" type:"structure" required:"true"` + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` - // An object that represents the criteria for determining a request match. - // - // Match is a required field - Match *GrpcRouteMatch `locationName:"match" type:"structure" required:"true"` + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` - // An object that represents a retry policy. Specify at least one value for - // at least one of the types of RetryEvents, a value for maxRetries, and a value - // for perRetryTimeout. - RetryPolicy *GrpcRetryPolicy `locationName:"retryPolicy" type:"structure"` + // GatewayRouteName is a required field + GatewayRouteName *string `locationName:"gatewayRouteName" min:"1" type:"string" required:"true"` - Timeout *GrpcTimeout `locationName:"timeout" type:"structure"` + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // MeshOwner is a required field + MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + + // ResourceOwner is a required field + ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + + // Version is a required field + Version *int64 `locationName:"version" type:"long" required:"true"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s GrpcRoute) String() string { +func (s GatewayRouteRef) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcRoute) GoString() string { +func (s GatewayRouteRef) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GatewayRouteRef) SetArn(v string) *GatewayRouteRef { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GatewayRouteRef) SetCreatedAt(v time.Time) *GatewayRouteRef { + s.CreatedAt = &v + return s +} + +// SetGatewayRouteName sets the GatewayRouteName field's value. +func (s *GatewayRouteRef) SetGatewayRouteName(v string) *GatewayRouteRef { + s.GatewayRouteName = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *GatewayRouteRef) SetLastUpdatedAt(v time.Time) *GatewayRouteRef { + s.LastUpdatedAt = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *GatewayRouteRef) SetMeshName(v string) *GatewayRouteRef { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *GatewayRouteRef) SetMeshOwner(v string) *GatewayRouteRef { + s.MeshOwner = &v + return s +} + +// SetResourceOwner sets the ResourceOwner field's value. +func (s *GatewayRouteRef) SetResourceOwner(v string) *GatewayRouteRef { + s.ResourceOwner = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *GatewayRouteRef) SetVersion(v int64) *GatewayRouteRef { + s.Version = &v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *GatewayRouteRef) SetVirtualGatewayName(v string) *GatewayRouteRef { + s.VirtualGatewayName = &v + return s +} + +// An object that represents a gateway route specification. Specify one gateway +// route type. +type GatewayRouteSpec struct { + _ struct{} `type:"structure"` + + // An object that represents a gRPC gateway route. + GrpcRoute *GrpcGatewayRoute `locationName:"grpcRoute" type:"structure"` + + // An object that represents an HTTP gateway route. + Http2Route *HttpGatewayRoute `locationName:"http2Route" type:"structure"` + + // An object that represents an HTTP gateway route. + HttpRoute *HttpGatewayRoute `locationName:"httpRoute" type:"structure"` +} + +// String returns the string representation +func (s GatewayRouteSpec) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GatewayRouteSpec) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GrpcRoute) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GrpcRoute"} - if s.Action == nil { - invalidParams.Add(request.NewErrParamRequired("Action")) - } - if s.Match == nil { - invalidParams.Add(request.NewErrParamRequired("Match")) - } - if s.Action != nil { - if err := s.Action.Validate(); err != nil { - invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) +func (s *GatewayRouteSpec) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GatewayRouteSpec"} + if s.GrpcRoute != nil { + if err := s.GrpcRoute.Validate(); err != nil { + invalidParams.AddNested("GrpcRoute", err.(request.ErrInvalidParams)) } } - if s.Match != nil { - if err := s.Match.Validate(); err != nil { - invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) + if s.Http2Route != nil { + if err := s.Http2Route.Validate(); err != nil { + invalidParams.AddNested("Http2Route", err.(request.ErrInvalidParams)) } } - if s.RetryPolicy != nil { - if err := s.RetryPolicy.Validate(); err != nil { - invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams)) + if s.HttpRoute != nil { + if err := s.HttpRoute.Validate(); err != nil { + invalidParams.AddNested("HttpRoute", err.(request.ErrInvalidParams)) } } @@ -5619,65 +7519,77 @@ func (s *GrpcRoute) Validate() error { return nil } -// SetAction sets the Action field's value. -func (s *GrpcRoute) SetAction(v *GrpcRouteAction) *GrpcRoute { - s.Action = v +// SetGrpcRoute sets the GrpcRoute field's value. +func (s *GatewayRouteSpec) SetGrpcRoute(v *GrpcGatewayRoute) *GatewayRouteSpec { + s.GrpcRoute = v return s } -// SetMatch sets the Match field's value. -func (s *GrpcRoute) SetMatch(v *GrpcRouteMatch) *GrpcRoute { - s.Match = v +// SetHttp2Route sets the Http2Route field's value. +func (s *GatewayRouteSpec) SetHttp2Route(v *HttpGatewayRoute) *GatewayRouteSpec { + s.Http2Route = v return s } -// SetRetryPolicy sets the RetryPolicy field's value. -func (s *GrpcRoute) SetRetryPolicy(v *GrpcRetryPolicy) *GrpcRoute { - s.RetryPolicy = v +// SetHttpRoute sets the HttpRoute field's value. +func (s *GatewayRouteSpec) SetHttpRoute(v *HttpGatewayRoute) *GatewayRouteSpec { + s.HttpRoute = v return s } -// SetTimeout sets the Timeout field's value. -func (s *GrpcRoute) SetTimeout(v *GrpcTimeout) *GrpcRoute { - s.Timeout = v +// An object that represents the current status of a gateway route. +type GatewayRouteStatus struct { + _ struct{} `type:"structure"` + + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"GatewayRouteStatusCode"` +} + +// String returns the string representation +func (s GatewayRouteStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GatewayRouteStatus) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *GatewayRouteStatus) SetStatus(v string) *GatewayRouteStatus { + s.Status = &v return s } -// An object that represents the action to take if a match is determined. -type GrpcRouteAction struct { +// An object that represents a gateway route target. +type GatewayRouteTarget struct { _ struct{} `type:"structure"` - // WeightedTargets is a required field - WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` + // An object that represents the virtual service that traffic is routed to. + // + // VirtualService is a required field + VirtualService *GatewayRouteVirtualService `locationName:"virtualService" type:"structure" required:"true"` } // String returns the string representation -func (s GrpcRouteAction) String() string { +func (s GatewayRouteTarget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcRouteAction) GoString() string { +func (s GatewayRouteTarget) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GrpcRouteAction) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GrpcRouteAction"} - if s.WeightedTargets == nil { - invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) - } - if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { - invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) +func (s *GatewayRouteTarget) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GatewayRouteTarget"} + if s.VirtualService == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualService")) } - if s.WeightedTargets != nil { - for i, v := range s.WeightedTargets { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) - } + if s.VirtualService != nil { + if err := s.VirtualService.Validate(); err != nil { + invalidParams.AddNested("VirtualService", err.(request.ErrInvalidParams)) } } @@ -5687,51 +7599,38 @@ func (s *GrpcRouteAction) Validate() error { return nil } -// SetWeightedTargets sets the WeightedTargets field's value. -func (s *GrpcRouteAction) SetWeightedTargets(v []*WeightedTarget) *GrpcRouteAction { - s.WeightedTargets = v +// SetVirtualService sets the VirtualService field's value. +func (s *GatewayRouteTarget) SetVirtualService(v *GatewayRouteVirtualService) *GatewayRouteTarget { + s.VirtualService = v return s } -// An object that represents the criteria for determining a request match. -type GrpcRouteMatch struct { +// An object that represents the virtual service that traffic is routed to. +type GatewayRouteVirtualService struct { _ struct{} `type:"structure"` - Metadata []*GrpcRouteMetadata `locationName:"metadata" min:"1" type:"list"` - - MethodName *string `locationName:"methodName" min:"1" type:"string"` - - ServiceName *string `locationName:"serviceName" type:"string"` + // VirtualServiceName is a required field + VirtualServiceName *string `locationName:"virtualServiceName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s GrpcRouteMatch) String() string { +func (s GatewayRouteVirtualService) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcRouteMatch) GoString() string { +func (s GatewayRouteVirtualService) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GrpcRouteMatch) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMatch"} - if s.Metadata != nil && len(s.Metadata) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Metadata", 1)) - } - if s.MethodName != nil && len(*s.MethodName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MethodName", 1)) +func (s *GatewayRouteVirtualService) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GatewayRouteVirtualService"} + if s.VirtualServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) } - if s.Metadata != nil { - for i, v := range s.Metadata { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metadata", i), err.(request.ErrInvalidParams)) - } - } + if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) } if invalidParams.Len() > 0 { @@ -5740,59 +7639,49 @@ func (s *GrpcRouteMatch) Validate() error { return nil } -// SetMetadata sets the Metadata field's value. -func (s *GrpcRouteMatch) SetMetadata(v []*GrpcRouteMetadata) *GrpcRouteMatch { - s.Metadata = v +// SetVirtualServiceName sets the VirtualServiceName field's value. +func (s *GatewayRouteVirtualService) SetVirtualServiceName(v string) *GatewayRouteVirtualService { + s.VirtualServiceName = &v return s } -// SetMethodName sets the MethodName field's value. -func (s *GrpcRouteMatch) SetMethodName(v string) *GrpcRouteMatch { - s.MethodName = &v - return s -} - -// SetServiceName sets the ServiceName field's value. -func (s *GrpcRouteMatch) SetServiceName(v string) *GrpcRouteMatch { - s.ServiceName = &v - return s -} - -// An object that represents the match metadata for the route. -type GrpcRouteMetadata struct { +// An object that represents a gRPC gateway route. +type GrpcGatewayRoute struct { _ struct{} `type:"structure"` - Invert *bool `locationName:"invert" type:"boolean"` - - // An object that represents the match method. Specify one of the match values. - Match *GrpcRouteMetadataMatchMethod `locationName:"match" type:"structure"` + // An object that represents the action to take if a match is determined. + // + // Action is a required field + Action *GrpcGatewayRouteAction `locationName:"action" type:"structure" required:"true"` - // Name is a required field - Name *string `locationName:"name" min:"1" type:"string" required:"true"` + // An object that represents the criteria for determining a request match. + // + // Match is a required field + Match *GrpcGatewayRouteMatch `locationName:"match" type:"structure" required:"true"` } // String returns the string representation -func (s GrpcRouteMetadata) String() string { +func (s GrpcGatewayRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcRouteMetadata) GoString() string { +func (s GrpcGatewayRoute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GrpcRouteMetadata) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMetadata"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) +func (s *GrpcGatewayRoute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcGatewayRoute"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + if s.Match == nil { + invalidParams.Add(request.NewErrParamRequired("Match")) } - if s.Match != nil { - if err := s.Match.Validate(); err != nil { - invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) + if s.Action != nil { + if err := s.Action.Validate(); err != nil { + invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) } } @@ -5802,71 +7691,47 @@ func (s *GrpcRouteMetadata) Validate() error { return nil } -// SetInvert sets the Invert field's value. -func (s *GrpcRouteMetadata) SetInvert(v bool) *GrpcRouteMetadata { - s.Invert = &v +// SetAction sets the Action field's value. +func (s *GrpcGatewayRoute) SetAction(v *GrpcGatewayRouteAction) *GrpcGatewayRoute { + s.Action = v return s } // SetMatch sets the Match field's value. -func (s *GrpcRouteMetadata) SetMatch(v *GrpcRouteMetadataMatchMethod) *GrpcRouteMetadata { +func (s *GrpcGatewayRoute) SetMatch(v *GrpcGatewayRouteMatch) *GrpcGatewayRoute { s.Match = v return s } -// SetName sets the Name field's value. -func (s *GrpcRouteMetadata) SetName(v string) *GrpcRouteMetadata { - s.Name = &v - return s -} - -// An object that represents the match method. Specify one of the match values. -type GrpcRouteMetadataMatchMethod struct { +// An object that represents the action to take if a match is determined. +type GrpcGatewayRouteAction struct { _ struct{} `type:"structure"` - Exact *string `locationName:"exact" min:"1" type:"string"` - - Prefix *string `locationName:"prefix" min:"1" type:"string"` - - // An object that represents the range of values to match on. The first character - // of the range is included in the range, though the last character is not. - // For example, if the range specified were 1-100, only values 1-99 would be - // matched. - Range *MatchRange `locationName:"range" type:"structure"` - - Regex *string `locationName:"regex" min:"1" type:"string"` - - Suffix *string `locationName:"suffix" min:"1" type:"string"` + // An object that represents a gateway route target. + // + // Target is a required field + Target *GatewayRouteTarget `locationName:"target" type:"structure" required:"true"` } // String returns the string representation -func (s GrpcRouteMetadataMatchMethod) String() string { +func (s GrpcGatewayRouteAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcRouteMetadataMatchMethod) GoString() string { +func (s GrpcGatewayRouteAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GrpcRouteMetadataMatchMethod) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMetadataMatchMethod"} - if s.Exact != nil && len(*s.Exact) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) - } - if s.Prefix != nil && len(*s.Prefix) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) - } - if s.Regex != nil && len(*s.Regex) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) - } - if s.Suffix != nil && len(*s.Suffix) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) - } - if s.Range != nil { - if err := s.Range.Validate(); err != nil { - invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) +func (s *GrpcGatewayRouteAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcGatewayRouteAction"} + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + if s.Target != nil { + if err := s.Target.Validate(); err != nil { + invalidParams.AddNested("Target", err.(request.ErrInvalidParams)) } } @@ -5876,117 +7741,83 @@ func (s *GrpcRouteMetadataMatchMethod) Validate() error { return nil } -// SetExact sets the Exact field's value. -func (s *GrpcRouteMetadataMatchMethod) SetExact(v string) *GrpcRouteMetadataMatchMethod { - s.Exact = &v - return s -} - -// SetPrefix sets the Prefix field's value. -func (s *GrpcRouteMetadataMatchMethod) SetPrefix(v string) *GrpcRouteMetadataMatchMethod { - s.Prefix = &v - return s -} - -// SetRange sets the Range field's value. -func (s *GrpcRouteMetadataMatchMethod) SetRange(v *MatchRange) *GrpcRouteMetadataMatchMethod { - s.Range = v - return s -} - -// SetRegex sets the Regex field's value. -func (s *GrpcRouteMetadataMatchMethod) SetRegex(v string) *GrpcRouteMetadataMatchMethod { - s.Regex = &v - return s -} - -// SetSuffix sets the Suffix field's value. -func (s *GrpcRouteMetadataMatchMethod) SetSuffix(v string) *GrpcRouteMetadataMatchMethod { - s.Suffix = &v +// SetTarget sets the Target field's value. +func (s *GrpcGatewayRouteAction) SetTarget(v *GatewayRouteTarget) *GrpcGatewayRouteAction { + s.Target = v return s } -type GrpcTimeout struct { +// An object that represents the criteria for determining a request match. +type GrpcGatewayRouteMatch struct { _ struct{} `type:"structure"` - // An object that represents a duration of time. - Idle *Duration `locationName:"idle" type:"structure"` - - // An object that represents a duration of time. - PerRequest *Duration `locationName:"perRequest" type:"structure"` + ServiceName *string `locationName:"serviceName" type:"string"` } // String returns the string representation -func (s GrpcTimeout) String() string { +func (s GrpcGatewayRouteMatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GrpcTimeout) GoString() string { +func (s GrpcGatewayRouteMatch) GoString() string { return s.String() } -// SetIdle sets the Idle field's value. -func (s *GrpcTimeout) SetIdle(v *Duration) *GrpcTimeout { - s.Idle = v - return s -} - -// SetPerRequest sets the PerRequest field's value. -func (s *GrpcTimeout) SetPerRequest(v *Duration) *GrpcTimeout { - s.PerRequest = v +// SetServiceName sets the ServiceName field's value. +func (s *GrpcGatewayRouteMatch) SetServiceName(v string) *GrpcGatewayRouteMatch { + s.ServiceName = &v return s } -// An object that represents the method and value to match with the header value -// sent in a request. Specify one match method. -type HeaderMatchMethod struct { +// An object that represents a retry policy. Specify at least one value for +// at least one of the types of RetryEvents, a value for maxRetries, and a value +// for perRetryTimeout. +type GrpcRetryPolicy struct { _ struct{} `type:"structure"` - Exact *string `locationName:"exact" min:"1" type:"string"` + GrpcRetryEvents []*string `locationName:"grpcRetryEvents" min:"1" type:"list"` - Prefix *string `locationName:"prefix" min:"1" type:"string"` + HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` - // An object that represents the range of values to match on. The first character - // of the range is included in the range, though the last character is not. - // For example, if the range specified were 1-100, only values 1-99 would be - // matched. - Range *MatchRange `locationName:"range" type:"structure"` + // MaxRetries is a required field + MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` - Regex *string `locationName:"regex" min:"1" type:"string"` + // An object that represents a duration of time. + // + // PerRetryTimeout is a required field + PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` - Suffix *string `locationName:"suffix" min:"1" type:"string"` + TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` } // String returns the string representation -func (s HeaderMatchMethod) String() string { +func (s GrpcRetryPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HeaderMatchMethod) GoString() string { +func (s GrpcRetryPolicy) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *HeaderMatchMethod) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HeaderMatchMethod"} - if s.Exact != nil && len(*s.Exact) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) +func (s *GrpcRetryPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcRetryPolicy"} + if s.GrpcRetryEvents != nil && len(s.GrpcRetryEvents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GrpcRetryEvents", 1)) } - if s.Prefix != nil && len(*s.Prefix) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) + if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) } - if s.Regex != nil && len(*s.Regex) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) + if s.MaxRetries == nil { + invalidParams.Add(request.NewErrParamRequired("MaxRetries")) } - if s.Suffix != nil && len(*s.Suffix) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) + if s.PerRetryTimeout == nil { + invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) } - if s.Range != nil { - if err := s.Range.Validate(); err != nil { - invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) - } + if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) } if invalidParams.Len() > 0 { @@ -5995,263 +7826,72 @@ func (s *HeaderMatchMethod) Validate() error { return nil } -// SetExact sets the Exact field's value. -func (s *HeaderMatchMethod) SetExact(v string) *HeaderMatchMethod { - s.Exact = &v +// SetGrpcRetryEvents sets the GrpcRetryEvents field's value. +func (s *GrpcRetryPolicy) SetGrpcRetryEvents(v []*string) *GrpcRetryPolicy { + s.GrpcRetryEvents = v return s } -// SetPrefix sets the Prefix field's value. -func (s *HeaderMatchMethod) SetPrefix(v string) *HeaderMatchMethod { - s.Prefix = &v +// SetHttpRetryEvents sets the HttpRetryEvents field's value. +func (s *GrpcRetryPolicy) SetHttpRetryEvents(v []*string) *GrpcRetryPolicy { + s.HttpRetryEvents = v return s } -// SetRange sets the Range field's value. -func (s *HeaderMatchMethod) SetRange(v *MatchRange) *HeaderMatchMethod { - s.Range = v +// SetMaxRetries sets the MaxRetries field's value. +func (s *GrpcRetryPolicy) SetMaxRetries(v int64) *GrpcRetryPolicy { + s.MaxRetries = &v return s } -// SetRegex sets the Regex field's value. -func (s *HeaderMatchMethod) SetRegex(v string) *HeaderMatchMethod { - s.Regex = &v +// SetPerRetryTimeout sets the PerRetryTimeout field's value. +func (s *GrpcRetryPolicy) SetPerRetryTimeout(v *Duration) *GrpcRetryPolicy { + s.PerRetryTimeout = v return s } -// SetSuffix sets the Suffix field's value. -func (s *HeaderMatchMethod) SetSuffix(v string) *HeaderMatchMethod { - s.Suffix = &v +// SetTcpRetryEvents sets the TcpRetryEvents field's value. +func (s *GrpcRetryPolicy) SetTcpRetryEvents(v []*string) *GrpcRetryPolicy { + s.TcpRetryEvents = v return s } -// An object that represents the health check policy for a virtual node's listener. -type HealthCheckPolicy struct { +// An object that represents a gRPC route type. +type GrpcRoute struct { _ struct{} `type:"structure"` - // HealthyThreshold is a required field - HealthyThreshold *int64 `locationName:"healthyThreshold" min:"2" type:"integer" required:"true"` - - // IntervalMillis is a required field - IntervalMillis *int64 `locationName:"intervalMillis" min:"5000" type:"long" required:"true"` - - Path *string `locationName:"path" type:"string"` - - Port *int64 `locationName:"port" min:"1" type:"integer"` + // An object that represents the action to take if a match is determined. + // + // Action is a required field + Action *GrpcRouteAction `locationName:"action" type:"structure" required:"true"` - // Protocol is a required field - Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` + // An object that represents the criteria for determining a request match. + // + // Match is a required field + Match *GrpcRouteMatch `locationName:"match" type:"structure" required:"true"` - // TimeoutMillis is a required field - TimeoutMillis *int64 `locationName:"timeoutMillis" min:"2000" type:"long" required:"true"` + // An object that represents a retry policy. Specify at least one value for + // at least one of the types of RetryEvents, a value for maxRetries, and a value + // for perRetryTimeout. + RetryPolicy *GrpcRetryPolicy `locationName:"retryPolicy" type:"structure"` - // UnhealthyThreshold is a required field - UnhealthyThreshold *int64 `locationName:"unhealthyThreshold" min:"2" type:"integer" required:"true"` + // An object that represents types of timeouts. + Timeout *GrpcTimeout `locationName:"timeout" type:"structure"` } // String returns the string representation -func (s HealthCheckPolicy) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s HealthCheckPolicy) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *HealthCheckPolicy) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HealthCheckPolicy"} - if s.HealthyThreshold == nil { - invalidParams.Add(request.NewErrParamRequired("HealthyThreshold")) - } - if s.HealthyThreshold != nil && *s.HealthyThreshold < 2 { - invalidParams.Add(request.NewErrParamMinValue("HealthyThreshold", 2)) - } - if s.IntervalMillis == nil { - invalidParams.Add(request.NewErrParamRequired("IntervalMillis")) - } - if s.IntervalMillis != nil && *s.IntervalMillis < 5000 { - invalidParams.Add(request.NewErrParamMinValue("IntervalMillis", 5000)) - } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) - } - if s.Protocol == nil { - invalidParams.Add(request.NewErrParamRequired("Protocol")) - } - if s.TimeoutMillis == nil { - invalidParams.Add(request.NewErrParamRequired("TimeoutMillis")) - } - if s.TimeoutMillis != nil && *s.TimeoutMillis < 2000 { - invalidParams.Add(request.NewErrParamMinValue("TimeoutMillis", 2000)) - } - if s.UnhealthyThreshold == nil { - invalidParams.Add(request.NewErrParamRequired("UnhealthyThreshold")) - } - if s.UnhealthyThreshold != nil && *s.UnhealthyThreshold < 2 { - invalidParams.Add(request.NewErrParamMinValue("UnhealthyThreshold", 2)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetHealthyThreshold sets the HealthyThreshold field's value. -func (s *HealthCheckPolicy) SetHealthyThreshold(v int64) *HealthCheckPolicy { - s.HealthyThreshold = &v - return s -} - -// SetIntervalMillis sets the IntervalMillis field's value. -func (s *HealthCheckPolicy) SetIntervalMillis(v int64) *HealthCheckPolicy { - s.IntervalMillis = &v - return s -} - -// SetPath sets the Path field's value. -func (s *HealthCheckPolicy) SetPath(v string) *HealthCheckPolicy { - s.Path = &v - return s -} - -// SetPort sets the Port field's value. -func (s *HealthCheckPolicy) SetPort(v int64) *HealthCheckPolicy { - s.Port = &v - return s -} - -// SetProtocol sets the Protocol field's value. -func (s *HealthCheckPolicy) SetProtocol(v string) *HealthCheckPolicy { - s.Protocol = &v - return s -} - -// SetTimeoutMillis sets the TimeoutMillis field's value. -func (s *HealthCheckPolicy) SetTimeoutMillis(v int64) *HealthCheckPolicy { - s.TimeoutMillis = &v - return s -} - -// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. -func (s *HealthCheckPolicy) SetUnhealthyThreshold(v int64) *HealthCheckPolicy { - s.UnhealthyThreshold = &v - return s -} - -// An object that represents a retry policy. Specify at least one value for -// at least one of the types of RetryEvents, a value for maxRetries, and a value -// for perRetryTimeout. -type HttpRetryPolicy struct { - _ struct{} `type:"structure"` - - HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` - - // MaxRetries is a required field - MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` - - // An object that represents a duration of time. - // - // PerRetryTimeout is a required field - PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` - - TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` -} - -// String returns the string representation -func (s HttpRetryPolicy) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s HttpRetryPolicy) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *HttpRetryPolicy) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HttpRetryPolicy"} - if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { - invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) - } - if s.MaxRetries == nil { - invalidParams.Add(request.NewErrParamRequired("MaxRetries")) - } - if s.PerRetryTimeout == nil { - invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) - } - if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetHttpRetryEvents sets the HttpRetryEvents field's value. -func (s *HttpRetryPolicy) SetHttpRetryEvents(v []*string) *HttpRetryPolicy { - s.HttpRetryEvents = v - return s -} - -// SetMaxRetries sets the MaxRetries field's value. -func (s *HttpRetryPolicy) SetMaxRetries(v int64) *HttpRetryPolicy { - s.MaxRetries = &v - return s -} - -// SetPerRetryTimeout sets the PerRetryTimeout field's value. -func (s *HttpRetryPolicy) SetPerRetryTimeout(v *Duration) *HttpRetryPolicy { - s.PerRetryTimeout = v - return s -} - -// SetTcpRetryEvents sets the TcpRetryEvents field's value. -func (s *HttpRetryPolicy) SetTcpRetryEvents(v []*string) *HttpRetryPolicy { - s.TcpRetryEvents = v - return s -} - -// An object that represents an HTTP or HTTP/2 route type. -type HttpRoute struct { - _ struct{} `type:"structure"` - - // An object that represents the action to take if a match is determined. - // - // Action is a required field - Action *HttpRouteAction `locationName:"action" type:"structure" required:"true"` - - // An object that represents the requirements for a route to match HTTP requests - // for a virtual router. - // - // Match is a required field - Match *HttpRouteMatch `locationName:"match" type:"structure" required:"true"` - - // An object that represents a retry policy. Specify at least one value for - // at least one of the types of RetryEvents, a value for maxRetries, and a value - // for perRetryTimeout. - RetryPolicy *HttpRetryPolicy `locationName:"retryPolicy" type:"structure"` - - Timeout *HttpTimeout `locationName:"timeout" type:"structure"` -} - -// String returns the string representation -func (s HttpRoute) String() string { +func (s GrpcRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HttpRoute) GoString() string { +func (s GrpcRoute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *HttpRoute) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HttpRoute"} +func (s *GrpcRoute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcRoute"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } @@ -6281,31 +7921,31 @@ func (s *HttpRoute) Validate() error { } // SetAction sets the Action field's value. -func (s *HttpRoute) SetAction(v *HttpRouteAction) *HttpRoute { +func (s *GrpcRoute) SetAction(v *GrpcRouteAction) *GrpcRoute { s.Action = v return s } // SetMatch sets the Match field's value. -func (s *HttpRoute) SetMatch(v *HttpRouteMatch) *HttpRoute { +func (s *GrpcRoute) SetMatch(v *GrpcRouteMatch) *GrpcRoute { s.Match = v return s } // SetRetryPolicy sets the RetryPolicy field's value. -func (s *HttpRoute) SetRetryPolicy(v *HttpRetryPolicy) *HttpRoute { +func (s *GrpcRoute) SetRetryPolicy(v *GrpcRetryPolicy) *GrpcRoute { s.RetryPolicy = v return s } // SetTimeout sets the Timeout field's value. -func (s *HttpRoute) SetTimeout(v *HttpTimeout) *HttpRoute { +func (s *GrpcRoute) SetTimeout(v *GrpcTimeout) *GrpcRoute { s.Timeout = v return s } // An object that represents the action to take if a match is determined. -type HttpRouteAction struct { +type GrpcRouteAction struct { _ struct{} `type:"structure"` // WeightedTargets is a required field @@ -6313,18 +7953,18 @@ type HttpRouteAction struct { } // String returns the string representation -func (s HttpRouteAction) String() string { +func (s GrpcRouteAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HttpRouteAction) GoString() string { +func (s GrpcRouteAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *HttpRouteAction) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HttpRouteAction"} +func (s *GrpcRouteAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcRouteAction"} if s.WeightedTargets == nil { invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) } @@ -6349,116 +7989,185 @@ func (s *HttpRouteAction) Validate() error { } // SetWeightedTargets sets the WeightedTargets field's value. -func (s *HttpRouteAction) SetWeightedTargets(v []*WeightedTarget) *HttpRouteAction { +func (s *GrpcRouteAction) SetWeightedTargets(v []*WeightedTarget) *GrpcRouteAction { s.WeightedTargets = v return s } -// An object that represents the HTTP header in the request. -type HttpRouteHeader struct { +// An object that represents the criteria for determining a request match. +type GrpcRouteMatch struct { _ struct{} `type:"structure"` - Invert *bool `locationName:"invert" type:"boolean"` + Metadata []*GrpcRouteMetadata `locationName:"metadata" min:"1" type:"list"` - // An object that represents the method and value to match with the header value - // sent in a request. Specify one match method. - Match *HeaderMatchMethod `locationName:"match" type:"structure"` + MethodName *string `locationName:"methodName" min:"1" type:"string"` - // Name is a required field - Name *string `locationName:"name" min:"1" type:"string" required:"true"` + ServiceName *string `locationName:"serviceName" type:"string"` } // String returns the string representation -func (s HttpRouteHeader) String() string { +func (s GrpcRouteMatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HttpRouteHeader) GoString() string { +func (s GrpcRouteMatch) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *HttpRouteHeader) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HttpRouteHeader"} - 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.Match != nil { - if err := s.Match.Validate(); err != nil { - invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) - } +func (s *GrpcRouteMatch) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMatch"} + if s.Metadata != nil && len(s.Metadata) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Metadata", 1)) } - - if invalidParams.Len() > 0 { - return invalidParams + if s.MethodName != nil && len(*s.MethodName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MethodName", 1)) + } + if s.Metadata != nil { + for i, v := range s.Metadata { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metadata", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadata sets the Metadata field's value. +func (s *GrpcRouteMatch) SetMetadata(v []*GrpcRouteMetadata) *GrpcRouteMatch { + s.Metadata = v + return s +} + +// SetMethodName sets the MethodName field's value. +func (s *GrpcRouteMatch) SetMethodName(v string) *GrpcRouteMatch { + s.MethodName = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *GrpcRouteMatch) SetServiceName(v string) *GrpcRouteMatch { + s.ServiceName = &v + return s +} + +// An object that represents the match metadata for the route. +type GrpcRouteMetadata struct { + _ struct{} `type:"structure"` + + Invert *bool `locationName:"invert" type:"boolean"` + + // An object that represents the match method. Specify one of the match values. + Match *GrpcRouteMetadataMatchMethod `locationName:"match" type:"structure"` + + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GrpcRouteMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GrpcRouteMetadata) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GrpcRouteMetadata) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMetadata"} + 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.Match != nil { + if err := s.Match.Validate(); err != nil { + invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams } return nil } // SetInvert sets the Invert field's value. -func (s *HttpRouteHeader) SetInvert(v bool) *HttpRouteHeader { +func (s *GrpcRouteMetadata) SetInvert(v bool) *GrpcRouteMetadata { s.Invert = &v return s } // SetMatch sets the Match field's value. -func (s *HttpRouteHeader) SetMatch(v *HeaderMatchMethod) *HttpRouteHeader { +func (s *GrpcRouteMetadata) SetMatch(v *GrpcRouteMetadataMatchMethod) *GrpcRouteMetadata { s.Match = v return s } // SetName sets the Name field's value. -func (s *HttpRouteHeader) SetName(v string) *HttpRouteHeader { +func (s *GrpcRouteMetadata) SetName(v string) *GrpcRouteMetadata { s.Name = &v return s } -// An object that represents the requirements for a route to match HTTP requests -// for a virtual router. -type HttpRouteMatch struct { +// An object that represents the match method. Specify one of the match values. +type GrpcRouteMetadataMatchMethod struct { _ struct{} `type:"structure"` - Headers []*HttpRouteHeader `locationName:"headers" min:"1" type:"list"` + Exact *string `locationName:"exact" min:"1" type:"string"` - Method *string `locationName:"method" type:"string" enum:"HttpMethod"` + Prefix *string `locationName:"prefix" min:"1" type:"string"` - // Prefix is a required field - Prefix *string `locationName:"prefix" type:"string" required:"true"` + // An object that represents the range of values to match on. The first character + // of the range is included in the range, though the last character is not. + // For example, if the range specified were 1-100, only values 1-99 would be + // matched. + Range *MatchRange `locationName:"range" type:"structure"` - Scheme *string `locationName:"scheme" type:"string" enum:"HttpScheme"` + Regex *string `locationName:"regex" min:"1" type:"string"` + + Suffix *string `locationName:"suffix" min:"1" type:"string"` } // String returns the string representation -func (s HttpRouteMatch) String() string { +func (s GrpcRouteMetadataMatchMethod) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HttpRouteMatch) GoString() string { +func (s GrpcRouteMetadataMatchMethod) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *HttpRouteMatch) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "HttpRouteMatch"} - if s.Headers != nil && len(s.Headers) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Headers", 1)) +func (s *GrpcRouteMetadataMatchMethod) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrpcRouteMetadataMatchMethod"} + if s.Exact != nil && len(*s.Exact) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) } - if s.Prefix == nil { - invalidParams.Add(request.NewErrParamRequired("Prefix")) + if s.Prefix != nil && len(*s.Prefix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) } - if s.Headers != nil { - for i, v := range s.Headers { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Headers", i), err.(request.ErrInvalidParams)) - } + if s.Regex != nil && len(*s.Regex) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) + } + if s.Suffix != nil && len(*s.Suffix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) + } + if s.Range != nil { + if err := s.Range.Validate(); err != nil { + invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) } } @@ -6468,31 +8177,38 @@ func (s *HttpRouteMatch) Validate() error { return nil } -// SetHeaders sets the Headers field's value. -func (s *HttpRouteMatch) SetHeaders(v []*HttpRouteHeader) *HttpRouteMatch { - s.Headers = v +// SetExact sets the Exact field's value. +func (s *GrpcRouteMetadataMatchMethod) SetExact(v string) *GrpcRouteMetadataMatchMethod { + s.Exact = &v return s } -// SetMethod sets the Method field's value. -func (s *HttpRouteMatch) SetMethod(v string) *HttpRouteMatch { - s.Method = &v +// SetPrefix sets the Prefix field's value. +func (s *GrpcRouteMetadataMatchMethod) SetPrefix(v string) *GrpcRouteMetadataMatchMethod { + s.Prefix = &v return s } -// SetPrefix sets the Prefix field's value. -func (s *HttpRouteMatch) SetPrefix(v string) *HttpRouteMatch { - s.Prefix = &v +// SetRange sets the Range field's value. +func (s *GrpcRouteMetadataMatchMethod) SetRange(v *MatchRange) *GrpcRouteMetadataMatchMethod { + s.Range = v return s } -// SetScheme sets the Scheme field's value. -func (s *HttpRouteMatch) SetScheme(v string) *HttpRouteMatch { - s.Scheme = &v +// SetRegex sets the Regex field's value. +func (s *GrpcRouteMetadataMatchMethod) SetRegex(v string) *GrpcRouteMetadataMatchMethod { + s.Regex = &v return s } -type HttpTimeout struct { +// SetSuffix sets the Suffix field's value. +func (s *GrpcRouteMetadataMatchMethod) SetSuffix(v string) *GrpcRouteMetadataMatchMethod { + s.Suffix = &v + return s +} + +// An object that represents types of timeouts. +type GrpcTimeout struct { _ struct{} `type:"structure"` // An object that represents a duration of time. @@ -6503,165 +8219,273 @@ type HttpTimeout struct { } // String returns the string representation -func (s HttpTimeout) String() string { +func (s GrpcTimeout) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s HttpTimeout) GoString() string { +func (s GrpcTimeout) GoString() string { return s.String() } // SetIdle sets the Idle field's value. -func (s *HttpTimeout) SetIdle(v *Duration) *HttpTimeout { +func (s *GrpcTimeout) SetIdle(v *Duration) *GrpcTimeout { s.Idle = v return s } // SetPerRequest sets the PerRequest field's value. -func (s *HttpTimeout) SetPerRequest(v *Duration) *HttpTimeout { +func (s *GrpcTimeout) SetPerRequest(v *Duration) *GrpcTimeout { s.PerRequest = v return s } -// The request processing has failed because of an unknown error, exception, -// or failure. -type InternalServerErrorException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// An object that represents the method and value to match with the header value +// sent in a request. Specify one match method. +type HeaderMatchMethod struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"message" type:"string"` + Exact *string `locationName:"exact" min:"1" type:"string"` + + Prefix *string `locationName:"prefix" min:"1" type:"string"` + + // An object that represents the range of values to match on. The first character + // of the range is included in the range, though the last character is not. + // For example, if the range specified were 1-100, only values 1-99 would be + // matched. + Range *MatchRange `locationName:"range" type:"structure"` + + Regex *string `locationName:"regex" min:"1" type:"string"` + + Suffix *string `locationName:"suffix" min:"1" type:"string"` } // String returns the string representation -func (s InternalServerErrorException) String() string { +func (s HeaderMatchMethod) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InternalServerErrorException) GoString() string { +func (s HeaderMatchMethod) GoString() string { return s.String() } -func newErrorInternalServerErrorException(v protocol.ResponseMetadata) error { - return &InternalServerErrorException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *HeaderMatchMethod) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HeaderMatchMethod"} + if s.Exact != nil && len(*s.Exact) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) } -} - -// Code returns the exception type name. -func (s *InternalServerErrorException) Code() string { - return "InternalServerErrorException" -} - -// Message returns the exception's message. -func (s *InternalServerErrorException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.Prefix != nil && len(*s.Prefix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) + } + if s.Regex != nil && len(*s.Regex) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) + } + if s.Suffix != nil && len(*s.Suffix) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) + } + if s.Range != nil { + if err := s.Range.Validate(); err != nil { + invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) + } } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InternalServerErrorException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *InternalServerErrorException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetExact sets the Exact field's value. +func (s *HeaderMatchMethod) SetExact(v string) *HeaderMatchMethod { + s.Exact = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InternalServerErrorException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetPrefix sets the Prefix field's value. +func (s *HeaderMatchMethod) SetPrefix(v string) *HeaderMatchMethod { + s.Prefix = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InternalServerErrorException) RequestID() string { - return s.RespMetadata.RequestID +// SetRange sets the Range field's value. +func (s *HeaderMatchMethod) SetRange(v *MatchRange) *HeaderMatchMethod { + s.Range = v + return s } -// You have exceeded a service limit for your account. For more information, -// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) -// in the AWS App Mesh User Guide. -type LimitExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetRegex sets the Regex field's value. +func (s *HeaderMatchMethod) SetRegex(v string) *HeaderMatchMethod { + s.Regex = &v + return s +} - Message_ *string `locationName:"message" type:"string"` +// SetSuffix sets the Suffix field's value. +func (s *HeaderMatchMethod) SetSuffix(v string) *HeaderMatchMethod { + s.Suffix = &v + return s +} + +// An object that represents the health check policy for a virtual node's listener. +type HealthCheckPolicy struct { + _ struct{} `type:"structure"` + + // HealthyThreshold is a required field + HealthyThreshold *int64 `locationName:"healthyThreshold" min:"2" type:"integer" required:"true"` + + // IntervalMillis is a required field + IntervalMillis *int64 `locationName:"intervalMillis" min:"5000" type:"long" required:"true"` + + Path *string `locationName:"path" type:"string"` + + Port *int64 `locationName:"port" min:"1" type:"integer"` + + // Protocol is a required field + Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` + + // TimeoutMillis is a required field + TimeoutMillis *int64 `locationName:"timeoutMillis" min:"2000" type:"long" required:"true"` + + // UnhealthyThreshold is a required field + UnhealthyThreshold *int64 `locationName:"unhealthyThreshold" min:"2" type:"integer" required:"true"` } // String returns the string representation -func (s LimitExceededException) String() string { +func (s HealthCheckPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LimitExceededException) GoString() string { +func (s HealthCheckPolicy) GoString() string { return s.String() } -func newErrorLimitExceededException(v protocol.ResponseMetadata) error { - return &LimitExceededException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *HealthCheckPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HealthCheckPolicy"} + if s.HealthyThreshold == nil { + invalidParams.Add(request.NewErrParamRequired("HealthyThreshold")) + } + if s.HealthyThreshold != nil && *s.HealthyThreshold < 2 { + invalidParams.Add(request.NewErrParamMinValue("HealthyThreshold", 2)) + } + if s.IntervalMillis == nil { + invalidParams.Add(request.NewErrParamRequired("IntervalMillis")) + } + if s.IntervalMillis != nil && *s.IntervalMillis < 5000 { + invalidParams.Add(request.NewErrParamMinValue("IntervalMillis", 5000)) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) + } + if s.TimeoutMillis == nil { + invalidParams.Add(request.NewErrParamRequired("TimeoutMillis")) + } + if s.TimeoutMillis != nil && *s.TimeoutMillis < 2000 { + invalidParams.Add(request.NewErrParamMinValue("TimeoutMillis", 2000)) + } + if s.UnhealthyThreshold == nil { + invalidParams.Add(request.NewErrParamRequired("UnhealthyThreshold")) + } + if s.UnhealthyThreshold != nil && *s.UnhealthyThreshold < 2 { + invalidParams.Add(request.NewErrParamMinValue("UnhealthyThreshold", 2)) + } + + if invalidParams.Len() > 0 { + return invalidParams } + return nil } -// Code returns the exception type name. -func (s *LimitExceededException) Code() string { - return "LimitExceededException" +// SetHealthyThreshold sets the HealthyThreshold field's value. +func (s *HealthCheckPolicy) SetHealthyThreshold(v int64) *HealthCheckPolicy { + s.HealthyThreshold = &v + return s } -// Message returns the exception's message. -func (s *LimitExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetIntervalMillis sets the IntervalMillis field's value. +func (s *HealthCheckPolicy) SetIntervalMillis(v int64) *HealthCheckPolicy { + s.IntervalMillis = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *LimitExceededException) OrigErr() error { - return nil +// SetPath sets the Path field's value. +func (s *HealthCheckPolicy) SetPath(v string) *HealthCheckPolicy { + s.Path = &v + return s } -func (s *LimitExceededException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetPort sets the Port field's value. +func (s *HealthCheckPolicy) SetPort(v int64) *HealthCheckPolicy { + s.Port = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *LimitExceededException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetProtocol sets the Protocol field's value. +func (s *HealthCheckPolicy) SetProtocol(v string) *HealthCheckPolicy { + s.Protocol = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *LimitExceededException) RequestID() string { - return s.RespMetadata.RequestID +// SetTimeoutMillis sets the TimeoutMillis field's value. +func (s *HealthCheckPolicy) SetTimeoutMillis(v int64) *HealthCheckPolicy { + s.TimeoutMillis = &v + return s } -type ListMeshesInput struct { +// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. +func (s *HealthCheckPolicy) SetUnhealthyThreshold(v int64) *HealthCheckPolicy { + s.UnhealthyThreshold = &v + return s +} + +// An object that represents an HTTP gateway route. +type HttpGatewayRoute struct { _ struct{} `type:"structure"` - Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` + // An object that represents the action to take if a match is determined. + // + // Action is a required field + Action *HttpGatewayRouteAction `locationName:"action" type:"structure" required:"true"` - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // An object that represents the criteria for determining a request match. + // + // Match is a required field + Match *HttpGatewayRouteMatch `locationName:"match" type:"structure" required:"true"` } // String returns the string representation -func (s ListMeshesInput) String() string { +func (s HttpGatewayRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListMeshesInput) GoString() string { +func (s HttpGatewayRoute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListMeshesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListMeshesInput"} - if s.Limit != nil && *s.Limit < 1 { - invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) +func (s *HttpGatewayRoute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpGatewayRoute"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.Match == nil { + invalidParams.Add(request.NewErrParamRequired("Match")) + } + if s.Action != nil { + if err := s.Action.Validate(); err != nil { + invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) + } + } + if s.Match != nil { + if err := s.Match.Validate(); err != nil { + invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -6670,95 +8494,85 @@ func (s *ListMeshesInput) Validate() error { return nil } -// SetLimit sets the Limit field's value. -func (s *ListMeshesInput) SetLimit(v int64) *ListMeshesInput { - s.Limit = &v +// SetAction sets the Action field's value. +func (s *HttpGatewayRoute) SetAction(v *HttpGatewayRouteAction) *HttpGatewayRoute { + s.Action = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListMeshesInput) SetNextToken(v string) *ListMeshesInput { - s.NextToken = &v +// SetMatch sets the Match field's value. +func (s *HttpGatewayRoute) SetMatch(v *HttpGatewayRouteMatch) *HttpGatewayRoute { + s.Match = v return s } -type ListMeshesOutput struct { +// An object that represents the action to take if a match is determined. +type HttpGatewayRouteAction struct { _ struct{} `type:"structure"` - // Meshes is a required field - Meshes []*MeshRef `locationName:"meshes" type:"list" required:"true"` - - NextToken *string `locationName:"nextToken" type:"string"` + // An object that represents a gateway route target. + // + // Target is a required field + Target *GatewayRouteTarget `locationName:"target" type:"structure" required:"true"` } // String returns the string representation -func (s ListMeshesOutput) String() string { +func (s HttpGatewayRouteAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListMeshesOutput) GoString() string { +func (s HttpGatewayRouteAction) GoString() string { return s.String() } -// SetMeshes sets the Meshes field's value. -func (s *ListMeshesOutput) SetMeshes(v []*MeshRef) *ListMeshesOutput { - s.Meshes = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *HttpGatewayRouteAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpGatewayRouteAction"} + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + if s.Target != nil { + if err := s.Target.Validate(); err != nil { + invalidParams.AddNested("Target", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetNextToken sets the NextToken field's value. -func (s *ListMeshesOutput) SetNextToken(v string) *ListMeshesOutput { - s.NextToken = &v +// SetTarget sets the Target field's value. +func (s *HttpGatewayRouteAction) SetTarget(v *GatewayRouteTarget) *HttpGatewayRouteAction { + s.Target = v return s } -type ListRoutesInput struct { +// An object that represents the criteria for determining a request match. +type HttpGatewayRouteMatch struct { _ struct{} `type:"structure"` - Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` - - // VirtualRouterName is a required field - VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // Prefix is a required field + Prefix *string `locationName:"prefix" type:"string" required:"true"` } // String returns the string representation -func (s ListRoutesInput) String() string { +func (s HttpGatewayRouteMatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListRoutesInput) GoString() string { +func (s HttpGatewayRouteMatch) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListRoutesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListRoutesInput"} - if s.Limit != nil && *s.Limit < 1 { - invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) - } - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) - } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) - } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) - } - if s.VirtualRouterName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) - } - if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) +func (s *HttpGatewayRouteMatch) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpGatewayRouteMatch"} + if s.Prefix == nil { + invalidParams.Add(request.NewErrParamRequired("Prefix")) } if invalidParams.Len() > 0 { @@ -6767,96 +8581,144 @@ func (s *ListRoutesInput) Validate() error { return nil } -// SetLimit sets the Limit field's value. -func (s *ListRoutesInput) SetLimit(v int64) *ListRoutesInput { - s.Limit = &v +// SetPrefix sets the Prefix field's value. +func (s *HttpGatewayRouteMatch) SetPrefix(v string) *HttpGatewayRouteMatch { + s.Prefix = &v return s } -// SetMeshName sets the MeshName field's value. -func (s *ListRoutesInput) SetMeshName(v string) *ListRoutesInput { - s.MeshName = &v - return s -} +// An object that represents a retry policy. Specify at least one value for +// at least one of the types of RetryEvents, a value for maxRetries, and a value +// for perRetryTimeout. +type HttpRetryPolicy struct { + _ struct{} `type:"structure"` -// SetMeshOwner sets the MeshOwner field's value. -func (s *ListRoutesInput) SetMeshOwner(v string) *ListRoutesInput { - s.MeshOwner = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListRoutesInput) SetNextToken(v string) *ListRoutesInput { - s.NextToken = &v - return s -} - -// SetVirtualRouterName sets the VirtualRouterName field's value. -func (s *ListRoutesInput) SetVirtualRouterName(v string) *ListRoutesInput { - s.VirtualRouterName = &v - return s -} + HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` -type ListRoutesOutput struct { - _ struct{} `type:"structure"` + // MaxRetries is a required field + MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` - NextToken *string `locationName:"nextToken" type:"string"` + // An object that represents a duration of time. + // + // PerRetryTimeout is a required field + PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` - // Routes is a required field - Routes []*RouteRef `locationName:"routes" type:"list" required:"true"` + TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` } // String returns the string representation -func (s ListRoutesOutput) String() string { +func (s HttpRetryPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListRoutesOutput) GoString() string { +func (s HttpRetryPolicy) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListRoutesOutput) SetNextToken(v string) *ListRoutesOutput { - s.NextToken = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *HttpRetryPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpRetryPolicy"} + if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) + } + if s.MaxRetries == nil { + invalidParams.Add(request.NewErrParamRequired("MaxRetries")) + } + if s.PerRetryTimeout == nil { + invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) + } + if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHttpRetryEvents sets the HttpRetryEvents field's value. +func (s *HttpRetryPolicy) SetHttpRetryEvents(v []*string) *HttpRetryPolicy { + s.HttpRetryEvents = v return s } -// SetRoutes sets the Routes field's value. -func (s *ListRoutesOutput) SetRoutes(v []*RouteRef) *ListRoutesOutput { - s.Routes = v +// SetMaxRetries sets the MaxRetries field's value. +func (s *HttpRetryPolicy) SetMaxRetries(v int64) *HttpRetryPolicy { + s.MaxRetries = &v return s } -type ListTagsForResourceInput struct { +// SetPerRetryTimeout sets the PerRetryTimeout field's value. +func (s *HttpRetryPolicy) SetPerRetryTimeout(v *Duration) *HttpRetryPolicy { + s.PerRetryTimeout = v + return s +} + +// SetTcpRetryEvents sets the TcpRetryEvents field's value. +func (s *HttpRetryPolicy) SetTcpRetryEvents(v []*string) *HttpRetryPolicy { + s.TcpRetryEvents = v + return s +} + +// An object that represents an HTTP or HTTP/2 route type. +type HttpRoute struct { _ struct{} `type:"structure"` - Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` + // An object that represents the action to take if a match is determined. + // + // Action is a required field + Action *HttpRouteAction `locationName:"action" type:"structure" required:"true"` - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // An object that represents the requirements for a route to match HTTP requests + // for a virtual router. + // + // Match is a required field + Match *HttpRouteMatch `locationName:"match" type:"structure" required:"true"` - // ResourceArn is a required field - ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` + // An object that represents a retry policy. Specify at least one value for + // at least one of the types of RetryEvents, a value for maxRetries, and a value + // for perRetryTimeout. + RetryPolicy *HttpRetryPolicy `locationName:"retryPolicy" type:"structure"` + + // An object that represents types of timeouts. + Timeout *HttpTimeout `locationName:"timeout" type:"structure"` } // String returns the string representation -func (s ListTagsForResourceInput) String() string { +func (s HttpRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTagsForResourceInput) GoString() string { +func (s HttpRoute) 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.Limit != nil && *s.Limit < 1 { - invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) +func (s *HttpRoute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpRoute"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) } - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + if s.Match == nil { + invalidParams.Add(request.NewErrParamRequired("Match")) + } + if s.Action != nil { + if err := s.Action.Validate(); err != nil { + invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) + } + } + if s.Match != nil { + if err := s.Match.Validate(); err != nil { + invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) + } + } + if s.RetryPolicy != nil { + if err := s.RetryPolicy.Validate(); err != nil { + invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -6865,92 +8727,117 @@ func (s *ListTagsForResourceInput) Validate() error { return nil } -// SetLimit sets the Limit field's value. -func (s *ListTagsForResourceInput) SetLimit(v int64) *ListTagsForResourceInput { - s.Limit = &v +// SetAction sets the Action field's value. +func (s *HttpRoute) SetAction(v *HttpRouteAction) *HttpRoute { + s.Action = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { - s.NextToken = &v +// SetMatch sets the Match field's value. +func (s *HttpRoute) SetMatch(v *HttpRouteMatch) *HttpRoute { + s.Match = v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { - s.ResourceArn = &v +// SetRetryPolicy sets the RetryPolicy field's value. +func (s *HttpRoute) SetRetryPolicy(v *HttpRetryPolicy) *HttpRoute { + s.RetryPolicy = v return s } -type ListTagsForResourceOutput struct { - _ struct{} `type:"structure"` +// SetTimeout sets the Timeout field's value. +func (s *HttpRoute) SetTimeout(v *HttpTimeout) *HttpRoute { + s.Timeout = v + return s +} - NextToken *string `locationName:"nextToken" type:"string"` +// An object that represents the action to take if a match is determined. +type HttpRouteAction struct { + _ struct{} `type:"structure"` - // Tags is a required field - Tags []*TagRef `locationName:"tags" type:"list" required:"true"` + // WeightedTargets is a required field + WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` } // String returns the string representation -func (s ListTagsForResourceOutput) String() string { +func (s HttpRouteAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTagsForResourceOutput) GoString() string { +func (s HttpRouteAction) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { - s.NextToken = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *HttpRouteAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpRouteAction"} + if s.WeightedTargets == nil { + invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) + } + if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) + } + if s.WeightedTargets != nil { + for i, v := range s.WeightedTargets { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetTags sets the Tags field's value. -func (s *ListTagsForResourceOutput) SetTags(v []*TagRef) *ListTagsForResourceOutput { - s.Tags = v +// SetWeightedTargets sets the WeightedTargets field's value. +func (s *HttpRouteAction) SetWeightedTargets(v []*WeightedTarget) *HttpRouteAction { + s.WeightedTargets = v return s } -type ListVirtualNodesInput struct { +// An object that represents the HTTP header in the request. +type HttpRouteHeader struct { _ struct{} `type:"structure"` - Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + Invert *bool `locationName:"invert" type:"boolean"` - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + // An object that represents the method and value to match with the header value + // sent in a request. Specify one match method. + Match *HeaderMatchMethod `locationName:"match" type:"structure"` - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListVirtualNodesInput) String() string { +func (s HttpRouteHeader) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListVirtualNodesInput) GoString() string { +func (s HttpRouteHeader) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListVirtualNodesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListVirtualNodesInput"} - if s.Limit != nil && *s.Limit < 1 { - invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) - } - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) +func (s *HttpRouteHeader) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpRouteHeader"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + if s.Match != nil { + if err := s.Match.Validate(); err != nil { + invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -6959,162 +8846,248 @@ func (s *ListVirtualNodesInput) Validate() error { return nil } -// SetLimit sets the Limit field's value. -func (s *ListVirtualNodesInput) SetLimit(v int64) *ListVirtualNodesInput { - s.Limit = &v +// SetInvert sets the Invert field's value. +func (s *HttpRouteHeader) SetInvert(v bool) *HttpRouteHeader { + s.Invert = &v return s } -// SetMeshName sets the MeshName field's value. -func (s *ListVirtualNodesInput) SetMeshName(v string) *ListVirtualNodesInput { - s.MeshName = &v +// SetMatch sets the Match field's value. +func (s *HttpRouteHeader) SetMatch(v *HeaderMatchMethod) *HttpRouteHeader { + s.Match = v return s } -// SetMeshOwner sets the MeshOwner field's value. -func (s *ListVirtualNodesInput) SetMeshOwner(v string) *ListVirtualNodesInput { - s.MeshOwner = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListVirtualNodesInput) SetNextToken(v string) *ListVirtualNodesInput { - s.NextToken = &v +// SetName sets the Name field's value. +func (s *HttpRouteHeader) SetName(v string) *HttpRouteHeader { + s.Name = &v return s } -type ListVirtualNodesOutput struct { +// An object that represents the requirements for a route to match HTTP requests +// for a virtual router. +type HttpRouteMatch struct { _ struct{} `type:"structure"` - NextToken *string `locationName:"nextToken" type:"string"` + Headers []*HttpRouteHeader `locationName:"headers" min:"1" type:"list"` - // VirtualNodes is a required field - VirtualNodes []*VirtualNodeRef `locationName:"virtualNodes" type:"list" required:"true"` + Method *string `locationName:"method" type:"string" enum:"HttpMethod"` + + // Prefix is a required field + Prefix *string `locationName:"prefix" type:"string" required:"true"` + + Scheme *string `locationName:"scheme" type:"string" enum:"HttpScheme"` } // String returns the string representation -func (s ListVirtualNodesOutput) String() string { +func (s HttpRouteMatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListVirtualNodesOutput) GoString() string { +func (s HttpRouteMatch) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListVirtualNodesOutput) SetNextToken(v string) *ListVirtualNodesOutput { - s.NextToken = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *HttpRouteMatch) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "HttpRouteMatch"} + if s.Headers != nil && len(s.Headers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Headers", 1)) + } + if s.Prefix == nil { + invalidParams.Add(request.NewErrParamRequired("Prefix")) + } + if s.Headers != nil { + for i, v := range s.Headers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Headers", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHeaders sets the Headers field's value. +func (s *HttpRouteMatch) SetHeaders(v []*HttpRouteHeader) *HttpRouteMatch { + s.Headers = v return s } -// SetVirtualNodes sets the VirtualNodes field's value. -func (s *ListVirtualNodesOutput) SetVirtualNodes(v []*VirtualNodeRef) *ListVirtualNodesOutput { - s.VirtualNodes = v +// SetMethod sets the Method field's value. +func (s *HttpRouteMatch) SetMethod(v string) *HttpRouteMatch { + s.Method = &v return s } -type ListVirtualRoutersInput struct { +// SetPrefix sets the Prefix field's value. +func (s *HttpRouteMatch) SetPrefix(v string) *HttpRouteMatch { + s.Prefix = &v + return s +} + +// SetScheme sets the Scheme field's value. +func (s *HttpRouteMatch) SetScheme(v string) *HttpRouteMatch { + s.Scheme = &v + return s +} + +// An object that represents types of timeouts. +type HttpTimeout struct { _ struct{} `type:"structure"` - Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` + // An object that represents a duration of time. + Idle *Duration `locationName:"idle" type:"structure"` - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + // An object that represents a duration of time. + PerRequest *Duration `locationName:"perRequest" type:"structure"` +} - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` +// String returns the string representation +func (s HttpTimeout) String() string { + return awsutil.Prettify(s) +} - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +// GoString returns the string representation +func (s HttpTimeout) GoString() string { + return s.String() +} + +// SetIdle sets the Idle field's value. +func (s *HttpTimeout) SetIdle(v *Duration) *HttpTimeout { + s.Idle = v + return s +} + +// SetPerRequest sets the PerRequest field's value. +func (s *HttpTimeout) SetPerRequest(v *Duration) *HttpTimeout { + s.PerRequest = v + return s +} + +// The request processing has failed because of an unknown error, exception, +// or failure. +type InternalServerErrorException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` } // String returns the string representation -func (s ListVirtualRoutersInput) String() string { +func (s InternalServerErrorException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListVirtualRoutersInput) GoString() string { +func (s InternalServerErrorException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListVirtualRoutersInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListVirtualRoutersInput"} - if s.Limit != nil && *s.Limit < 1 { - invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) - } - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) - } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) - } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) +func newErrorInternalServerErrorException(v protocol.ResponseMetadata) error { + return &InternalServerErrorException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *InternalServerErrorException) Code() string { + return "InternalServerErrorException" } -// SetLimit sets the Limit field's value. -func (s *ListVirtualRoutersInput) SetLimit(v int64) *ListVirtualRoutersInput { - s.Limit = &v - return s +// Message returns the exception's message. +func (s *InternalServerErrorException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetMeshName sets the MeshName field's value. -func (s *ListVirtualRoutersInput) SetMeshName(v string) *ListVirtualRoutersInput { - s.MeshName = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerErrorException) OrigErr() error { + return nil } -// SetMeshOwner sets the MeshOwner field's value. -func (s *ListVirtualRoutersInput) SetMeshOwner(v string) *ListVirtualRoutersInput { - s.MeshOwner = &v - return s +func (s *InternalServerErrorException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetNextToken sets the NextToken field's value. -func (s *ListVirtualRoutersInput) SetNextToken(v string) *ListVirtualRoutersInput { - s.NextToken = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerErrorException) StatusCode() int { + return s.RespMetadata.StatusCode } -type ListVirtualRoutersOutput struct { - _ struct{} `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *InternalServerErrorException) RequestID() string { + return s.RespMetadata.RequestID +} - NextToken *string `locationName:"nextToken" type:"string"` +// You have exceeded a service limit for your account. For more information, +// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html) +// in the AWS App Mesh User Guide. +type LimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // VirtualRouters is a required field - VirtualRouters []*VirtualRouterRef `locationName:"virtualRouters" type:"list" required:"true"` + Message_ *string `locationName:"message" type:"string"` } // String returns the string representation -func (s ListVirtualRoutersOutput) String() string { +func (s LimitExceededException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListVirtualRoutersOutput) GoString() string { +func (s LimitExceededException) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListVirtualRoutersOutput) SetNextToken(v string) *ListVirtualRoutersOutput { - s.NextToken = &v - return s +func newErrorLimitExceededException(v protocol.ResponseMetadata) error { + return &LimitExceededException{ + RespMetadata: v, + } } -// SetVirtualRouters sets the VirtualRouters field's value. -func (s *ListVirtualRoutersOutput) SetVirtualRouters(v []*VirtualRouterRef) *ListVirtualRoutersOutput { - s.VirtualRouters = v - return s +// Code returns the exception type name. +func (s *LimitExceededException) Code() string { + return "LimitExceededException" } -type ListVirtualServicesInput struct { +// Message returns the exception's message. +func (s *LimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *LimitExceededException) OrigErr() error { + return nil +} + +func (s *LimitExceededException) 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 *LimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *LimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListGatewayRoutesInput struct { _ struct{} `type:"structure"` Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` @@ -7125,21 +9098,24 @@ type ListVirtualServicesInput struct { MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListVirtualServicesInput) String() string { +func (s ListGatewayRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListVirtualServicesInput) GoString() string { +func (s ListGatewayRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListVirtualServicesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListVirtualServicesInput"} +func (s *ListGatewayRoutesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListGatewayRoutesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } @@ -7152,6 +9128,12 @@ func (s *ListVirtualServicesInput) Validate() error { if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -7160,109 +9142,89 @@ func (s *ListVirtualServicesInput) Validate() error { } // SetLimit sets the Limit field's value. -func (s *ListVirtualServicesInput) SetLimit(v int64) *ListVirtualServicesInput { +func (s *ListGatewayRoutesInput) SetLimit(v int64) *ListGatewayRoutesInput { s.Limit = &v return s } // SetMeshName sets the MeshName field's value. -func (s *ListVirtualServicesInput) SetMeshName(v string) *ListVirtualServicesInput { +func (s *ListGatewayRoutesInput) SetMeshName(v string) *ListGatewayRoutesInput { s.MeshName = &v return s } // SetMeshOwner sets the MeshOwner field's value. -func (s *ListVirtualServicesInput) SetMeshOwner(v string) *ListVirtualServicesInput { +func (s *ListGatewayRoutesInput) SetMeshOwner(v string) *ListGatewayRoutesInput { s.MeshOwner = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListVirtualServicesInput) SetNextToken(v string) *ListVirtualServicesInput { +func (s *ListGatewayRoutesInput) SetNextToken(v string) *ListGatewayRoutesInput { s.NextToken = &v return s } -type ListVirtualServicesOutput struct { - _ struct{} `type:"structure"` - - NextToken *string `locationName:"nextToken" type:"string"` +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *ListGatewayRoutesInput) SetVirtualGatewayName(v string) *ListGatewayRoutesInput { + s.VirtualGatewayName = &v + return s +} - // VirtualServices is a required field - VirtualServices []*VirtualServiceRef `locationName:"virtualServices" type:"list" required:"true"` +type ListGatewayRoutesOutput struct { + _ struct{} `type:"structure"` + + // GatewayRoutes is a required field + GatewayRoutes []*GatewayRouteRef `locationName:"gatewayRoutes" type:"list" required:"true"` + + NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation -func (s ListVirtualServicesOutput) String() string { +func (s ListGatewayRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListVirtualServicesOutput) GoString() string { +func (s ListGatewayRoutesOutput) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListVirtualServicesOutput) SetNextToken(v string) *ListVirtualServicesOutput { - s.NextToken = &v +// SetGatewayRoutes sets the GatewayRoutes field's value. +func (s *ListGatewayRoutesOutput) SetGatewayRoutes(v []*GatewayRouteRef) *ListGatewayRoutesOutput { + s.GatewayRoutes = v return s } -// SetVirtualServices sets the VirtualServices field's value. -func (s *ListVirtualServicesOutput) SetVirtualServices(v []*VirtualServiceRef) *ListVirtualServicesOutput { - s.VirtualServices = v +// SetNextToken sets the NextToken field's value. +func (s *ListGatewayRoutesOutput) SetNextToken(v string) *ListGatewayRoutesOutput { + s.NextToken = &v return s } -// An object that represents a listener for a virtual node. -type Listener struct { +type ListMeshesInput struct { _ struct{} `type:"structure"` - // An object that represents the health check policy for a virtual node's listener. - HealthCheck *HealthCheckPolicy `locationName:"healthCheck" type:"structure"` - - // An object that represents a port mapping. - // - // PortMapping is a required field - PortMapping *PortMapping `locationName:"portMapping" type:"structure" required:"true"` - - Timeout *ListenerTimeout `locationName:"timeout" type:"structure"` + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` - // An object that represents the Transport Layer Security (TLS) properties for - // a listener. - Tls *ListenerTls `locationName:"tls" type:"structure"` + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation -func (s Listener) String() string { +func (s ListMeshesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Listener) GoString() string { +func (s ListMeshesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *Listener) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Listener"} - if s.PortMapping == nil { - invalidParams.Add(request.NewErrParamRequired("PortMapping")) - } - if s.HealthCheck != nil { - if err := s.HealthCheck.Validate(); err != nil { - invalidParams.AddNested("HealthCheck", err.(request.ErrInvalidParams)) - } - } - if s.PortMapping != nil { - if err := s.PortMapping.Validate(); err != nil { - invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) - } - } - if s.Tls != nil { - if err := s.Tls.Validate(); err != nil { - invalidParams.AddNested("Tls", err.(request.ErrInvalidParams)) - } +func (s *ListMeshesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMeshesInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { @@ -7271,113 +9233,95 @@ func (s *Listener) Validate() error { return nil } -// SetHealthCheck sets the HealthCheck field's value. -func (s *Listener) SetHealthCheck(v *HealthCheckPolicy) *Listener { - s.HealthCheck = v - return s -} - -// SetPortMapping sets the PortMapping field's value. -func (s *Listener) SetPortMapping(v *PortMapping) *Listener { - s.PortMapping = v - return s -} - -// SetTimeout sets the Timeout field's value. -func (s *Listener) SetTimeout(v *ListenerTimeout) *Listener { - s.Timeout = v +// SetLimit sets the Limit field's value. +func (s *ListMeshesInput) SetLimit(v int64) *ListMeshesInput { + s.Limit = &v return s } -// SetTls sets the Tls field's value. -func (s *Listener) SetTls(v *ListenerTls) *Listener { - s.Tls = v +// SetNextToken sets the NextToken field's value. +func (s *ListMeshesInput) SetNextToken(v string) *ListMeshesInput { + s.NextToken = &v return s } -type ListenerTimeout struct { +type ListMeshesOutput struct { _ struct{} `type:"structure"` - Grpc *GrpcTimeout `locationName:"grpc" type:"structure"` - - Http *HttpTimeout `locationName:"http" type:"structure"` - - Http2 *HttpTimeout `locationName:"http2" type:"structure"` + // Meshes is a required field + Meshes []*MeshRef `locationName:"meshes" type:"list" required:"true"` - Tcp *TcpTimeout `locationName:"tcp" type:"structure"` + NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation -func (s ListenerTimeout) String() string { +func (s ListMeshesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListenerTimeout) GoString() string { +func (s ListMeshesOutput) GoString() string { return s.String() } -// SetGrpc sets the Grpc field's value. -func (s *ListenerTimeout) SetGrpc(v *GrpcTimeout) *ListenerTimeout { - s.Grpc = v +// SetMeshes sets the Meshes field's value. +func (s *ListMeshesOutput) SetMeshes(v []*MeshRef) *ListMeshesOutput { + s.Meshes = v return s } -// SetHttp sets the Http field's value. -func (s *ListenerTimeout) SetHttp(v *HttpTimeout) *ListenerTimeout { - s.Http = v +// SetNextToken sets the NextToken field's value. +func (s *ListMeshesOutput) SetNextToken(v string) *ListMeshesOutput { + s.NextToken = &v return s } -// SetHttp2 sets the Http2 field's value. -func (s *ListenerTimeout) SetHttp2(v *HttpTimeout) *ListenerTimeout { - s.Http2 = v - return s -} +type ListRoutesInput struct { + _ struct{} `type:"structure"` -// SetTcp sets the Tcp field's value. -func (s *ListenerTimeout) SetTcp(v *TcpTimeout) *ListenerTimeout { - s.Tcp = v - return s -} + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` -// An object that represents the Transport Layer Security (TLS) properties for -// a listener. -type ListenerTls struct { - _ struct{} `type:"structure"` + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - // An object that represents a listener's Transport Layer Security (TLS) certificate. - // - // Certificate is a required field - Certificate *ListenerTlsCertificate `locationName:"certificate" type:"structure" required:"true"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // Mode is a required field - Mode *string `locationName:"mode" type:"string" required:"true" enum:"ListenerTlsMode"` + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // VirtualRouterName is a required field + VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListenerTls) String() string { +func (s ListRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListenerTls) GoString() string { +func (s ListRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListenerTls) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListenerTls"} - if s.Certificate == nil { - invalidParams.Add(request.NewErrParamRequired("Certificate")) +func (s *ListRoutesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRoutesInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } - if s.Mode == nil { - invalidParams.Add(request.NewErrParamRequired("Mode")) + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) } - if s.Certificate != nil { - if err := s.Certificate.Validate(); err != nil { - invalidParams.AddNested("Certificate", err.(request.ErrInvalidParams)) - } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.VirtualRouterName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) + } + if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) } if invalidParams.Len() > 0 { @@ -7386,90 +9330,96 @@ func (s *ListenerTls) Validate() error { return nil } -// SetCertificate sets the Certificate field's value. -func (s *ListenerTls) SetCertificate(v *ListenerTlsCertificate) *ListenerTls { - s.Certificate = v +// SetLimit sets the Limit field's value. +func (s *ListRoutesInput) SetLimit(v int64) *ListRoutesInput { + s.Limit = &v return s } -// SetMode sets the Mode field's value. -func (s *ListenerTls) SetMode(v string) *ListenerTls { - s.Mode = &v +// SetMeshName sets the MeshName field's value. +func (s *ListRoutesInput) SetMeshName(v string) *ListRoutesInput { + s.MeshName = &v return s } -// An object that represents an AWS Certicate Manager (ACM) certificate. -type ListenerTlsAcmCertificate struct { +// SetMeshOwner sets the MeshOwner field's value. +func (s *ListRoutesInput) SetMeshOwner(v string) *ListRoutesInput { + s.MeshOwner = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRoutesInput) SetNextToken(v string) *ListRoutesInput { + s.NextToken = &v + return s +} + +// SetVirtualRouterName sets the VirtualRouterName field's value. +func (s *ListRoutesInput) SetVirtualRouterName(v string) *ListRoutesInput { + s.VirtualRouterName = &v + return s +} + +type ListRoutesOutput struct { _ struct{} `type:"structure"` - // CertificateArn is a required field - CertificateArn *string `locationName:"certificateArn" type:"string" required:"true"` + NextToken *string `locationName:"nextToken" type:"string"` + + // Routes is a required field + Routes []*RouteRef `locationName:"routes" type:"list" required:"true"` } // String returns the string representation -func (s ListenerTlsAcmCertificate) String() string { +func (s ListRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListenerTlsAcmCertificate) GoString() string { +func (s ListRoutesOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListenerTlsAcmCertificate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListenerTlsAcmCertificate"} - if s.CertificateArn == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateArn")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListRoutesOutput) SetNextToken(v string) *ListRoutesOutput { + s.NextToken = &v + return s } -// SetCertificateArn sets the CertificateArn field's value. -func (s *ListenerTlsAcmCertificate) SetCertificateArn(v string) *ListenerTlsAcmCertificate { - s.CertificateArn = &v +// SetRoutes sets the Routes field's value. +func (s *ListRoutesOutput) SetRoutes(v []*RouteRef) *ListRoutesOutput { + s.Routes = v return s } -// An object that represents a listener's Transport Layer Security (TLS) certificate. -type ListenerTlsCertificate struct { +type ListTagsForResourceInput struct { _ struct{} `type:"structure"` - // An object that represents an AWS Certicate Manager (ACM) certificate. - Acm *ListenerTlsAcmCertificate `locationName:"acm" type:"structure"` + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` - // An object that represents a local file certificate. The certificate must - // meet specific requirements and you must have proxy authorization enabled. - // For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). - File *ListenerTlsFileCertificate `locationName:"file" type:"structure"` + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // ResourceArn is a required field + ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` } // String returns the string representation -func (s ListenerTlsCertificate) String() string { +func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListenerTlsCertificate) GoString() string { +func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListenerTlsCertificate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListenerTlsCertificate"} - if s.Acm != nil { - if err := s.Acm.Validate(); err != nil { - invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) - } +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } - if s.File != nil { - if err := s.File.Validate(); err != nil { - invalidParams.AddNested("File", err.(request.ErrInvalidParams)) - } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if invalidParams.Len() > 0 { @@ -7478,55 +9428,92 @@ func (s *ListenerTlsCertificate) Validate() error { return nil } -// SetAcm sets the Acm field's value. -func (s *ListenerTlsCertificate) SetAcm(v *ListenerTlsAcmCertificate) *ListenerTlsCertificate { - s.Acm = v +// SetLimit sets the Limit field's value. +func (s *ListTagsForResourceInput) SetLimit(v int64) *ListTagsForResourceInput { + s.Limit = &v return s } -// SetFile sets the File field's value. -func (s *ListenerTlsCertificate) SetFile(v *ListenerTlsFileCertificate) *ListenerTlsCertificate { - s.File = v +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { + s.NextToken = &v return s } -// An object that represents a local file certificate. The certificate must -// meet specific requirements and you must have proxy authorization enabled. -// For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). -type ListenerTlsFileCertificate struct { +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` - // CertificateChain is a required field - CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` + NextToken *string `locationName:"nextToken" type:"string"` - // PrivateKey is a required field - PrivateKey *string `locationName:"privateKey" min:"1" type:"string" required:"true"` + // Tags is a required field + Tags []*TagRef `locationName:"tags" type:"list" required:"true"` } // String returns the string representation -func (s ListenerTlsFileCertificate) String() string { +func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListenerTlsFileCertificate) GoString() string { +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { + s.NextToken = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*TagRef) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListVirtualGatewaysInput struct { + _ struct{} `type:"structure"` + + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListVirtualGatewaysInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListVirtualGatewaysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListenerTlsFileCertificate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListenerTlsFileCertificate"} - if s.CertificateChain == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateChain")) +func (s *ListVirtualGatewaysInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVirtualGatewaysInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } - if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) } - if s.PrivateKey == nil { - invalidParams.Add(request.NewErrParamRequired("PrivateKey")) + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) } - if s.PrivateKey != nil && len(*s.PrivateKey) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } if invalidParams.Len() > 0 { @@ -7535,89 +9522,98 @@ func (s *ListenerTlsFileCertificate) Validate() error { return nil } -// SetCertificateChain sets the CertificateChain field's value. -func (s *ListenerTlsFileCertificate) SetCertificateChain(v string) *ListenerTlsFileCertificate { - s.CertificateChain = &v +// SetLimit sets the Limit field's value. +func (s *ListVirtualGatewaysInput) SetLimit(v int64) *ListVirtualGatewaysInput { + s.Limit = &v return s } -// SetPrivateKey sets the PrivateKey field's value. -func (s *ListenerTlsFileCertificate) SetPrivateKey(v string) *ListenerTlsFileCertificate { - s.PrivateKey = &v +// SetMeshName sets the MeshName field's value. +func (s *ListVirtualGatewaysInput) SetMeshName(v string) *ListVirtualGatewaysInput { + s.MeshName = &v return s } -// An object that represents the logging information for a virtual node. -type Logging struct { +// SetMeshOwner sets the MeshOwner field's value. +func (s *ListVirtualGatewaysInput) SetMeshOwner(v string) *ListVirtualGatewaysInput { + s.MeshOwner = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualGatewaysInput) SetNextToken(v string) *ListVirtualGatewaysInput { + s.NextToken = &v + return s +} + +type ListVirtualGatewaysOutput struct { _ struct{} `type:"structure"` - // An object that represents the access logging information for a virtual node. - AccessLog *AccessLog `locationName:"accessLog" type:"structure"` + NextToken *string `locationName:"nextToken" type:"string"` + + // VirtualGateways is a required field + VirtualGateways []*VirtualGatewayRef `locationName:"virtualGateways" type:"list" required:"true"` } // String returns the string representation -func (s Logging) String() string { +func (s ListVirtualGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Logging) GoString() string { +func (s ListVirtualGatewaysOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *Logging) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Logging"} - if s.AccessLog != nil { - if err := s.AccessLog.Validate(); err != nil { - invalidParams.AddNested("AccessLog", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualGatewaysOutput) SetNextToken(v string) *ListVirtualGatewaysOutput { + s.NextToken = &v + return s } -// SetAccessLog sets the AccessLog field's value. -func (s *Logging) SetAccessLog(v *AccessLog) *Logging { - s.AccessLog = v +// SetVirtualGateways sets the VirtualGateways field's value. +func (s *ListVirtualGatewaysOutput) SetVirtualGateways(v []*VirtualGatewayRef) *ListVirtualGatewaysOutput { + s.VirtualGateways = v return s } -// An object that represents the range of values to match on. The first character -// of the range is included in the range, though the last character is not. -// For example, if the range specified were 1-100, only values 1-99 would be -// matched. -type MatchRange struct { +type ListVirtualNodesInput struct { _ struct{} `type:"structure"` - // End is a required field - End *int64 `locationName:"end" type:"long" required:"true"` + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` - // Start is a required field - Start *int64 `locationName:"start" type:"long" required:"true"` + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation -func (s MatchRange) String() string { +func (s ListVirtualNodesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MatchRange) GoString() string { +func (s ListVirtualNodesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *MatchRange) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "MatchRange"} - if s.End == nil { - invalidParams.Add(request.NewErrParamRequired("End")) +func (s *ListVirtualNodesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVirtualNodesInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } - if s.Start == nil { - invalidParams.Add(request.NewErrParamRequired("Start")) + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } if invalidParams.Len() > 0 { @@ -7626,324 +9622,997 @@ func (s *MatchRange) Validate() error { return nil } -// SetEnd sets the End field's value. -func (s *MatchRange) SetEnd(v int64) *MatchRange { - s.End = &v +// SetLimit sets the Limit field's value. +func (s *ListVirtualNodesInput) SetLimit(v int64) *ListVirtualNodesInput { + s.Limit = &v return s } -// SetStart sets the Start field's value. -func (s *MatchRange) SetStart(v int64) *MatchRange { - s.Start = &v +// SetMeshName sets the MeshName field's value. +func (s *ListVirtualNodesInput) SetMeshName(v string) *ListVirtualNodesInput { + s.MeshName = &v return s } -// An object that represents a service mesh returned by a describe operation. -type MeshData struct { - _ struct{} `type:"structure"` +// SetMeshOwner sets the MeshOwner field's value. +func (s *ListVirtualNodesInput) SetMeshOwner(v string) *ListVirtualNodesInput { + s.MeshOwner = &v + return s +} - // MeshName is a required field - MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualNodesInput) SetNextToken(v string) *ListVirtualNodesInput { + s.NextToken = &v + return s +} - // An object that represents metadata for a resource. - // - // Metadata is a required field - Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` +type ListVirtualNodesOutput struct { + _ struct{} `type:"structure"` - // An object that represents the specification of a service mesh. - // - // Spec is a required field - Spec *MeshSpec `locationName:"spec" type:"structure" required:"true"` + NextToken *string `locationName:"nextToken" type:"string"` - // An object that represents the status of a service mesh. - // - // Status is a required field - Status *MeshStatus `locationName:"status" type:"structure" required:"true"` + // VirtualNodes is a required field + VirtualNodes []*VirtualNodeRef `locationName:"virtualNodes" type:"list" required:"true"` } // String returns the string representation -func (s MeshData) String() string { +func (s ListVirtualNodesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MeshData) GoString() string { +func (s ListVirtualNodesOutput) GoString() string { return s.String() } -// SetMeshName sets the MeshName field's value. -func (s *MeshData) SetMeshName(v string) *MeshData { - s.MeshName = &v +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualNodesOutput) SetNextToken(v string) *ListVirtualNodesOutput { + s.NextToken = &v return s } -// SetMetadata sets the Metadata field's value. -func (s *MeshData) SetMetadata(v *ResourceMetadata) *MeshData { - s.Metadata = v +// SetVirtualNodes sets the VirtualNodes field's value. +func (s *ListVirtualNodesOutput) SetVirtualNodes(v []*VirtualNodeRef) *ListVirtualNodesOutput { + s.VirtualNodes = v return s } -// SetSpec sets the Spec field's value. -func (s *MeshData) SetSpec(v *MeshSpec) *MeshData { - s.Spec = v - return s -} +type ListVirtualRoutersInput struct { + _ struct{} `type:"structure"` -// SetStatus sets the Status field's value. -func (s *MeshData) SetStatus(v *MeshStatus) *MeshData { - s.Status = v - return s -} - -// An object that represents a service mesh returned by a list operation. -type MeshRef struct { - _ struct{} `type:"structure"` - - // Arn is a required field - Arn *string `locationName:"arn" type:"string" required:"true"` - - // CreatedAt is a required field - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` - - // LastUpdatedAt is a required field - LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` // MeshName is a required field - MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` - - // MeshOwner is a required field - MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - // ResourceOwner is a required field - ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // Version is a required field - Version *int64 `locationName:"version" type:"long" required:"true"` + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation -func (s MeshRef) String() string { +func (s ListVirtualRoutersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MeshRef) GoString() string { +func (s ListVirtualRoutersInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *MeshRef) SetArn(v string) *MeshRef { - s.Arn = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListVirtualRoutersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVirtualRoutersInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } -// SetCreatedAt sets the CreatedAt field's value. -func (s *MeshRef) SetCreatedAt(v time.Time) *MeshRef { - s.CreatedAt = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetLastUpdatedAt sets the LastUpdatedAt field's value. -func (s *MeshRef) SetLastUpdatedAt(v time.Time) *MeshRef { - s.LastUpdatedAt = &v +// SetLimit sets the Limit field's value. +func (s *ListVirtualRoutersInput) SetLimit(v int64) *ListVirtualRoutersInput { + s.Limit = &v return s } // SetMeshName sets the MeshName field's value. -func (s *MeshRef) SetMeshName(v string) *MeshRef { +func (s *ListVirtualRoutersInput) SetMeshName(v string) *ListVirtualRoutersInput { s.MeshName = &v return s } // SetMeshOwner sets the MeshOwner field's value. -func (s *MeshRef) SetMeshOwner(v string) *MeshRef { +func (s *ListVirtualRoutersInput) SetMeshOwner(v string) *ListVirtualRoutersInput { s.MeshOwner = &v return s } -// SetResourceOwner sets the ResourceOwner field's value. -func (s *MeshRef) SetResourceOwner(v string) *MeshRef { - s.ResourceOwner = &v - return s -} - -// SetVersion sets the Version field's value. -func (s *MeshRef) SetVersion(v int64) *MeshRef { - s.Version = &v +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualRoutersInput) SetNextToken(v string) *ListVirtualRoutersInput { + s.NextToken = &v return s } -// An object that represents the specification of a service mesh. -type MeshSpec struct { +type ListVirtualRoutersOutput struct { _ struct{} `type:"structure"` - // An object that represents the egress filter rules for a service mesh. - EgressFilter *EgressFilter `locationName:"egressFilter" type:"structure"` + NextToken *string `locationName:"nextToken" type:"string"` + + // VirtualRouters is a required field + VirtualRouters []*VirtualRouterRef `locationName:"virtualRouters" type:"list" required:"true"` } // String returns the string representation -func (s MeshSpec) String() string { +func (s ListVirtualRoutersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MeshSpec) GoString() string { +func (s ListVirtualRoutersOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *MeshSpec) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "MeshSpec"} - if s.EgressFilter != nil { - if err := s.EgressFilter.Validate(); err != nil { - invalidParams.AddNested("EgressFilter", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualRoutersOutput) SetNextToken(v string) *ListVirtualRoutersOutput { + s.NextToken = &v + return s } -// SetEgressFilter sets the EgressFilter field's value. -func (s *MeshSpec) SetEgressFilter(v *EgressFilter) *MeshSpec { - s.EgressFilter = v +// SetVirtualRouters sets the VirtualRouters field's value. +func (s *ListVirtualRoutersOutput) SetVirtualRouters(v []*VirtualRouterRef) *ListVirtualRoutersOutput { + s.VirtualRouters = v return s } -// An object that represents the status of a service mesh. -type MeshStatus struct { +type ListVirtualServicesInput struct { _ struct{} `type:"structure"` - Status *string `locationName:"status" type:"string" enum:"MeshStatusCode"` -} - -// String returns the string representation -func (s MeshStatus) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s MeshStatus) GoString() string { - return s.String() -} + Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` -// SetStatus sets the Status field's value. -func (s *MeshStatus) SetStatus(v string) *MeshStatus { - s.Status = &v - return s -} + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` -// The specified resource doesn't exist. Check your request syntax and try again. -type NotFoundException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - Message_ *string `locationName:"message" type:"string"` + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation -func (s NotFoundException) String() string { +func (s ListVirtualServicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s NotFoundException) GoString() string { +func (s ListVirtualServicesInput) GoString() string { return s.String() } -func newErrorNotFoundException(v protocol.ResponseMetadata) error { - return &NotFoundException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListVirtualServicesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVirtualServicesInput"} + if s.Limit != nil && *s.Limit < 1 { + invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) + } + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } -} - -// Code returns the exception type name. -func (s *NotFoundException) Code() string { - return "NotFoundException" -} -// Message returns the exception's message. -func (s *NotFoundException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if invalidParams.Len() > 0 { + return invalidParams } - return "" + return nil } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *NotFoundException) OrigErr() error { - return nil +// SetLimit sets the Limit field's value. +func (s *ListVirtualServicesInput) SetLimit(v int64) *ListVirtualServicesInput { + s.Limit = &v + return s } -func (s *NotFoundException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetMeshName sets the MeshName field's value. +func (s *ListVirtualServicesInput) SetMeshName(v string) *ListVirtualServicesInput { + s.MeshName = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *NotFoundException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetMeshOwner sets the MeshOwner field's value. +func (s *ListVirtualServicesInput) SetMeshOwner(v string) *ListVirtualServicesInput { + s.MeshOwner = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *NotFoundException) RequestID() string { - return s.RespMetadata.RequestID +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualServicesInput) SetNextToken(v string) *ListVirtualServicesInput { + s.NextToken = &v + return s } -// An object that represents a port mapping. -type PortMapping struct { +type ListVirtualServicesOutput struct { _ struct{} `type:"structure"` - // Port is a required field - Port *int64 `locationName:"port" min:"1" type:"integer" required:"true"` + NextToken *string `locationName:"nextToken" type:"string"` - // Protocol is a required field - Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` + // VirtualServices is a required field + VirtualServices []*VirtualServiceRef `locationName:"virtualServices" type:"list" required:"true"` } // String returns the string representation -func (s PortMapping) String() string { +func (s ListVirtualServicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s PortMapping) GoString() string { +func (s ListVirtualServicesOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *PortMapping) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PortMapping"} - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) - } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) - } - if s.Protocol == nil { - invalidParams.Add(request.NewErrParamRequired("Protocol")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetPort sets the Port field's value. -func (s *PortMapping) SetPort(v int64) *PortMapping { - s.Port = &v +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualServicesOutput) SetNextToken(v string) *ListVirtualServicesOutput { + s.NextToken = &v return s } -// SetProtocol sets the Protocol field's value. -func (s *PortMapping) SetProtocol(v string) *PortMapping { - s.Protocol = &v +// SetVirtualServices sets the VirtualServices field's value. +func (s *ListVirtualServicesOutput) SetVirtualServices(v []*VirtualServiceRef) *ListVirtualServicesOutput { + s.VirtualServices = v return s } -// You can't delete the specified resource because it's in use or required by +// An object that represents a listener for a virtual node. +type Listener struct { + _ struct{} `type:"structure"` + + // An object that represents the health check policy for a virtual node's listener. + HealthCheck *HealthCheckPolicy `locationName:"healthCheck" type:"structure"` + + // An object that represents a port mapping. + // + // PortMapping is a required field + PortMapping *PortMapping `locationName:"portMapping" type:"structure" required:"true"` + + // An object that represents timeouts for different protocols. + Timeout *ListenerTimeout `locationName:"timeout" type:"structure"` + + // An object that represents the Transport Layer Security (TLS) properties for + // a listener. + Tls *ListenerTls `locationName:"tls" type:"structure"` +} + +// String returns the string representation +func (s Listener) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Listener) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Listener) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Listener"} + if s.PortMapping == nil { + invalidParams.Add(request.NewErrParamRequired("PortMapping")) + } + if s.HealthCheck != nil { + if err := s.HealthCheck.Validate(); err != nil { + invalidParams.AddNested("HealthCheck", err.(request.ErrInvalidParams)) + } + } + if s.PortMapping != nil { + if err := s.PortMapping.Validate(); err != nil { + invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) + } + } + if s.Tls != nil { + if err := s.Tls.Validate(); err != nil { + invalidParams.AddNested("Tls", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHealthCheck sets the HealthCheck field's value. +func (s *Listener) SetHealthCheck(v *HealthCheckPolicy) *Listener { + s.HealthCheck = v + return s +} + +// SetPortMapping sets the PortMapping field's value. +func (s *Listener) SetPortMapping(v *PortMapping) *Listener { + s.PortMapping = v + return s +} + +// SetTimeout sets the Timeout field's value. +func (s *Listener) SetTimeout(v *ListenerTimeout) *Listener { + s.Timeout = v + return s +} + +// SetTls sets the Tls field's value. +func (s *Listener) SetTls(v *ListenerTls) *Listener { + s.Tls = v + return s +} + +// An object that represents timeouts for different protocols. +type ListenerTimeout struct { + _ struct{} `type:"structure"` + + // An object that represents types of timeouts. + Grpc *GrpcTimeout `locationName:"grpc" type:"structure"` + + // An object that represents types of timeouts. + Http *HttpTimeout `locationName:"http" type:"structure"` + + // An object that represents types of timeouts. + Http2 *HttpTimeout `locationName:"http2" type:"structure"` + + // An object that represents types of timeouts. + Tcp *TcpTimeout `locationName:"tcp" type:"structure"` +} + +// String returns the string representation +func (s ListenerTimeout) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListenerTimeout) GoString() string { + return s.String() +} + +// SetGrpc sets the Grpc field's value. +func (s *ListenerTimeout) SetGrpc(v *GrpcTimeout) *ListenerTimeout { + s.Grpc = v + return s +} + +// SetHttp sets the Http field's value. +func (s *ListenerTimeout) SetHttp(v *HttpTimeout) *ListenerTimeout { + s.Http = v + return s +} + +// SetHttp2 sets the Http2 field's value. +func (s *ListenerTimeout) SetHttp2(v *HttpTimeout) *ListenerTimeout { + s.Http2 = v + return s +} + +// SetTcp sets the Tcp field's value. +func (s *ListenerTimeout) SetTcp(v *TcpTimeout) *ListenerTimeout { + s.Tcp = v + return s +} + +// An object that represents the Transport Layer Security (TLS) properties for +// a listener. +type ListenerTls struct { + _ struct{} `type:"structure"` + + // An object that represents a listener's Transport Layer Security (TLS) certificate. + // + // Certificate is a required field + Certificate *ListenerTlsCertificate `locationName:"certificate" type:"structure" required:"true"` + + // Mode is a required field + Mode *string `locationName:"mode" type:"string" required:"true" enum:"ListenerTlsMode"` +} + +// String returns the string representation +func (s ListenerTls) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListenerTls) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListenerTls) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListenerTls"} + if s.Certificate == nil { + invalidParams.Add(request.NewErrParamRequired("Certificate")) + } + if s.Mode == nil { + invalidParams.Add(request.NewErrParamRequired("Mode")) + } + if s.Certificate != nil { + if err := s.Certificate.Validate(); err != nil { + invalidParams.AddNested("Certificate", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificate sets the Certificate field's value. +func (s *ListenerTls) SetCertificate(v *ListenerTlsCertificate) *ListenerTls { + s.Certificate = v + return s +} + +// SetMode sets the Mode field's value. +func (s *ListenerTls) SetMode(v string) *ListenerTls { + s.Mode = &v + return s +} + +// An object that represents an AWS Certicate Manager (ACM) certificate. +type ListenerTlsAcmCertificate struct { + _ struct{} `type:"structure"` + + // CertificateArn is a required field + CertificateArn *string `locationName:"certificateArn" type:"string" required:"true"` +} + +// String returns the string representation +func (s ListenerTlsAcmCertificate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListenerTlsAcmCertificate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListenerTlsAcmCertificate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListenerTlsAcmCertificate"} + if s.CertificateArn == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateArn sets the CertificateArn field's value. +func (s *ListenerTlsAcmCertificate) SetCertificateArn(v string) *ListenerTlsAcmCertificate { + s.CertificateArn = &v + return s +} + +// An object that represents a listener's Transport Layer Security (TLS) certificate. +type ListenerTlsCertificate struct { + _ struct{} `type:"structure"` + + // An object that represents an AWS Certicate Manager (ACM) certificate. + Acm *ListenerTlsAcmCertificate `locationName:"acm" type:"structure"` + + // An object that represents a local file certificate. The certificate must + // meet specific requirements and you must have proxy authorization enabled. + // For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). + File *ListenerTlsFileCertificate `locationName:"file" type:"structure"` +} + +// String returns the string representation +func (s ListenerTlsCertificate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListenerTlsCertificate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListenerTlsCertificate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListenerTlsCertificate"} + if s.Acm != nil { + if err := s.Acm.Validate(); err != nil { + invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) + } + } + if s.File != nil { + if err := s.File.Validate(); err != nil { + invalidParams.AddNested("File", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAcm sets the Acm field's value. +func (s *ListenerTlsCertificate) SetAcm(v *ListenerTlsAcmCertificate) *ListenerTlsCertificate { + s.Acm = v + return s +} + +// SetFile sets the File field's value. +func (s *ListenerTlsCertificate) SetFile(v *ListenerTlsFileCertificate) *ListenerTlsCertificate { + s.File = v + return s +} + +// An object that represents a local file certificate. The certificate must +// meet specific requirements and you must have proxy authorization enabled. +// For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). +type ListenerTlsFileCertificate struct { + _ struct{} `type:"structure"` + + // CertificateChain is a required field + CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` + + // PrivateKey is a required field + PrivateKey *string `locationName:"privateKey" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ListenerTlsFileCertificate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListenerTlsFileCertificate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListenerTlsFileCertificate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListenerTlsFileCertificate"} + if s.CertificateChain == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateChain")) + } + if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) + } + if s.PrivateKey == nil { + invalidParams.Add(request.NewErrParamRequired("PrivateKey")) + } + if s.PrivateKey != nil && len(*s.PrivateKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateChain sets the CertificateChain field's value. +func (s *ListenerTlsFileCertificate) SetCertificateChain(v string) *ListenerTlsFileCertificate { + s.CertificateChain = &v + return s +} + +// SetPrivateKey sets the PrivateKey field's value. +func (s *ListenerTlsFileCertificate) SetPrivateKey(v string) *ListenerTlsFileCertificate { + s.PrivateKey = &v + return s +} + +// An object that represents the logging information for a virtual node. +type Logging struct { + _ struct{} `type:"structure"` + + // An object that represents the access logging information for a virtual node. + AccessLog *AccessLog `locationName:"accessLog" type:"structure"` +} + +// String returns the string representation +func (s Logging) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Logging) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Logging) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Logging"} + if s.AccessLog != nil { + if err := s.AccessLog.Validate(); err != nil { + invalidParams.AddNested("AccessLog", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessLog sets the AccessLog field's value. +func (s *Logging) SetAccessLog(v *AccessLog) *Logging { + s.AccessLog = v + return s +} + +// An object that represents the range of values to match on. The first character +// of the range is included in the range, though the last character is not. +// For example, if the range specified were 1-100, only values 1-99 would be +// matched. +type MatchRange struct { + _ struct{} `type:"structure"` + + // End is a required field + End *int64 `locationName:"end" type:"long" required:"true"` + + // Start is a required field + Start *int64 `locationName:"start" type:"long" required:"true"` +} + +// String returns the string representation +func (s MatchRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MatchRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MatchRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MatchRange"} + if s.End == nil { + invalidParams.Add(request.NewErrParamRequired("End")) + } + if s.Start == nil { + invalidParams.Add(request.NewErrParamRequired("Start")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnd sets the End field's value. +func (s *MatchRange) SetEnd(v int64) *MatchRange { + s.End = &v + return s +} + +// SetStart sets the Start field's value. +func (s *MatchRange) SetStart(v int64) *MatchRange { + s.Start = &v + return s +} + +// An object that represents a service mesh returned by a describe operation. +type MeshData struct { + _ struct{} `type:"structure"` + + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // An object that represents metadata for a resource. + // + // Metadata is a required field + Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` + + // An object that represents the specification of a service mesh. + // + // Spec is a required field + Spec *MeshSpec `locationName:"spec" type:"structure" required:"true"` + + // An object that represents the status of a service mesh. + // + // Status is a required field + Status *MeshStatus `locationName:"status" type:"structure" required:"true"` +} + +// String returns the string representation +func (s MeshData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MeshData) GoString() string { + return s.String() +} + +// SetMeshName sets the MeshName field's value. +func (s *MeshData) SetMeshName(v string) *MeshData { + s.MeshName = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *MeshData) SetMetadata(v *ResourceMetadata) *MeshData { + s.Metadata = v + return s +} + +// SetSpec sets the Spec field's value. +func (s *MeshData) SetSpec(v *MeshSpec) *MeshData { + s.Spec = v + return s +} + +// SetStatus sets the Status field's value. +func (s *MeshData) SetStatus(v *MeshStatus) *MeshData { + s.Status = v + return s +} + +// An object that represents a service mesh returned by a list operation. +type MeshRef struct { + _ struct{} `type:"structure"` + + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // MeshOwner is a required field + MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + + // ResourceOwner is a required field + ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + + // Version is a required field + Version *int64 `locationName:"version" type:"long" required:"true"` +} + +// String returns the string representation +func (s MeshRef) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MeshRef) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *MeshRef) SetArn(v string) *MeshRef { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *MeshRef) SetCreatedAt(v time.Time) *MeshRef { + s.CreatedAt = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *MeshRef) SetLastUpdatedAt(v time.Time) *MeshRef { + s.LastUpdatedAt = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *MeshRef) SetMeshName(v string) *MeshRef { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *MeshRef) SetMeshOwner(v string) *MeshRef { + s.MeshOwner = &v + return s +} + +// SetResourceOwner sets the ResourceOwner field's value. +func (s *MeshRef) SetResourceOwner(v string) *MeshRef { + s.ResourceOwner = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *MeshRef) SetVersion(v int64) *MeshRef { + s.Version = &v + return s +} + +// An object that represents the specification of a service mesh. +type MeshSpec struct { + _ struct{} `type:"structure"` + + // An object that represents the egress filter rules for a service mesh. + EgressFilter *EgressFilter `locationName:"egressFilter" type:"structure"` +} + +// String returns the string representation +func (s MeshSpec) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MeshSpec) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MeshSpec) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MeshSpec"} + if s.EgressFilter != nil { + if err := s.EgressFilter.Validate(); err != nil { + invalidParams.AddNested("EgressFilter", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEgressFilter sets the EgressFilter field's value. +func (s *MeshSpec) SetEgressFilter(v *EgressFilter) *MeshSpec { + s.EgressFilter = v + return s +} + +// An object that represents the status of a service mesh. +type MeshStatus struct { + _ struct{} `type:"structure"` + + Status *string `locationName:"status" type:"string" enum:"MeshStatusCode"` +} + +// String returns the string representation +func (s MeshStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MeshStatus) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *MeshStatus) SetStatus(v string) *MeshStatus { + s.Status = &v + return s +} + +// The specified resource doesn't exist. Check your request syntax and try again. +type NotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s NotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s NotFoundException) GoString() string { + return s.String() +} + +func newErrorNotFoundException(v protocol.ResponseMetadata) error { + return &NotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *NotFoundException) Code() string { + return "NotFoundException" +} + +// Message returns the exception's message. +func (s *NotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *NotFoundException) OrigErr() error { + return nil +} + +func (s *NotFoundException) 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 *NotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *NotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An object that represents a port mapping. +type PortMapping struct { + _ struct{} `type:"structure"` + + // Port is a required field + Port *int64 `locationName:"port" min:"1" type:"integer" required:"true"` + + // Protocol is a required field + Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` +} + +// String returns the string representation +func (s PortMapping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PortMapping) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PortMapping) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PortMapping"} + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPort sets the Port field's value. +func (s *PortMapping) SetPort(v int64) *PortMapping { + s.Port = &v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *PortMapping) SetProtocol(v string) *PortMapping { + s.Protocol = &v + return s +} + +// You can't delete the specified resource because it's in use or required by // another resource. type ResourceInUseException struct { _ struct{} `type:"structure"` @@ -7953,352 +10622,1776 @@ type ResourceInUseException struct { } // String returns the string representation -func (s ResourceInUseException) String() string { +func (s ResourceInUseException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ResourceInUseException) GoString() string { + return s.String() +} + +func newErrorResourceInUseException(v protocol.ResponseMetadata) error { + return &ResourceInUseException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceInUseException) Code() string { + return "ResourceInUseException" +} + +// Message returns the exception's message. +func (s *ResourceInUseException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceInUseException) OrigErr() error { + return nil +} + +func (s *ResourceInUseException) 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 *ResourceInUseException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceInUseException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An object that represents metadata for a resource. +type ResourceMetadata struct { + _ struct{} `type:"structure"` + + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + + // MeshOwner is a required field + MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + + // ResourceOwner is a required field + ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + + // Uid is a required field + Uid *string `locationName:"uid" type:"string" required:"true"` + + // Version is a required field + Version *int64 `locationName:"version" type:"long" required:"true"` +} + +// String returns the string representation +func (s ResourceMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ResourceMetadata) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ResourceMetadata) SetArn(v string) *ResourceMetadata { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ResourceMetadata) SetCreatedAt(v time.Time) *ResourceMetadata { + s.CreatedAt = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *ResourceMetadata) SetLastUpdatedAt(v time.Time) *ResourceMetadata { + s.LastUpdatedAt = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *ResourceMetadata) SetMeshOwner(v string) *ResourceMetadata { + s.MeshOwner = &v + return s +} + +// SetResourceOwner sets the ResourceOwner field's value. +func (s *ResourceMetadata) SetResourceOwner(v string) *ResourceMetadata { + s.ResourceOwner = &v + return s +} + +// SetUid sets the Uid field's value. +func (s *ResourceMetadata) SetUid(v string) *ResourceMetadata { + s.Uid = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *ResourceMetadata) SetVersion(v int64) *ResourceMetadata { + s.Version = &v + return s +} + +// An object that represents a route returned by a describe operation. +type RouteData struct { + _ struct{} `type:"structure"` + + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // An object that represents metadata for a resource. + // + // Metadata is a required field + Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` + + // RouteName is a required field + RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` + + // An object that represents a route specification. Specify one route type. + // + // Spec is a required field + Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` + + // An object that represents the current status of a route. + // + // Status is a required field + Status *RouteStatus `locationName:"status" type:"structure" required:"true"` + + // VirtualRouterName is a required field + VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s RouteData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RouteData) GoString() string { + return s.String() +} + +// SetMeshName sets the MeshName field's value. +func (s *RouteData) SetMeshName(v string) *RouteData { + s.MeshName = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *RouteData) SetMetadata(v *ResourceMetadata) *RouteData { + s.Metadata = v + return s +} + +// SetRouteName sets the RouteName field's value. +func (s *RouteData) SetRouteName(v string) *RouteData { + s.RouteName = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *RouteData) SetSpec(v *RouteSpec) *RouteData { + s.Spec = v + return s +} + +// SetStatus sets the Status field's value. +func (s *RouteData) SetStatus(v *RouteStatus) *RouteData { + s.Status = v + return s +} + +// SetVirtualRouterName sets the VirtualRouterName field's value. +func (s *RouteData) SetVirtualRouterName(v string) *RouteData { + s.VirtualRouterName = &v + return s +} + +// An object that represents a route returned by a list operation. +type RouteRef struct { + _ struct{} `type:"structure"` + + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // MeshOwner is a required field + MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + + // ResourceOwner is a required field + ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + + // RouteName is a required field + RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` + + // Version is a required field + Version *int64 `locationName:"version" type:"long" required:"true"` + + // VirtualRouterName is a required field + VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s RouteRef) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RouteRef) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *RouteRef) SetArn(v string) *RouteRef { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *RouteRef) SetCreatedAt(v time.Time) *RouteRef { + s.CreatedAt = &v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *RouteRef) SetLastUpdatedAt(v time.Time) *RouteRef { + s.LastUpdatedAt = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *RouteRef) SetMeshName(v string) *RouteRef { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *RouteRef) SetMeshOwner(v string) *RouteRef { + s.MeshOwner = &v + return s +} + +// SetResourceOwner sets the ResourceOwner field's value. +func (s *RouteRef) SetResourceOwner(v string) *RouteRef { + s.ResourceOwner = &v + return s +} + +// SetRouteName sets the RouteName field's value. +func (s *RouteRef) SetRouteName(v string) *RouteRef { + s.RouteName = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *RouteRef) SetVersion(v int64) *RouteRef { + s.Version = &v + return s +} + +// SetVirtualRouterName sets the VirtualRouterName field's value. +func (s *RouteRef) SetVirtualRouterName(v string) *RouteRef { + s.VirtualRouterName = &v + return s +} + +// An object that represents a route specification. Specify one route type. +type RouteSpec struct { + _ struct{} `type:"structure"` + + // An object that represents a gRPC route type. + GrpcRoute *GrpcRoute `locationName:"grpcRoute" type:"structure"` + + // An object that represents an HTTP or HTTP/2 route type. + Http2Route *HttpRoute `locationName:"http2Route" type:"structure"` + + // An object that represents an HTTP or HTTP/2 route type. + HttpRoute *HttpRoute `locationName:"httpRoute" type:"structure"` + + Priority *int64 `locationName:"priority" type:"integer"` + + // An object that represents a TCP route type. + TcpRoute *TcpRoute `locationName:"tcpRoute" type:"structure"` +} + +// String returns the string representation +func (s RouteSpec) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RouteSpec) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RouteSpec) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RouteSpec"} + if s.GrpcRoute != nil { + if err := s.GrpcRoute.Validate(); err != nil { + invalidParams.AddNested("GrpcRoute", err.(request.ErrInvalidParams)) + } + } + if s.Http2Route != nil { + if err := s.Http2Route.Validate(); err != nil { + invalidParams.AddNested("Http2Route", err.(request.ErrInvalidParams)) + } + } + if s.HttpRoute != nil { + if err := s.HttpRoute.Validate(); err != nil { + invalidParams.AddNested("HttpRoute", err.(request.ErrInvalidParams)) + } + } + if s.TcpRoute != nil { + if err := s.TcpRoute.Validate(); err != nil { + invalidParams.AddNested("TcpRoute", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGrpcRoute sets the GrpcRoute field's value. +func (s *RouteSpec) SetGrpcRoute(v *GrpcRoute) *RouteSpec { + s.GrpcRoute = v + return s +} + +// SetHttp2Route sets the Http2Route field's value. +func (s *RouteSpec) SetHttp2Route(v *HttpRoute) *RouteSpec { + s.Http2Route = v + return s +} + +// SetHttpRoute sets the HttpRoute field's value. +func (s *RouteSpec) SetHttpRoute(v *HttpRoute) *RouteSpec { + s.HttpRoute = v + return s +} + +// SetPriority sets the Priority field's value. +func (s *RouteSpec) SetPriority(v int64) *RouteSpec { + s.Priority = &v + return s +} + +// SetTcpRoute sets the TcpRoute field's value. +func (s *RouteSpec) SetTcpRoute(v *TcpRoute) *RouteSpec { + s.TcpRoute = v + return s +} + +// An object that represents the current status of a route. +type RouteStatus struct { + _ struct{} `type:"structure"` + + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"RouteStatusCode"` +} + +// String returns the string representation +func (s RouteStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RouteStatus) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *RouteStatus) SetStatus(v string) *RouteStatus { + s.Status = &v + return s +} + +// An object that represents the service discovery information for a virtual +// node. +type ServiceDiscovery struct { + _ struct{} `type:"structure"` + + // An object that represents the AWS Cloud Map service discovery information + // for your virtual node. + AwsCloudMap *AwsCloudMapServiceDiscovery `locationName:"awsCloudMap" type:"structure"` + + // An object that represents the DNS service discovery information for your + // virtual node. + Dns *DnsServiceDiscovery `locationName:"dns" type:"structure"` +} + +// String returns the string representation +func (s ServiceDiscovery) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceDiscovery) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ServiceDiscovery) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ServiceDiscovery"} + if s.AwsCloudMap != nil { + if err := s.AwsCloudMap.Validate(); err != nil { + invalidParams.AddNested("AwsCloudMap", err.(request.ErrInvalidParams)) + } + } + if s.Dns != nil { + if err := s.Dns.Validate(); err != nil { + invalidParams.AddNested("Dns", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsCloudMap sets the AwsCloudMap field's value. +func (s *ServiceDiscovery) SetAwsCloudMap(v *AwsCloudMapServiceDiscovery) *ServiceDiscovery { + s.AwsCloudMap = v + return s +} + +// SetDns sets the Dns field's value. +func (s *ServiceDiscovery) SetDns(v *DnsServiceDiscovery) *ServiceDiscovery { + s.Dns = v + return s +} + +// The request has failed due to a temporary failure of the service. +type ServiceUnavailableException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s ServiceUnavailableException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceUnavailableException) GoString() string { + return s.String() +} + +func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { + return &ServiceUnavailableException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceUnavailableException) Code() string { + return "ServiceUnavailableException" +} + +// Message returns the exception's message. +func (s *ServiceUnavailableException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceUnavailableException) OrigErr() error { + return nil +} + +func (s *ServiceUnavailableException) 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 *ServiceUnavailableException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceUnavailableException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Optional metadata that you apply to a resource to assist with categorization +// and organization. Each tag consists of a key and an optional value, both +// of which you define. Tag keys can have a maximum character length of 128 +// characters, and tag values can have a maximum length of 256 characters. +type TagRef struct { + _ struct{} `type:"structure"` + + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + Value *string `locationName:"value" type:"string"` +} + +// String returns the string representation +func (s TagRef) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagRef) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagRef) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagRef"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *TagRef) SetKey(v string) *TagRef { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *TagRef) SetValue(v string) *TagRef { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // ResourceArn is a required field + ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` + + // Tags is a required field + Tags []*TagRef `locationName:"tags" type:"list" required:"true"` +} + +// String returns the string representation +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceInput) 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")) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + 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 +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*TagRef) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// An object that represents a TCP route type. +type TcpRoute struct { + _ struct{} `type:"structure"` + + // An object that represents the action to take if a match is determined. + // + // Action is a required field + Action *TcpRouteAction `locationName:"action" type:"structure" required:"true"` + + // An object that represents types of timeouts. + Timeout *TcpTimeout `locationName:"timeout" type:"structure"` +} + +// String returns the string representation +func (s TcpRoute) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TcpRoute) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TcpRoute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TcpRoute"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.Action != nil { + if err := s.Action.Validate(); err != nil { + invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *TcpRoute) SetAction(v *TcpRouteAction) *TcpRoute { + s.Action = v + return s +} + +// SetTimeout sets the Timeout field's value. +func (s *TcpRoute) SetTimeout(v *TcpTimeout) *TcpRoute { + s.Timeout = v + return s +} + +// An object that represents the action to take if a match is determined. +type TcpRouteAction struct { + _ struct{} `type:"structure"` + + // WeightedTargets is a required field + WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` +} + +// String returns the string representation +func (s TcpRouteAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TcpRouteAction) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TcpRouteAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TcpRouteAction"} + if s.WeightedTargets == nil { + invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) + } + if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) + } + if s.WeightedTargets != nil { + for i, v := range s.WeightedTargets { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWeightedTargets sets the WeightedTargets field's value. +func (s *TcpRouteAction) SetWeightedTargets(v []*WeightedTarget) *TcpRouteAction { + s.WeightedTargets = v + return s +} + +// An object that represents types of timeouts. +type TcpTimeout struct { + _ struct{} `type:"structure"` + + // An object that represents a duration of time. + Idle *Duration `locationName:"idle" type:"structure"` +} + +// String returns the string representation +func (s TcpTimeout) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TcpTimeout) GoString() string { + return s.String() +} + +// SetIdle sets the Idle field's value. +func (s *TcpTimeout) SetIdle(v *Duration) *TcpTimeout { + s.Idle = v + return s +} + +// An object that represents a Transport Layer Security (TLS) validation context. +type TlsValidationContext struct { + _ struct{} `type:"structure"` + + // An object that represents a Transport Layer Security (TLS) validation context + // trust. + // + // Trust is a required field + Trust *TlsValidationContextTrust `locationName:"trust" type:"structure" required:"true"` +} + +// String returns the string representation +func (s TlsValidationContext) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TlsValidationContext) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TlsValidationContext) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TlsValidationContext"} + if s.Trust == nil { + invalidParams.Add(request.NewErrParamRequired("Trust")) + } + if s.Trust != nil { + if err := s.Trust.Validate(); err != nil { + invalidParams.AddNested("Trust", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTrust sets the Trust field's value. +func (s *TlsValidationContext) SetTrust(v *TlsValidationContextTrust) *TlsValidationContext { + s.Trust = v + return s +} + +// An object that represents a TLS validation context trust for an AWS Certicate +// Manager (ACM) certificate. +type TlsValidationContextAcmTrust struct { + _ struct{} `type:"structure"` + + // CertificateAuthorityArns is a required field + CertificateAuthorityArns []*string `locationName:"certificateAuthorityArns" min:"1" type:"list" required:"true"` +} + +// String returns the string representation +func (s TlsValidationContextAcmTrust) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TlsValidationContextAcmTrust) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TlsValidationContextAcmTrust) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextAcmTrust"} + if s.CertificateAuthorityArns == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateAuthorityArns")) + } + if s.CertificateAuthorityArns != nil && len(s.CertificateAuthorityArns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArns", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateAuthorityArns sets the CertificateAuthorityArns field's value. +func (s *TlsValidationContextAcmTrust) SetCertificateAuthorityArns(v []*string) *TlsValidationContextAcmTrust { + s.CertificateAuthorityArns = v + return s +} + +// An object that represents a Transport Layer Security (TLS) validation context +// trust for a local file. +type TlsValidationContextFileTrust struct { + _ struct{} `type:"structure"` + + // CertificateChain is a required field + CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s TlsValidationContextFileTrust) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TlsValidationContextFileTrust) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TlsValidationContextFileTrust) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextFileTrust"} + if s.CertificateChain == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateChain")) + } + if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateChain sets the CertificateChain field's value. +func (s *TlsValidationContextFileTrust) SetCertificateChain(v string) *TlsValidationContextFileTrust { + s.CertificateChain = &v + return s +} + +// An object that represents a Transport Layer Security (TLS) validation context +// trust. +type TlsValidationContextTrust struct { + _ struct{} `type:"structure"` + + // An object that represents a TLS validation context trust for an AWS Certicate + // Manager (ACM) certificate. + Acm *TlsValidationContextAcmTrust `locationName:"acm" type:"structure"` + + // An object that represents a Transport Layer Security (TLS) validation context + // trust for a local file. + File *TlsValidationContextFileTrust `locationName:"file" type:"structure"` +} + +// String returns the string representation +func (s TlsValidationContextTrust) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TlsValidationContextTrust) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TlsValidationContextTrust) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextTrust"} + if s.Acm != nil { + if err := s.Acm.Validate(); err != nil { + invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) + } + } + if s.File != nil { + if err := s.File.Validate(); err != nil { + invalidParams.AddNested("File", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAcm sets the Acm field's value. +func (s *TlsValidationContextTrust) SetAcm(v *TlsValidationContextAcmTrust) *TlsValidationContextTrust { + s.Acm = v + return s +} + +// SetFile sets the File field's value. +func (s *TlsValidationContextTrust) SetFile(v *TlsValidationContextFileTrust) *TlsValidationContextTrust { + s.File = v + return s +} + +// The maximum request rate permitted by the App Mesh APIs has been exceeded +// for your account. For best results, use an increasing or variable sleep interval +// between requests. +type TooManyRequestsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s TooManyRequestsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TooManyRequestsException) GoString() string { + return s.String() +} + +func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error { + return &TooManyRequestsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *TooManyRequestsException) Code() string { + return "TooManyRequestsException" +} + +// Message returns the exception's message. +func (s *TooManyRequestsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *TooManyRequestsException) OrigErr() error { + return nil +} + +func (s *TooManyRequestsException) 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 *TooManyRequestsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *TooManyRequestsException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The request exceeds the maximum allowed number of tags allowed per resource. +// The current limit is 50 user tags per resource. You must reduce the number +// of tags in the request. None of the tags in this request were applied. +type TooManyTagsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s TooManyTagsException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceInUseException) GoString() string { +func (s TooManyTagsException) GoString() string { + return s.String() +} + +func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { + return &TooManyTagsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *TooManyTagsException) Code() string { + return "TooManyTagsException" +} + +// Message returns the exception's message. +func (s *TooManyTagsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *TooManyTagsException) OrigErr() error { + return nil +} + +func (s *TooManyTagsException) 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 *TooManyTagsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *TooManyTagsException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // ResourceArn is a required field + ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` + + // TagKeys is a required field + TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceInput) 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")) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateGatewayRouteInput struct { + _ struct{} `type:"structure"` + + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // GatewayRouteName is a required field + GatewayRouteName *string `location:"uri" locationName:"gatewayRouteName" min:"1" type:"string" required:"true"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // An object that represents a gateway route specification. Specify one gateway + // route type. + // + // Spec is a required field + Spec *GatewayRouteSpec `locationName:"spec" type:"structure" required:"true"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateGatewayRouteInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateGatewayRouteInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateGatewayRouteInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateGatewayRouteInput"} + if s.GatewayRouteName == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayRouteName")) + } + if s.GatewayRouteName != nil && len(*s.GatewayRouteName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GatewayRouteName", 1)) + } + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateGatewayRouteInput) SetClientToken(v string) *UpdateGatewayRouteInput { + s.ClientToken = &v + return s +} + +// SetGatewayRouteName sets the GatewayRouteName field's value. +func (s *UpdateGatewayRouteInput) SetGatewayRouteName(v string) *UpdateGatewayRouteInput { + s.GatewayRouteName = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *UpdateGatewayRouteInput) SetMeshName(v string) *UpdateGatewayRouteInput { + s.MeshName = &v + return s +} + +// SetMeshOwner sets the MeshOwner field's value. +func (s *UpdateGatewayRouteInput) SetMeshOwner(v string) *UpdateGatewayRouteInput { + s.MeshOwner = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *UpdateGatewayRouteInput) SetSpec(v *GatewayRouteSpec) *UpdateGatewayRouteInput { + s.Spec = v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *UpdateGatewayRouteInput) SetVirtualGatewayName(v string) *UpdateGatewayRouteInput { + s.VirtualGatewayName = &v + return s +} + +type UpdateGatewayRouteOutput struct { + _ struct{} `type:"structure" payload:"GatewayRoute"` + + // An object that represents a gateway route returned by a describe operation. + // + // GatewayRoute is a required field + GatewayRoute *GatewayRouteData `locationName:"gatewayRoute" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateGatewayRouteOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateGatewayRouteOutput) GoString() string { + return s.String() +} + +// SetGatewayRoute sets the GatewayRoute field's value. +func (s *UpdateGatewayRouteOutput) SetGatewayRoute(v *GatewayRouteData) *UpdateGatewayRouteOutput { + s.GatewayRoute = v + return s +} + +type UpdateMeshInput struct { + _ struct{} `type:"structure"` + + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + // An object that represents the specification of a service mesh. + Spec *MeshSpec `locationName:"spec" type:"structure"` +} + +// String returns the string representation +func (s UpdateMeshInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateMeshInput) GoString() string { return s.String() } -func newErrorResourceInUseException(v protocol.ResponseMetadata) error { - return &ResourceInUseException{ - RespMetadata: v, - } +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateMeshInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateMeshInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateMeshInput) SetClientToken(v string) *UpdateMeshInput { + s.ClientToken = &v + return s +} + +// SetMeshName sets the MeshName field's value. +func (s *UpdateMeshInput) SetMeshName(v string) *UpdateMeshInput { + s.MeshName = &v + return s } -// Code returns the exception type name. -func (s *ResourceInUseException) Code() string { - return "ResourceInUseException" +// SetSpec sets the Spec field's value. +func (s *UpdateMeshInput) SetSpec(v *MeshSpec) *UpdateMeshInput { + s.Spec = v + return s } -// Message returns the exception's message. -func (s *ResourceInUseException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} +type UpdateMeshOutput struct { + _ struct{} `type:"structure" payload:"Mesh"` -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceInUseException) OrigErr() error { - return nil + // An object that represents a service mesh returned by a describe operation. + // + // Mesh is a required field + Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` } -func (s *ResourceInUseException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// String returns the string representation +func (s UpdateMeshOutput) String() string { + return awsutil.Prettify(s) } -// Status code returns the HTTP status code for the request's response error. -func (s *ResourceInUseException) StatusCode() int { - return s.RespMetadata.StatusCode +// GoString returns the string representation +func (s UpdateMeshOutput) GoString() string { + return s.String() } -// RequestID returns the service's response RequestID for request. -func (s *ResourceInUseException) RequestID() string { - return s.RespMetadata.RequestID +// SetMesh sets the Mesh field's value. +func (s *UpdateMeshOutput) SetMesh(v *MeshData) *UpdateMeshOutput { + s.Mesh = v + return s } -// An object that represents metadata for a resource. -type ResourceMetadata struct { +type UpdateRouteInput struct { _ struct{} `type:"structure"` - // Arn is a required field - Arn *string `locationName:"arn" type:"string" required:"true"` - - // CreatedAt is a required field - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // LastUpdatedAt is a required field - LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - // MeshOwner is a required field - MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // ResourceOwner is a required field - ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + // RouteName is a required field + RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` - // Uid is a required field - Uid *string `locationName:"uid" type:"string" required:"true"` + // An object that represents a route specification. Specify one route type. + // + // Spec is a required field + Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` - // Version is a required field - Version *int64 `locationName:"version" type:"long" required:"true"` + // VirtualRouterName is a required field + VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ResourceMetadata) String() string { +func (s UpdateRouteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceMetadata) GoString() string { +func (s UpdateRouteInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *ResourceMetadata) SetArn(v string) *ResourceMetadata { - s.Arn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRouteInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRouteInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.RouteName == nil { + invalidParams.Add(request.NewErrParamRequired("RouteName")) + } + if s.RouteName != nil && len(*s.RouteName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualRouterName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) + } + if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCreatedAt sets the CreatedAt field's value. -func (s *ResourceMetadata) SetCreatedAt(v time.Time) *ResourceMetadata { - s.CreatedAt = &v +// SetClientToken sets the ClientToken field's value. +func (s *UpdateRouteInput) SetClientToken(v string) *UpdateRouteInput { + s.ClientToken = &v return s } -// SetLastUpdatedAt sets the LastUpdatedAt field's value. -func (s *ResourceMetadata) SetLastUpdatedAt(v time.Time) *ResourceMetadata { - s.LastUpdatedAt = &v +// SetMeshName sets the MeshName field's value. +func (s *UpdateRouteInput) SetMeshName(v string) *UpdateRouteInput { + s.MeshName = &v return s } // SetMeshOwner sets the MeshOwner field's value. -func (s *ResourceMetadata) SetMeshOwner(v string) *ResourceMetadata { +func (s *UpdateRouteInput) SetMeshOwner(v string) *UpdateRouteInput { s.MeshOwner = &v return s } -// SetResourceOwner sets the ResourceOwner field's value. -func (s *ResourceMetadata) SetResourceOwner(v string) *ResourceMetadata { - s.ResourceOwner = &v +// SetRouteName sets the RouteName field's value. +func (s *UpdateRouteInput) SetRouteName(v string) *UpdateRouteInput { + s.RouteName = &v return s } -// SetUid sets the Uid field's value. -func (s *ResourceMetadata) SetUid(v string) *ResourceMetadata { - s.Uid = &v +// SetSpec sets the Spec field's value. +func (s *UpdateRouteInput) SetSpec(v *RouteSpec) *UpdateRouteInput { + s.Spec = v return s } -// SetVersion sets the Version field's value. -func (s *ResourceMetadata) SetVersion(v int64) *ResourceMetadata { - s.Version = &v +// SetVirtualRouterName sets the VirtualRouterName field's value. +func (s *UpdateRouteInput) SetVirtualRouterName(v string) *UpdateRouteInput { + s.VirtualRouterName = &v return s } -// An object that represents a route returned by a describe operation. -type RouteData struct { +type UpdateRouteOutput struct { + _ struct{} `type:"structure" payload:"Route"` + + // An object that represents a route returned by a describe operation. + // + // Route is a required field + Route *RouteData `locationName:"route" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateRouteOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateRouteOutput) GoString() string { + return s.String() +} + +// SetRoute sets the Route field's value. +func (s *UpdateRouteOutput) SetRoute(v *RouteData) *UpdateRouteOutput { + s.Route = v + return s +} + +type UpdateVirtualGatewayInput struct { _ struct{} `type:"structure"` - // MeshName is a required field - MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // An object that represents metadata for a resource. - // - // Metadata is a required field - Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - // RouteName is a required field - RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // An object that represents a route specification. Specify one route type. + // An object that represents the specification of a service mesh resource. // // Spec is a required field - Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` - - // An object that represents the current status of a route. - // - // Status is a required field - Status *RouteStatus `locationName:"status" type:"structure" required:"true"` + Spec *VirtualGatewaySpec `locationName:"spec" type:"structure" required:"true"` - // VirtualRouterName is a required field - VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // VirtualGatewayName is a required field + VirtualGatewayName *string `location:"uri" locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s RouteData) String() string { +func (s UpdateVirtualGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RouteData) GoString() string { +func (s UpdateVirtualGatewayInput) GoString() string { return s.String() } -// SetMeshName sets the MeshName field's value. -func (s *RouteData) SetMeshName(v string) *RouteData { - s.MeshName = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateVirtualGatewayInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualGatewayInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualGatewayName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualGatewayName")) + } + if s.VirtualGatewayName != nil && len(*s.VirtualGatewayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualGatewayName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateVirtualGatewayInput) SetClientToken(v string) *UpdateVirtualGatewayInput { + s.ClientToken = &v return s } -// SetMetadata sets the Metadata field's value. -func (s *RouteData) SetMetadata(v *ResourceMetadata) *RouteData { - s.Metadata = v +// SetMeshName sets the MeshName field's value. +func (s *UpdateVirtualGatewayInput) SetMeshName(v string) *UpdateVirtualGatewayInput { + s.MeshName = &v return s } -// SetRouteName sets the RouteName field's value. -func (s *RouteData) SetRouteName(v string) *RouteData { - s.RouteName = &v +// SetMeshOwner sets the MeshOwner field's value. +func (s *UpdateVirtualGatewayInput) SetMeshOwner(v string) *UpdateVirtualGatewayInput { + s.MeshOwner = &v return s } // SetSpec sets the Spec field's value. -func (s *RouteData) SetSpec(v *RouteSpec) *RouteData { +func (s *UpdateVirtualGatewayInput) SetSpec(v *VirtualGatewaySpec) *UpdateVirtualGatewayInput { s.Spec = v return s } -// SetStatus sets the Status field's value. -func (s *RouteData) SetStatus(v *RouteStatus) *RouteData { - s.Status = v - return s +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *UpdateVirtualGatewayInput) SetVirtualGatewayName(v string) *UpdateVirtualGatewayInput { + s.VirtualGatewayName = &v + return s +} + +type UpdateVirtualGatewayOutput struct { + _ struct{} `type:"structure" payload:"VirtualGateway"` + + // An object that represents a virtual gateway returned by a describe operation. + // + // VirtualGateway is a required field + VirtualGateway *VirtualGatewayData `locationName:"virtualGateway" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateVirtualGatewayOutput) String() string { + return awsutil.Prettify(s) } -// SetVirtualRouterName sets the VirtualRouterName field's value. -func (s *RouteData) SetVirtualRouterName(v string) *RouteData { - s.VirtualRouterName = &v +// GoString returns the string representation +func (s UpdateVirtualGatewayOutput) GoString() string { + return s.String() +} + +// SetVirtualGateway sets the VirtualGateway field's value. +func (s *UpdateVirtualGatewayOutput) SetVirtualGateway(v *VirtualGatewayData) *UpdateVirtualGatewayOutput { + s.VirtualGateway = v return s } -// An object that represents a route returned by a list operation. -type RouteRef struct { +type UpdateVirtualNodeInput struct { _ struct{} `type:"structure"` - // Arn is a required field - Arn *string `locationName:"arn" type:"string" required:"true"` - - // CreatedAt is a required field - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` - - // LastUpdatedAt is a required field - LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` // MeshName is a required field - MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` - - // MeshOwner is a required field - MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` - - // ResourceOwner is a required field - ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - // RouteName is a required field - RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - // Version is a required field - Version *int64 `locationName:"version" type:"long" required:"true"` + // An object that represents the specification of a virtual node. + // + // Spec is a required field + Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` - // VirtualRouterName is a required field - VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // VirtualNodeName is a required field + VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s RouteRef) String() string { +func (s UpdateVirtualNodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RouteRef) GoString() string { +func (s UpdateVirtualNodeInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *RouteRef) SetArn(v string) *RouteRef { - s.Arn = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateVirtualNodeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualNodeInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) + } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualNodeName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) + } + if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + } + } -// SetCreatedAt sets the CreatedAt field's value. -func (s *RouteRef) SetCreatedAt(v time.Time) *RouteRef { - s.CreatedAt = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetLastUpdatedAt sets the LastUpdatedAt field's value. -func (s *RouteRef) SetLastUpdatedAt(v time.Time) *RouteRef { - s.LastUpdatedAt = &v +// SetClientToken sets the ClientToken field's value. +func (s *UpdateVirtualNodeInput) SetClientToken(v string) *UpdateVirtualNodeInput { + s.ClientToken = &v return s } // SetMeshName sets the MeshName field's value. -func (s *RouteRef) SetMeshName(v string) *RouteRef { +func (s *UpdateVirtualNodeInput) SetMeshName(v string) *UpdateVirtualNodeInput { s.MeshName = &v return s } // SetMeshOwner sets the MeshOwner field's value. -func (s *RouteRef) SetMeshOwner(v string) *RouteRef { +func (s *UpdateVirtualNodeInput) SetMeshOwner(v string) *UpdateVirtualNodeInput { s.MeshOwner = &v return s } -// SetResourceOwner sets the ResourceOwner field's value. -func (s *RouteRef) SetResourceOwner(v string) *RouteRef { - s.ResourceOwner = &v +// SetSpec sets the Spec field's value. +func (s *UpdateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *UpdateVirtualNodeInput { + s.Spec = v return s } -// SetRouteName sets the RouteName field's value. -func (s *RouteRef) SetRouteName(v string) *RouteRef { - s.RouteName = &v +// SetVirtualNodeName sets the VirtualNodeName field's value. +func (s *UpdateVirtualNodeInput) SetVirtualNodeName(v string) *UpdateVirtualNodeInput { + s.VirtualNodeName = &v return s } -// SetVersion sets the Version field's value. -func (s *RouteRef) SetVersion(v int64) *RouteRef { - s.Version = &v - return s +type UpdateVirtualNodeOutput struct { + _ struct{} `type:"structure" payload:"VirtualNode"` + + // An object that represents a virtual node returned by a describe operation. + // + // VirtualNode is a required field + VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` } -// SetVirtualRouterName sets the VirtualRouterName field's value. -func (s *RouteRef) SetVirtualRouterName(v string) *RouteRef { - s.VirtualRouterName = &v +// String returns the string representation +func (s UpdateVirtualNodeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateVirtualNodeOutput) GoString() string { + return s.String() +} + +// SetVirtualNode sets the VirtualNode field's value. +func (s *UpdateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *UpdateVirtualNodeOutput { + s.VirtualNode = v return s } -// An object that represents a route specification. Specify one route type. -type RouteSpec struct { +type UpdateVirtualRouterInput struct { _ struct{} `type:"structure"` - // An object that represents a gRPC route type. - GrpcRoute *GrpcRoute `locationName:"grpcRoute" type:"structure"` + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // An object that represents an HTTP or HTTP/2 route type. - Http2Route *HttpRoute `locationName:"http2Route" type:"structure"` + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - // An object that represents an HTTP or HTTP/2 route type. - HttpRoute *HttpRoute `locationName:"httpRoute" type:"structure"` + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - Priority *int64 `locationName:"priority" type:"integer"` + // An object that represents the specification of a virtual router. + // + // Spec is a required field + Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` - // An object that represents a TCP route type. - TcpRoute *TcpRoute `locationName:"tcpRoute" type:"structure"` + // VirtualRouterName is a required field + VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s RouteSpec) String() string { +func (s UpdateVirtualRouterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RouteSpec) GoString() string { +func (s UpdateVirtualRouterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *RouteSpec) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RouteSpec"} - if s.GrpcRoute != nil { - if err := s.GrpcRoute.Validate(); err != nil { - invalidParams.AddNested("GrpcRoute", err.(request.ErrInvalidParams)) - } +func (s *UpdateVirtualRouterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualRouterInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) } - if s.Http2Route != nil { - if err := s.Http2Route.Validate(); err != nil { - invalidParams.AddNested("Http2Route", err.(request.ErrInvalidParams)) - } + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) } - if s.HttpRoute != nil { - if err := s.HttpRoute.Validate(); err != nil { - invalidParams.AddNested("HttpRoute", err.(request.ErrInvalidParams)) - } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) } - if s.TcpRoute != nil { - if err := s.TcpRoute.Validate(); err != nil { - invalidParams.AddNested("TcpRoute", err.(request.ErrInvalidParams)) + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualRouterName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) + } + if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) } } @@ -8308,95 +12401,114 @@ func (s *RouteSpec) Validate() error { return nil } -// SetGrpcRoute sets the GrpcRoute field's value. -func (s *RouteSpec) SetGrpcRoute(v *GrpcRoute) *RouteSpec { - s.GrpcRoute = v +// SetClientToken sets the ClientToken field's value. +func (s *UpdateVirtualRouterInput) SetClientToken(v string) *UpdateVirtualRouterInput { + s.ClientToken = &v return s } -// SetHttp2Route sets the Http2Route field's value. -func (s *RouteSpec) SetHttp2Route(v *HttpRoute) *RouteSpec { - s.Http2Route = v +// SetMeshName sets the MeshName field's value. +func (s *UpdateVirtualRouterInput) SetMeshName(v string) *UpdateVirtualRouterInput { + s.MeshName = &v return s } -// SetHttpRoute sets the HttpRoute field's value. -func (s *RouteSpec) SetHttpRoute(v *HttpRoute) *RouteSpec { - s.HttpRoute = v +// SetMeshOwner sets the MeshOwner field's value. +func (s *UpdateVirtualRouterInput) SetMeshOwner(v string) *UpdateVirtualRouterInput { + s.MeshOwner = &v return s } -// SetPriority sets the Priority field's value. -func (s *RouteSpec) SetPriority(v int64) *RouteSpec { - s.Priority = &v +// SetSpec sets the Spec field's value. +func (s *UpdateVirtualRouterInput) SetSpec(v *VirtualRouterSpec) *UpdateVirtualRouterInput { + s.Spec = v return s } -// SetTcpRoute sets the TcpRoute field's value. -func (s *RouteSpec) SetTcpRoute(v *TcpRoute) *RouteSpec { - s.TcpRoute = v +// SetVirtualRouterName sets the VirtualRouterName field's value. +func (s *UpdateVirtualRouterInput) SetVirtualRouterName(v string) *UpdateVirtualRouterInput { + s.VirtualRouterName = &v return s } -// An object that represents the current status of a route. -type RouteStatus struct { - _ struct{} `type:"structure"` +type UpdateVirtualRouterOutput struct { + _ struct{} `type:"structure" payload:"VirtualRouter"` - // Status is a required field - Status *string `locationName:"status" type:"string" required:"true" enum:"RouteStatusCode"` + // An object that represents a virtual router returned by a describe operation. + // + // VirtualRouter is a required field + VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` } // String returns the string representation -func (s RouteStatus) String() string { +func (s UpdateVirtualRouterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RouteStatus) GoString() string { +func (s UpdateVirtualRouterOutput) GoString() string { return s.String() } -// SetStatus sets the Status field's value. -func (s *RouteStatus) SetStatus(v string) *RouteStatus { - s.Status = &v +// SetVirtualRouter sets the VirtualRouter field's value. +func (s *UpdateVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *UpdateVirtualRouterOutput { + s.VirtualRouter = v return s } -// An object that represents the service discovery information for a virtual -// node. -type ServiceDiscovery struct { +type UpdateVirtualServiceInput struct { _ struct{} `type:"structure"` - // An object that represents the AWS Cloud Map service discovery information - // for your virtual node. - AwsCloudMap *AwsCloudMapServiceDiscovery `locationName:"awsCloudMap" type:"structure"` + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // An object that represents the DNS service discovery information for your - // virtual node. - Dns *DnsServiceDiscovery `locationName:"dns" type:"structure"` + // MeshName is a required field + MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + + MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + + // An object that represents the specification of a virtual service. + // + // Spec is a required field + Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` + + // VirtualServiceName is a required field + VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` } // String returns the string representation -func (s ServiceDiscovery) String() string { +func (s UpdateVirtualServiceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ServiceDiscovery) GoString() string { +func (s UpdateVirtualServiceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ServiceDiscovery) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ServiceDiscovery"} - if s.AwsCloudMap != nil { - if err := s.AwsCloudMap.Validate(); err != nil { - invalidParams.AddNested("AwsCloudMap", err.(request.ErrInvalidParams)) - } +func (s *UpdateVirtualServiceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualServiceInput"} + if s.MeshName == nil { + invalidParams.Add(request.NewErrParamRequired("MeshName")) } - if s.Dns != nil { - if err := s.Dns.Validate(); err != nil { - invalidParams.AddNested("Dns", err.(request.ErrInvalidParams)) + if s.MeshName != nil && len(*s.MeshName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + } + if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { + invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.VirtualServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) + } + if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) + } + if s.Spec != nil { + if err := s.Spec.Validate(); err != nil { + invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) } } @@ -8406,105 +12518,86 @@ func (s *ServiceDiscovery) Validate() error { return nil } -// SetAwsCloudMap sets the AwsCloudMap field's value. -func (s *ServiceDiscovery) SetAwsCloudMap(v *AwsCloudMapServiceDiscovery) *ServiceDiscovery { - s.AwsCloudMap = v +// SetClientToken sets the ClientToken field's value. +func (s *UpdateVirtualServiceInput) SetClientToken(v string) *UpdateVirtualServiceInput { + s.ClientToken = &v return s } -// SetDns sets the Dns field's value. -func (s *ServiceDiscovery) SetDns(v *DnsServiceDiscovery) *ServiceDiscovery { - s.Dns = v +// SetMeshName sets the MeshName field's value. +func (s *UpdateVirtualServiceInput) SetMeshName(v string) *UpdateVirtualServiceInput { + s.MeshName = &v return s } -// The request has failed due to a temporary failure of the service. -type ServiceUnavailableException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"message" type:"string"` -} - -// String returns the string representation -func (s ServiceUnavailableException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s ServiceUnavailableException) GoString() string { - return s.String() +// SetMeshOwner sets the MeshOwner field's value. +func (s *UpdateVirtualServiceInput) SetMeshOwner(v string) *UpdateVirtualServiceInput { + s.MeshOwner = &v + return s } -func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { - return &ServiceUnavailableException{ - RespMetadata: v, - } +// SetSpec sets the Spec field's value. +func (s *UpdateVirtualServiceInput) SetSpec(v *VirtualServiceSpec) *UpdateVirtualServiceInput { + s.Spec = v + return s } -// Code returns the exception type name. -func (s *ServiceUnavailableException) Code() string { - return "ServiceUnavailableException" +// SetVirtualServiceName sets the VirtualServiceName field's value. +func (s *UpdateVirtualServiceInput) SetVirtualServiceName(v string) *UpdateVirtualServiceInput { + s.VirtualServiceName = &v + return s } -// Message returns the exception's message. -func (s *ServiceUnavailableException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} +type UpdateVirtualServiceOutput struct { + _ struct{} `type:"structure" payload:"VirtualService"` -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ServiceUnavailableException) OrigErr() error { - return nil + // An object that represents a virtual service returned by a describe operation. + // + // VirtualService is a required field + VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` } -func (s *ServiceUnavailableException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// String returns the string representation +func (s UpdateVirtualServiceOutput) String() string { + return awsutil.Prettify(s) } -// Status code returns the HTTP status code for the request's response error. -func (s *ServiceUnavailableException) StatusCode() int { - return s.RespMetadata.StatusCode +// GoString returns the string representation +func (s UpdateVirtualServiceOutput) GoString() string { + return s.String() } -// RequestID returns the service's response RequestID for request. -func (s *ServiceUnavailableException) RequestID() string { - return s.RespMetadata.RequestID +// SetVirtualService sets the VirtualService field's value. +func (s *UpdateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *UpdateVirtualServiceOutput { + s.VirtualService = v + return s } -// Optional metadata that you apply to a resource to assist with categorization -// and organization. Each tag consists of a key and an optional value, both -// of which you define. Tag keys can have a maximum character length of 128 -// characters, and tag values can have a maximum length of 256 characters. -type TagRef struct { +// The access log configuration for a virtual gateway. +type VirtualGatewayAccessLog struct { _ struct{} `type:"structure"` - // Key is a required field - Key *string `locationName:"key" min:"1" type:"string" required:"true"` - - Value *string `locationName:"value" type:"string"` + // An object that represents an access log file. + File *VirtualGatewayFileAccessLog `locationName:"file" type:"structure"` } // String returns the string representation -func (s TagRef) String() string { +func (s VirtualGatewayAccessLog) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagRef) GoString() string { +func (s VirtualGatewayAccessLog) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TagRef) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TagRef"} - if s.Key == nil { - invalidParams.Add(request.NewErrParamRequired("Key")) - } - if s.Key != nil && len(*s.Key) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Key", 1)) +func (s *VirtualGatewayAccessLog) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayAccessLog"} + if s.File != nil { + if err := s.File.Validate(); err != nil { + invalidParams.AddNested("File", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -8513,55 +12606,36 @@ func (s *TagRef) Validate() error { return nil } -// SetKey sets the Key field's value. -func (s *TagRef) SetKey(v string) *TagRef { - s.Key = &v - return s -} - -// SetValue sets the Value field's value. -func (s *TagRef) SetValue(v string) *TagRef { - s.Value = &v +// SetFile sets the File field's value. +func (s *VirtualGatewayAccessLog) SetFile(v *VirtualGatewayFileAccessLog) *VirtualGatewayAccessLog { + s.File = v return s } -type TagResourceInput struct { +// An object that represents the default properties for a backend. +type VirtualGatewayBackendDefaults struct { _ struct{} `type:"structure"` - // ResourceArn is a required field - ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` - - // Tags is a required field - Tags []*TagRef `locationName:"tags" type:"list" required:"true"` + // An object that represents a client policy. + ClientPolicy *VirtualGatewayClientPolicy `locationName:"clientPolicy" type:"structure"` } // String returns the string representation -func (s TagResourceInput) String() string { +func (s VirtualGatewayBackendDefaults) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagResourceInput) GoString() string { +func (s VirtualGatewayBackendDefaults) 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")) - } - if s.Tags == nil { - invalidParams.Add(request.NewErrParamRequired("Tags")) - } - 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)) - } +func (s *VirtualGatewayBackendDefaults) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayBackendDefaults"} + if s.ClientPolicy != nil { + if err := s.ClientPolicy.Validate(); err != nil { + invalidParams.AddNested("ClientPolicy", err.(request.ErrInvalidParams)) } } @@ -8571,119 +12645,84 @@ func (s *TagResourceInput) Validate() error { return nil } -// SetResourceArn sets the ResourceArn field's value. -func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { - s.ResourceArn = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *TagResourceInput) SetTags(v []*TagRef) *TagResourceInput { - s.Tags = v +// SetClientPolicy sets the ClientPolicy field's value. +func (s *VirtualGatewayBackendDefaults) SetClientPolicy(v *VirtualGatewayClientPolicy) *VirtualGatewayBackendDefaults { + s.ClientPolicy = v return s } -type TagResourceOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation -func (s TagResourceOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s TagResourceOutput) GoString() string { - return s.String() -} - -// An object that represents a TCP route type. -type TcpRoute struct { +// An object that represents a client policy. +type VirtualGatewayClientPolicy struct { _ struct{} `type:"structure"` - // An object that represents the action to take if a match is determined. - // - // Action is a required field - Action *TcpRouteAction `locationName:"action" type:"structure" required:"true"` - - Timeout *TcpTimeout `locationName:"timeout" type:"structure"` + // An object that represents a Transport Layer Security (TLS) client policy. + Tls *VirtualGatewayClientPolicyTls `locationName:"tls" type:"structure"` } // String returns the string representation -func (s TcpRoute) String() string { +func (s VirtualGatewayClientPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TcpRoute) GoString() string { +func (s VirtualGatewayClientPolicy) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TcpRoute) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TcpRoute"} - if s.Action == nil { - invalidParams.Add(request.NewErrParamRequired("Action")) - } - if s.Action != nil { - if err := s.Action.Validate(); err != nil { - invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) +func (s *VirtualGatewayClientPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayClientPolicy"} + if s.Tls != nil { + if err := s.Tls.Validate(); err != nil { + invalidParams.AddNested("Tls", err.(request.ErrInvalidParams)) } } - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetAction sets the Action field's value. -func (s *TcpRoute) SetAction(v *TcpRouteAction) *TcpRoute { - s.Action = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetTimeout sets the Timeout field's value. -func (s *TcpRoute) SetTimeout(v *TcpTimeout) *TcpRoute { - s.Timeout = v +// SetTls sets the Tls field's value. +func (s *VirtualGatewayClientPolicy) SetTls(v *VirtualGatewayClientPolicyTls) *VirtualGatewayClientPolicy { + s.Tls = v return s } -// An object that represents the action to take if a match is determined. -type TcpRouteAction struct { +// An object that represents a Transport Layer Security (TLS) client policy. +type VirtualGatewayClientPolicyTls struct { _ struct{} `type:"structure"` - // WeightedTargets is a required field - WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` + Enforce *bool `locationName:"enforce" type:"boolean"` + + Ports []*int64 `locationName:"ports" type:"list"` + + // An object that represents a Transport Layer Security (TLS) validation context. + // + // Validation is a required field + Validation *VirtualGatewayTlsValidationContext `locationName:"validation" type:"structure" required:"true"` } // String returns the string representation -func (s TcpRouteAction) String() string { +func (s VirtualGatewayClientPolicyTls) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TcpRouteAction) GoString() string { +func (s VirtualGatewayClientPolicyTls) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TcpRouteAction) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TcpRouteAction"} - if s.WeightedTargets == nil { - invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) - } - if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { - invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) +func (s *VirtualGatewayClientPolicyTls) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayClientPolicyTls"} + if s.Validation == nil { + invalidParams.Add(request.NewErrParamRequired("Validation")) } - if s.WeightedTargets != nil { - for i, v := range s.WeightedTargets { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) - } + if s.Validation != nil { + if err := s.Validation.Validate(); err != nil { + invalidParams.AddNested("Validation", err.(request.ErrInvalidParams)) } } @@ -8693,66 +12732,116 @@ func (s *TcpRouteAction) Validate() error { return nil } -// SetWeightedTargets sets the WeightedTargets field's value. -func (s *TcpRouteAction) SetWeightedTargets(v []*WeightedTarget) *TcpRouteAction { - s.WeightedTargets = v +// SetEnforce sets the Enforce field's value. +func (s *VirtualGatewayClientPolicyTls) SetEnforce(v bool) *VirtualGatewayClientPolicyTls { + s.Enforce = &v return s } -type TcpTimeout struct { +// SetPorts sets the Ports field's value. +func (s *VirtualGatewayClientPolicyTls) SetPorts(v []*int64) *VirtualGatewayClientPolicyTls { + s.Ports = v + return s +} + +// SetValidation sets the Validation field's value. +func (s *VirtualGatewayClientPolicyTls) SetValidation(v *VirtualGatewayTlsValidationContext) *VirtualGatewayClientPolicyTls { + s.Validation = v + return s +} + +// An object that represents a virtual gateway returned by a describe operation. +type VirtualGatewayData struct { _ struct{} `type:"structure"` - // An object that represents a duration of time. - Idle *Duration `locationName:"idle" type:"structure"` + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // An object that represents metadata for a resource. + // + // Metadata is a required field + Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` + + // An object that represents the specification of a service mesh resource. + // + // Spec is a required field + Spec *VirtualGatewaySpec `locationName:"spec" type:"structure" required:"true"` + + // An object that represents the status of the mesh resource. + // + // Status is a required field + Status *VirtualGatewayStatus `locationName:"status" type:"structure" required:"true"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s TcpTimeout) String() string { +func (s VirtualGatewayData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TcpTimeout) GoString() string { +func (s VirtualGatewayData) GoString() string { return s.String() } -// SetIdle sets the Idle field's value. -func (s *TcpTimeout) SetIdle(v *Duration) *TcpTimeout { - s.Idle = v +// SetMeshName sets the MeshName field's value. +func (s *VirtualGatewayData) SetMeshName(v string) *VirtualGatewayData { + s.MeshName = &v return s } -// An object that represents a Transport Layer Security (TLS) validation context. -type TlsValidationContext struct { +// SetMetadata sets the Metadata field's value. +func (s *VirtualGatewayData) SetMetadata(v *ResourceMetadata) *VirtualGatewayData { + s.Metadata = v + return s +} + +// SetSpec sets the Spec field's value. +func (s *VirtualGatewayData) SetSpec(v *VirtualGatewaySpec) *VirtualGatewayData { + s.Spec = v + return s +} + +// SetStatus sets the Status field's value. +func (s *VirtualGatewayData) SetStatus(v *VirtualGatewayStatus) *VirtualGatewayData { + s.Status = v + return s +} + +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *VirtualGatewayData) SetVirtualGatewayName(v string) *VirtualGatewayData { + s.VirtualGatewayName = &v + return s +} + +// An object that represents an access log file. +type VirtualGatewayFileAccessLog struct { _ struct{} `type:"structure"` - // An object that represents a Transport Layer Security (TLS) validation context - // trust. - // - // Trust is a required field - Trust *TlsValidationContextTrust `locationName:"trust" type:"structure" required:"true"` + // Path is a required field + Path *string `locationName:"path" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s TlsValidationContext) String() string { +func (s VirtualGatewayFileAccessLog) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TlsValidationContext) GoString() string { +func (s VirtualGatewayFileAccessLog) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TlsValidationContext) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TlsValidationContext"} - if s.Trust == nil { - invalidParams.Add(request.NewErrParamRequired("Trust")) +func (s *VirtualGatewayFileAccessLog) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayFileAccessLog"} + if s.Path == nil { + invalidParams.Add(request.NewErrParamRequired("Path")) } - if s.Trust != nil { - if err := s.Trust.Validate(); err != nil { - invalidParams.AddNested("Trust", err.(request.ErrInvalidParams)) - } + if s.Path != nil && len(*s.Path) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if invalidParams.Len() > 0 { @@ -8761,39 +12850,79 @@ func (s *TlsValidationContext) Validate() error { return nil } -// SetTrust sets the Trust field's value. -func (s *TlsValidationContext) SetTrust(v *TlsValidationContextTrust) *TlsValidationContext { - s.Trust = v +// SetPath sets the Path field's value. +func (s *VirtualGatewayFileAccessLog) SetPath(v string) *VirtualGatewayFileAccessLog { + s.Path = &v return s } -// An object that represents a TLS validation context trust for an AWS Certicate -// Manager (ACM) certificate. -type TlsValidationContextAcmTrust struct { +// An object that represents the health check policy for a virtual gateway's +// listener. +type VirtualGatewayHealthCheckPolicy struct { _ struct{} `type:"structure"` - // CertificateAuthorityArns is a required field - CertificateAuthorityArns []*string `locationName:"certificateAuthorityArns" min:"1" type:"list" required:"true"` + // HealthyThreshold is a required field + HealthyThreshold *int64 `locationName:"healthyThreshold" min:"2" type:"integer" required:"true"` + + // IntervalMillis is a required field + IntervalMillis *int64 `locationName:"intervalMillis" min:"5000" type:"long" required:"true"` + + Path *string `locationName:"path" type:"string"` + + Port *int64 `locationName:"port" min:"1" type:"integer"` + + // Protocol is a required field + Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"VirtualGatewayPortProtocol"` + + // TimeoutMillis is a required field + TimeoutMillis *int64 `locationName:"timeoutMillis" min:"2000" type:"long" required:"true"` + + // UnhealthyThreshold is a required field + UnhealthyThreshold *int64 `locationName:"unhealthyThreshold" min:"2" type:"integer" required:"true"` } // String returns the string representation -func (s TlsValidationContextAcmTrust) String() string { +func (s VirtualGatewayHealthCheckPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TlsValidationContextAcmTrust) GoString() string { +func (s VirtualGatewayHealthCheckPolicy) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TlsValidationContextAcmTrust) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextAcmTrust"} - if s.CertificateAuthorityArns == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateAuthorityArns")) +func (s *VirtualGatewayHealthCheckPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayHealthCheckPolicy"} + if s.HealthyThreshold == nil { + invalidParams.Add(request.NewErrParamRequired("HealthyThreshold")) } - if s.CertificateAuthorityArns != nil && len(s.CertificateAuthorityArns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArns", 1)) + if s.HealthyThreshold != nil && *s.HealthyThreshold < 2 { + invalidParams.Add(request.NewErrParamMinValue("HealthyThreshold", 2)) + } + if s.IntervalMillis == nil { + invalidParams.Add(request.NewErrParamRequired("IntervalMillis")) + } + if s.IntervalMillis != nil && *s.IntervalMillis < 5000 { + invalidParams.Add(request.NewErrParamMinValue("IntervalMillis", 5000)) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) + } + if s.TimeoutMillis == nil { + invalidParams.Add(request.NewErrParamRequired("TimeoutMillis")) + } + if s.TimeoutMillis != nil && *s.TimeoutMillis < 2000 { + invalidParams.Add(request.NewErrParamMinValue("TimeoutMillis", 2000)) + } + if s.UnhealthyThreshold == nil { + invalidParams.Add(request.NewErrParamRequired("UnhealthyThreshold")) + } + if s.UnhealthyThreshold != nil && *s.UnhealthyThreshold < 2 { + invalidParams.Add(request.NewErrParamMinValue("UnhealthyThreshold", 2)) } if invalidParams.Len() > 0 { @@ -8802,88 +12931,95 @@ func (s *TlsValidationContextAcmTrust) Validate() error { return nil } -// SetCertificateAuthorityArns sets the CertificateAuthorityArns field's value. -func (s *TlsValidationContextAcmTrust) SetCertificateAuthorityArns(v []*string) *TlsValidationContextAcmTrust { - s.CertificateAuthorityArns = v +// SetHealthyThreshold sets the HealthyThreshold field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetHealthyThreshold(v int64) *VirtualGatewayHealthCheckPolicy { + s.HealthyThreshold = &v return s } -// An object that represents a Transport Layer Security (TLS) validation context -// trust for a local file. -type TlsValidationContextFileTrust struct { - _ struct{} `type:"structure"` - - // CertificateChain is a required field - CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` +// SetIntervalMillis sets the IntervalMillis field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetIntervalMillis(v int64) *VirtualGatewayHealthCheckPolicy { + s.IntervalMillis = &v + return s } -// String returns the string representation -func (s TlsValidationContextFileTrust) String() string { - return awsutil.Prettify(s) +// SetPath sets the Path field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetPath(v string) *VirtualGatewayHealthCheckPolicy { + s.Path = &v + return s } -// GoString returns the string representation -func (s TlsValidationContextFileTrust) GoString() string { - return s.String() +// SetPort sets the Port field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetPort(v int64) *VirtualGatewayHealthCheckPolicy { + s.Port = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *TlsValidationContextFileTrust) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextFileTrust"} - if s.CertificateChain == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateChain")) - } - if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) - } +// SetProtocol sets the Protocol field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetProtocol(v string) *VirtualGatewayHealthCheckPolicy { + s.Protocol = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetTimeoutMillis sets the TimeoutMillis field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetTimeoutMillis(v int64) *VirtualGatewayHealthCheckPolicy { + s.TimeoutMillis = &v + return s } -// SetCertificateChain sets the CertificateChain field's value. -func (s *TlsValidationContextFileTrust) SetCertificateChain(v string) *TlsValidationContextFileTrust { - s.CertificateChain = &v +// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. +func (s *VirtualGatewayHealthCheckPolicy) SetUnhealthyThreshold(v int64) *VirtualGatewayHealthCheckPolicy { + s.UnhealthyThreshold = &v return s } -// An object that represents a Transport Layer Security (TLS) validation context -// trust. -type TlsValidationContextTrust struct { +// An object that represents a listener for a virtual gateway. +type VirtualGatewayListener struct { _ struct{} `type:"structure"` - // An object that represents a TLS validation context trust for an AWS Certicate - // Manager (ACM) certificate. - Acm *TlsValidationContextAcmTrust `locationName:"acm" type:"structure"` + // An object that represents the health check policy for a virtual gateway's + // listener. + HealthCheck *VirtualGatewayHealthCheckPolicy `locationName:"healthCheck" type:"structure"` - // An object that represents a Transport Layer Security (TLS) validation context - // trust for a local file. - File *TlsValidationContextFileTrust `locationName:"file" type:"structure"` + // An object that represents a port mapping. + // + // PortMapping is a required field + PortMapping *VirtualGatewayPortMapping `locationName:"portMapping" type:"structure" required:"true"` + + // An object that represents the Transport Layer Security (TLS) properties for + // a listener. + Tls *VirtualGatewayListenerTls `locationName:"tls" type:"structure"` } // String returns the string representation -func (s TlsValidationContextTrust) String() string { +func (s VirtualGatewayListener) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TlsValidationContextTrust) GoString() string { +func (s VirtualGatewayListener) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TlsValidationContextTrust) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TlsValidationContextTrust"} - if s.Acm != nil { - if err := s.Acm.Validate(); err != nil { - invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) +func (s *VirtualGatewayListener) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayListener"} + if s.PortMapping == nil { + invalidParams.Add(request.NewErrParamRequired("PortMapping")) + } + if s.HealthCheck != nil { + if err := s.HealthCheck.Validate(); err != nil { + invalidParams.AddNested("HealthCheck", err.(request.ErrInvalidParams)) } } - if s.File != nil { - if err := s.File.Validate(); err != nil { - invalidParams.AddNested("File", err.(request.ErrInvalidParams)) + if s.PortMapping != nil { + if err := s.PortMapping.Validate(); err != nil { + invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) + } + } + if s.Tls != nil { + if err := s.Tls.Validate(); err != nil { + invalidParams.AddNested("Tls", err.(request.ErrInvalidParams)) } } @@ -8893,162 +13029,153 @@ func (s *TlsValidationContextTrust) Validate() error { return nil } -// SetAcm sets the Acm field's value. -func (s *TlsValidationContextTrust) SetAcm(v *TlsValidationContextAcmTrust) *TlsValidationContextTrust { - s.Acm = v +// SetHealthCheck sets the HealthCheck field's value. +func (s *VirtualGatewayListener) SetHealthCheck(v *VirtualGatewayHealthCheckPolicy) *VirtualGatewayListener { + s.HealthCheck = v return s } -// SetFile sets the File field's value. -func (s *TlsValidationContextTrust) SetFile(v *TlsValidationContextFileTrust) *TlsValidationContextTrust { - s.File = v +// SetPortMapping sets the PortMapping field's value. +func (s *VirtualGatewayListener) SetPortMapping(v *VirtualGatewayPortMapping) *VirtualGatewayListener { + s.PortMapping = v return s } -// The maximum request rate permitted by the App Mesh APIs has been exceeded -// for your account. For best results, use an increasing or variable sleep interval -// between requests. -type TooManyRequestsException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetTls sets the Tls field's value. +func (s *VirtualGatewayListener) SetTls(v *VirtualGatewayListenerTls) *VirtualGatewayListener { + s.Tls = v + return s +} - Message_ *string `locationName:"message" type:"string"` +// An object that represents the Transport Layer Security (TLS) properties for +// a listener. +type VirtualGatewayListenerTls struct { + _ struct{} `type:"structure"` + + // An object that represents a listener's Transport Layer Security (TLS) certificate. + // + // Certificate is a required field + Certificate *VirtualGatewayListenerTlsCertificate `locationName:"certificate" type:"structure" required:"true"` + + // Mode is a required field + Mode *string `locationName:"mode" type:"string" required:"true" enum:"VirtualGatewayListenerTlsMode"` } // String returns the string representation -func (s TooManyRequestsException) String() string { +func (s VirtualGatewayListenerTls) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TooManyRequestsException) GoString() string { +func (s VirtualGatewayListenerTls) GoString() string { return s.String() } -func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error { - return &TooManyRequestsException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *VirtualGatewayListenerTls) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayListenerTls"} + if s.Certificate == nil { + invalidParams.Add(request.NewErrParamRequired("Certificate")) } -} - -// Code returns the exception type name. -func (s *TooManyRequestsException) Code() string { - return "TooManyRequestsException" -} - -// Message returns the exception's message. -func (s *TooManyRequestsException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.Mode == nil { + invalidParams.Add(request.NewErrParamRequired("Mode")) + } + if s.Certificate != nil { + if err := s.Certificate.Validate(); err != nil { + invalidParams.AddNested("Certificate", err.(request.ErrInvalidParams)) + } } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *TooManyRequestsException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *TooManyRequestsException) 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 *TooManyRequestsException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetCertificate sets the Certificate field's value. +func (s *VirtualGatewayListenerTls) SetCertificate(v *VirtualGatewayListenerTlsCertificate) *VirtualGatewayListenerTls { + s.Certificate = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *TooManyRequestsException) RequestID() string { - return s.RespMetadata.RequestID +// SetMode sets the Mode field's value. +func (s *VirtualGatewayListenerTls) SetMode(v string) *VirtualGatewayListenerTls { + s.Mode = &v + return s } -// The request exceeds the maximum allowed number of tags allowed per resource. -// The current limit is 50 user tags per resource. You must reduce the number -// of tags in the request. None of the tags in this request were applied. -type TooManyTagsException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// An object that represents an AWS Certicate Manager (ACM) certificate. +type VirtualGatewayListenerTlsAcmCertificate struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"message" type:"string"` + // CertificateArn is a required field + CertificateArn *string `locationName:"certificateArn" type:"string" required:"true"` } // String returns the string representation -func (s TooManyTagsException) String() string { +func (s VirtualGatewayListenerTlsAcmCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TooManyTagsException) GoString() string { +func (s VirtualGatewayListenerTlsAcmCertificate) GoString() string { return s.String() } -func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { - return &TooManyTagsException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *VirtualGatewayListenerTlsAcmCertificate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayListenerTlsAcmCertificate"} + if s.CertificateArn == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } -} - -// Code returns the exception type name. -func (s *TooManyTagsException) Code() string { - return "TooManyTagsException" -} -// Message returns the exception's message. -func (s *TooManyTagsException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if invalidParams.Len() > 0 { + return invalidParams } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *TooManyTagsException) OrigErr() error { return nil } -func (s *TooManyTagsException) 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 *TooManyTagsException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *TooManyTagsException) RequestID() string { - return s.RespMetadata.RequestID +// SetCertificateArn sets the CertificateArn field's value. +func (s *VirtualGatewayListenerTlsAcmCertificate) SetCertificateArn(v string) *VirtualGatewayListenerTlsAcmCertificate { + s.CertificateArn = &v + return s } -type UntagResourceInput struct { +// An object that represents a listener's Transport Layer Security (TLS) certificate. +type VirtualGatewayListenerTlsCertificate struct { _ struct{} `type:"structure"` - // ResourceArn is a required field - ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` + // An object that represents an AWS Certicate Manager (ACM) certificate. + Acm *VirtualGatewayListenerTlsAcmCertificate `locationName:"acm" type:"structure"` - // TagKeys is a required field - TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` + // An object that represents a local file certificate. The certificate must + // meet specific requirements and you must have proxy authorization enabled. + // For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). + File *VirtualGatewayListenerTlsFileCertificate `locationName:"file" type:"structure"` } // String returns the string representation -func (s UntagResourceInput) String() string { +func (s VirtualGatewayListenerTlsCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UntagResourceInput) GoString() string { +func (s VirtualGatewayListenerTlsCertificate) 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 *VirtualGatewayListenerTlsCertificate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayListenerTlsCertificate"} + if s.Acm != nil { + if err := s.Acm.Validate(); err != nil { + invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) + } } - if s.TagKeys == nil { - invalidParams.Add(request.NewErrParamRequired("TagKeys")) + if s.File != nil { + if err := s.File.Validate(); err != nil { + invalidParams.AddNested("File", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -9057,67 +13184,55 @@ func (s *UntagResourceInput) Validate() error { return nil } -// SetResourceArn sets the ResourceArn field's value. -func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { - s.ResourceArn = &v +// SetAcm sets the Acm field's value. +func (s *VirtualGatewayListenerTlsCertificate) SetAcm(v *VirtualGatewayListenerTlsAcmCertificate) *VirtualGatewayListenerTlsCertificate { + s.Acm = v return s } -// SetTagKeys sets the TagKeys field's value. -func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { - s.TagKeys = v +// SetFile sets the File field's value. +func (s *VirtualGatewayListenerTlsCertificate) SetFile(v *VirtualGatewayListenerTlsFileCertificate) *VirtualGatewayListenerTlsCertificate { + s.File = v return s } -type UntagResourceOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation -func (s UntagResourceOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s UntagResourceOutput) GoString() string { - return s.String() -} - -type UpdateMeshInput struct { +// An object that represents a local file certificate. The certificate must +// meet specific requirements and you must have proxy authorization enabled. +// For more information, see Transport Layer Security (TLS) (https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites). +type VirtualGatewayListenerTlsFileCertificate struct { _ struct{} `type:"structure"` - ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` + // CertificateChain is a required field + CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` - // An object that represents the specification of a service mesh. - Spec *MeshSpec `locationName:"spec" type:"structure"` + // PrivateKey is a required field + PrivateKey *string `locationName:"privateKey" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s UpdateMeshInput) String() string { +func (s VirtualGatewayListenerTlsFileCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateMeshInput) GoString() string { +func (s VirtualGatewayListenerTlsFileCertificate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateMeshInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateMeshInput"} - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) +func (s *VirtualGatewayListenerTlsFileCertificate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayListenerTlsFileCertificate"} + if s.CertificateChain == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateChain")) } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) + if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) } - if s.Spec != nil { - if err := s.Spec.Validate(); err != nil { - invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) - } + if s.PrivateKey == nil { + invalidParams.Add(request.NewErrParamRequired("PrivateKey")) + } + if s.PrivateKey != nil && len(*s.PrivateKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) } if invalidParams.Len() > 0 { @@ -9126,112 +13241,89 @@ func (s *UpdateMeshInput) Validate() error { return nil } -// SetClientToken sets the ClientToken field's value. -func (s *UpdateMeshInput) SetClientToken(v string) *UpdateMeshInput { - s.ClientToken = &v - return s -} - -// SetMeshName sets the MeshName field's value. -func (s *UpdateMeshInput) SetMeshName(v string) *UpdateMeshInput { - s.MeshName = &v +// SetCertificateChain sets the CertificateChain field's value. +func (s *VirtualGatewayListenerTlsFileCertificate) SetCertificateChain(v string) *VirtualGatewayListenerTlsFileCertificate { + s.CertificateChain = &v return s } -// SetSpec sets the Spec field's value. -func (s *UpdateMeshInput) SetSpec(v *MeshSpec) *UpdateMeshInput { - s.Spec = v +// SetPrivateKey sets the PrivateKey field's value. +func (s *VirtualGatewayListenerTlsFileCertificate) SetPrivateKey(v string) *VirtualGatewayListenerTlsFileCertificate { + s.PrivateKey = &v return s } -type UpdateMeshOutput struct { - _ struct{} `type:"structure" payload:"Mesh"` +// An object that represents logging information. +type VirtualGatewayLogging struct { + _ struct{} `type:"structure"` - // An object that represents a service mesh returned by a describe operation. - // - // Mesh is a required field - Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` + // The access log configuration for a virtual gateway. + AccessLog *VirtualGatewayAccessLog `locationName:"accessLog" type:"structure"` } // String returns the string representation -func (s UpdateMeshOutput) String() string { +func (s VirtualGatewayLogging) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateMeshOutput) GoString() string { +func (s VirtualGatewayLogging) GoString() string { return s.String() } -// SetMesh sets the Mesh field's value. -func (s *UpdateMeshOutput) SetMesh(v *MeshData) *UpdateMeshOutput { - s.Mesh = v +// Validate inspects the fields of the type to determine if they are valid. +func (s *VirtualGatewayLogging) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayLogging"} + if s.AccessLog != nil { + if err := s.AccessLog.Validate(); err != nil { + invalidParams.AddNested("AccessLog", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessLog sets the AccessLog field's value. +func (s *VirtualGatewayLogging) SetAccessLog(v *VirtualGatewayAccessLog) *VirtualGatewayLogging { + s.AccessLog = v return s } -type UpdateRouteInput struct { +// An object that represents a port mapping. +type VirtualGatewayPortMapping struct { _ struct{} `type:"structure"` - ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - - // RouteName is a required field - RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` - - // An object that represents a route specification. Specify one route type. - // - // Spec is a required field - Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` + // Port is a required field + Port *int64 `locationName:"port" min:"1" type:"integer" required:"true"` - // VirtualRouterName is a required field - VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // Protocol is a required field + Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"VirtualGatewayPortProtocol"` } // String returns the string representation -func (s UpdateRouteInput) String() string { +func (s VirtualGatewayPortMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateRouteInput) GoString() string { +func (s VirtualGatewayPortMapping) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateRouteInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateRouteInput"} - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) - } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) - } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) - } - if s.RouteName == nil { - invalidParams.Add(request.NewErrParamRequired("RouteName")) - } - if s.RouteName != nil && len(*s.RouteName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) - } - if s.Spec == nil { - invalidParams.Add(request.NewErrParamRequired("Spec")) - } - if s.VirtualRouterName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) +func (s *VirtualGatewayPortMapping) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayPortMapping"} + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) } - if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } - if s.Spec != nil { - if err := s.Spec.Validate(); err != nil { - invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) - } + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) } if invalidParams.Len() > 0 { @@ -9240,120 +13332,153 @@ func (s *UpdateRouteInput) Validate() error { return nil } -// SetClientToken sets the ClientToken field's value. -func (s *UpdateRouteInput) SetClientToken(v string) *UpdateRouteInput { - s.ClientToken = &v +// SetPort sets the Port field's value. +func (s *VirtualGatewayPortMapping) SetPort(v int64) *VirtualGatewayPortMapping { + s.Port = &v return s } -// SetMeshName sets the MeshName field's value. -func (s *UpdateRouteInput) SetMeshName(v string) *UpdateRouteInput { - s.MeshName = &v +// SetProtocol sets the Protocol field's value. +func (s *VirtualGatewayPortMapping) SetProtocol(v string) *VirtualGatewayPortMapping { + s.Protocol = &v return s } -// SetMeshOwner sets the MeshOwner field's value. -func (s *UpdateRouteInput) SetMeshOwner(v string) *UpdateRouteInput { - s.MeshOwner = &v - return s +// An object that represents a virtual gateway returned by a list operation. +type VirtualGatewayRef struct { + _ struct{} `type:"structure"` + + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` + + // MeshName is a required field + MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` + + // MeshOwner is a required field + MeshOwner *string `locationName:"meshOwner" min:"12" type:"string" required:"true"` + + // ResourceOwner is a required field + ResourceOwner *string `locationName:"resourceOwner" min:"12" type:"string" required:"true"` + + // Version is a required field + Version *int64 `locationName:"version" type:"long" required:"true"` + + // VirtualGatewayName is a required field + VirtualGatewayName *string `locationName:"virtualGatewayName" min:"1" type:"string" required:"true"` } -// SetRouteName sets the RouteName field's value. -func (s *UpdateRouteInput) SetRouteName(v string) *UpdateRouteInput { - s.RouteName = &v +// String returns the string representation +func (s VirtualGatewayRef) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VirtualGatewayRef) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *VirtualGatewayRef) SetArn(v string) *VirtualGatewayRef { + s.Arn = &v return s } -// SetSpec sets the Spec field's value. -func (s *UpdateRouteInput) SetSpec(v *RouteSpec) *UpdateRouteInput { - s.Spec = v +// SetCreatedAt sets the CreatedAt field's value. +func (s *VirtualGatewayRef) SetCreatedAt(v time.Time) *VirtualGatewayRef { + s.CreatedAt = &v return s } -// SetVirtualRouterName sets the VirtualRouterName field's value. -func (s *UpdateRouteInput) SetVirtualRouterName(v string) *UpdateRouteInput { - s.VirtualRouterName = &v +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *VirtualGatewayRef) SetLastUpdatedAt(v time.Time) *VirtualGatewayRef { + s.LastUpdatedAt = &v return s } -type UpdateRouteOutput struct { - _ struct{} `type:"structure" payload:"Route"` +// SetMeshName sets the MeshName field's value. +func (s *VirtualGatewayRef) SetMeshName(v string) *VirtualGatewayRef { + s.MeshName = &v + return s +} - // An object that represents a route returned by a describe operation. - // - // Route is a required field - Route *RouteData `locationName:"route" type:"structure" required:"true"` +// SetMeshOwner sets the MeshOwner field's value. +func (s *VirtualGatewayRef) SetMeshOwner(v string) *VirtualGatewayRef { + s.MeshOwner = &v + return s } -// String returns the string representation -func (s UpdateRouteOutput) String() string { - return awsutil.Prettify(s) +// SetResourceOwner sets the ResourceOwner field's value. +func (s *VirtualGatewayRef) SetResourceOwner(v string) *VirtualGatewayRef { + s.ResourceOwner = &v + return s } -// GoString returns the string representation -func (s UpdateRouteOutput) GoString() string { - return s.String() +// SetVersion sets the Version field's value. +func (s *VirtualGatewayRef) SetVersion(v int64) *VirtualGatewayRef { + s.Version = &v + return s } -// SetRoute sets the Route field's value. -func (s *UpdateRouteOutput) SetRoute(v *RouteData) *UpdateRouteOutput { - s.Route = v +// SetVirtualGatewayName sets the VirtualGatewayName field's value. +func (s *VirtualGatewayRef) SetVirtualGatewayName(v string) *VirtualGatewayRef { + s.VirtualGatewayName = &v return s } -type UpdateVirtualNodeInput struct { +// An object that represents the specification of a service mesh resource. +type VirtualGatewaySpec struct { _ struct{} `type:"structure"` - ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` + // An object that represents the default properties for a backend. + BackendDefaults *VirtualGatewayBackendDefaults `locationName:"backendDefaults" type:"structure"` - // An object that represents the specification of a virtual node. - // - // Spec is a required field - Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` + // Listeners is a required field + Listeners []*VirtualGatewayListener `locationName:"listeners" type:"list" required:"true"` - // VirtualNodeName is a required field - VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` + // An object that represents logging information. + Logging *VirtualGatewayLogging `locationName:"logging" type:"structure"` } // String returns the string representation -func (s UpdateVirtualNodeInput) String() string { +func (s VirtualGatewaySpec) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateVirtualNodeInput) GoString() string { +func (s VirtualGatewaySpec) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateVirtualNodeInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualNodeInput"} - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) - } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) +func (s *VirtualGatewaySpec) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewaySpec"} + if s.Listeners == nil { + invalidParams.Add(request.NewErrParamRequired("Listeners")) } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) - } - if s.Spec == nil { - invalidParams.Add(request.NewErrParamRequired("Spec")) - } - if s.VirtualNodeName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) + if s.BackendDefaults != nil { + if err := s.BackendDefaults.Validate(); err != nil { + invalidParams.AddNested("BackendDefaults", err.(request.ErrInvalidParams)) + } } - if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) + if s.Listeners != nil { + for i, v := range s.Listeners { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) + } + } } - if s.Spec != nil { - if err := s.Spec.Validate(); err != nil { - invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + if s.Logging != nil { + if err := s.Logging.Validate(); err != nil { + invalidParams.AddNested("Logging", err.(request.ErrInvalidParams)) } } @@ -9363,114 +13488,78 @@ func (s *UpdateVirtualNodeInput) Validate() error { return nil } -// SetClientToken sets the ClientToken field's value. -func (s *UpdateVirtualNodeInput) SetClientToken(v string) *UpdateVirtualNodeInput { - s.ClientToken = &v - return s -} - -// SetMeshName sets the MeshName field's value. -func (s *UpdateVirtualNodeInput) SetMeshName(v string) *UpdateVirtualNodeInput { - s.MeshName = &v - return s -} - -// SetMeshOwner sets the MeshOwner field's value. -func (s *UpdateVirtualNodeInput) SetMeshOwner(v string) *UpdateVirtualNodeInput { - s.MeshOwner = &v +// SetBackendDefaults sets the BackendDefaults field's value. +func (s *VirtualGatewaySpec) SetBackendDefaults(v *VirtualGatewayBackendDefaults) *VirtualGatewaySpec { + s.BackendDefaults = v return s } -// SetSpec sets the Spec field's value. -func (s *UpdateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *UpdateVirtualNodeInput { - s.Spec = v +// SetListeners sets the Listeners field's value. +func (s *VirtualGatewaySpec) SetListeners(v []*VirtualGatewayListener) *VirtualGatewaySpec { + s.Listeners = v return s } -// SetVirtualNodeName sets the VirtualNodeName field's value. -func (s *UpdateVirtualNodeInput) SetVirtualNodeName(v string) *UpdateVirtualNodeInput { - s.VirtualNodeName = &v +// SetLogging sets the Logging field's value. +func (s *VirtualGatewaySpec) SetLogging(v *VirtualGatewayLogging) *VirtualGatewaySpec { + s.Logging = v return s } -type UpdateVirtualNodeOutput struct { - _ struct{} `type:"structure" payload:"VirtualNode"` - - // An object that represents a virtual node returned by a describe operation. - // - // VirtualNode is a required field - VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` +// An object that represents the status of the mesh resource. +type VirtualGatewayStatus struct { + _ struct{} `type:"structure"` + + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualGatewayStatusCode"` } // String returns the string representation -func (s UpdateVirtualNodeOutput) String() string { +func (s VirtualGatewayStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateVirtualNodeOutput) GoString() string { +func (s VirtualGatewayStatus) GoString() string { return s.String() } -// SetVirtualNode sets the VirtualNode field's value. -func (s *UpdateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *UpdateVirtualNodeOutput { - s.VirtualNode = v +// SetStatus sets the Status field's value. +func (s *VirtualGatewayStatus) SetStatus(v string) *VirtualGatewayStatus { + s.Status = &v return s } -type UpdateVirtualRouterInput struct { +// An object that represents a Transport Layer Security (TLS) validation context. +type VirtualGatewayTlsValidationContext struct { _ struct{} `type:"structure"` - ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - - // An object that represents the specification of a virtual router. + // An object that represents a Transport Layer Security (TLS) validation context + // trust. // - // Spec is a required field - Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` - - // VirtualRouterName is a required field - VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` + // Trust is a required field + Trust *VirtualGatewayTlsValidationContextTrust `locationName:"trust" type:"structure" required:"true"` } // String returns the string representation -func (s UpdateVirtualRouterInput) String() string { +func (s VirtualGatewayTlsValidationContext) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateVirtualRouterInput) GoString() string { +func (s VirtualGatewayTlsValidationContext) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateVirtualRouterInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualRouterInput"} - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) - } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) - } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) - } - if s.Spec == nil { - invalidParams.Add(request.NewErrParamRequired("Spec")) - } - if s.VirtualRouterName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) - } - if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) +func (s *VirtualGatewayTlsValidationContext) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayTlsValidationContext"} + if s.Trust == nil { + invalidParams.Add(request.NewErrParamRequired("Trust")) } - if s.Spec != nil { - if err := s.Spec.Validate(); err != nil { - invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) + if s.Trust != nil { + if err := s.Trust.Validate(); err != nil { + invalidParams.AddNested("Trust", err.(request.ErrInvalidParams)) } } @@ -9480,115 +13569,80 @@ func (s *UpdateVirtualRouterInput) Validate() error { return nil } -// SetClientToken sets the ClientToken field's value. -func (s *UpdateVirtualRouterInput) SetClientToken(v string) *UpdateVirtualRouterInput { - s.ClientToken = &v - return s -} - -// SetMeshName sets the MeshName field's value. -func (s *UpdateVirtualRouterInput) SetMeshName(v string) *UpdateVirtualRouterInput { - s.MeshName = &v - return s -} - -// SetMeshOwner sets the MeshOwner field's value. -func (s *UpdateVirtualRouterInput) SetMeshOwner(v string) *UpdateVirtualRouterInput { - s.MeshOwner = &v - return s -} - -// SetSpec sets the Spec field's value. -func (s *UpdateVirtualRouterInput) SetSpec(v *VirtualRouterSpec) *UpdateVirtualRouterInput { - s.Spec = v - return s -} - -// SetVirtualRouterName sets the VirtualRouterName field's value. -func (s *UpdateVirtualRouterInput) SetVirtualRouterName(v string) *UpdateVirtualRouterInput { - s.VirtualRouterName = &v +// SetTrust sets the Trust field's value. +func (s *VirtualGatewayTlsValidationContext) SetTrust(v *VirtualGatewayTlsValidationContextTrust) *VirtualGatewayTlsValidationContext { + s.Trust = v return s } -type UpdateVirtualRouterOutput struct { - _ struct{} `type:"structure" payload:"VirtualRouter"` +// An object that represents a TLS validation context trust for an AWS Certicate +// Manager (ACM) certificate. +type VirtualGatewayTlsValidationContextAcmTrust struct { + _ struct{} `type:"structure"` - // An object that represents a virtual router returned by a describe operation. - // - // VirtualRouter is a required field - VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` + // CertificateAuthorityArns is a required field + CertificateAuthorityArns []*string `locationName:"certificateAuthorityArns" min:"1" type:"list" required:"true"` } // String returns the string representation -func (s UpdateVirtualRouterOutput) String() string { +func (s VirtualGatewayTlsValidationContextAcmTrust) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateVirtualRouterOutput) GoString() string { +func (s VirtualGatewayTlsValidationContextAcmTrust) GoString() string { return s.String() } -// SetVirtualRouter sets the VirtualRouter field's value. -func (s *UpdateVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *UpdateVirtualRouterOutput { - s.VirtualRouter = v +// Validate inspects the fields of the type to determine if they are valid. +func (s *VirtualGatewayTlsValidationContextAcmTrust) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayTlsValidationContextAcmTrust"} + if s.CertificateAuthorityArns == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateAuthorityArns")) + } + if s.CertificateAuthorityArns != nil && len(s.CertificateAuthorityArns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArns", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateAuthorityArns sets the CertificateAuthorityArns field's value. +func (s *VirtualGatewayTlsValidationContextAcmTrust) SetCertificateAuthorityArns(v []*string) *VirtualGatewayTlsValidationContextAcmTrust { + s.CertificateAuthorityArns = v return s } -type UpdateVirtualServiceInput struct { +// An object that represents a Transport Layer Security (TLS) validation context +// trust for a local file. +type VirtualGatewayTlsValidationContextFileTrust struct { _ struct{} `type:"structure"` - ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - - // MeshName is a required field - MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` - - MeshOwner *string `location:"querystring" locationName:"meshOwner" min:"12" type:"string"` - - // An object that represents the specification of a virtual service. - // - // Spec is a required field - Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` - - // VirtualServiceName is a required field - VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` + // CertificateChain is a required field + CertificateChain *string `locationName:"certificateChain" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s UpdateVirtualServiceInput) String() string { +func (s VirtualGatewayTlsValidationContextFileTrust) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateVirtualServiceInput) GoString() string { +func (s VirtualGatewayTlsValidationContextFileTrust) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateVirtualServiceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualServiceInput"} - if s.MeshName == nil { - invalidParams.Add(request.NewErrParamRequired("MeshName")) - } - if s.MeshName != nil && len(*s.MeshName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) - } - if s.MeshOwner != nil && len(*s.MeshOwner) < 12 { - invalidParams.Add(request.NewErrParamMinLen("MeshOwner", 12)) - } - if s.Spec == nil { - invalidParams.Add(request.NewErrParamRequired("Spec")) - } - if s.VirtualServiceName == nil { - invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) - } - if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) +func (s *VirtualGatewayTlsValidationContextFileTrust) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayTlsValidationContextFileTrust"} + if s.CertificateChain == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateChain")) } - if s.Spec != nil { - if err := s.Spec.Validate(); err != nil { - invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) - } + if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) } if invalidParams.Len() > 0 { @@ -9597,58 +13651,65 @@ func (s *UpdateVirtualServiceInput) Validate() error { return nil } -// SetClientToken sets the ClientToken field's value. -func (s *UpdateVirtualServiceInput) SetClientToken(v string) *UpdateVirtualServiceInput { - s.ClientToken = &v - return s -} - -// SetMeshName sets the MeshName field's value. -func (s *UpdateVirtualServiceInput) SetMeshName(v string) *UpdateVirtualServiceInput { - s.MeshName = &v - return s -} - -// SetMeshOwner sets the MeshOwner field's value. -func (s *UpdateVirtualServiceInput) SetMeshOwner(v string) *UpdateVirtualServiceInput { - s.MeshOwner = &v - return s -} - -// SetSpec sets the Spec field's value. -func (s *UpdateVirtualServiceInput) SetSpec(v *VirtualServiceSpec) *UpdateVirtualServiceInput { - s.Spec = v +// SetCertificateChain sets the CertificateChain field's value. +func (s *VirtualGatewayTlsValidationContextFileTrust) SetCertificateChain(v string) *VirtualGatewayTlsValidationContextFileTrust { + s.CertificateChain = &v return s } -// SetVirtualServiceName sets the VirtualServiceName field's value. -func (s *UpdateVirtualServiceInput) SetVirtualServiceName(v string) *UpdateVirtualServiceInput { - s.VirtualServiceName = &v - return s -} +// An object that represents a Transport Layer Security (TLS) validation context +// trust. +type VirtualGatewayTlsValidationContextTrust struct { + _ struct{} `type:"structure"` -type UpdateVirtualServiceOutput struct { - _ struct{} `type:"structure" payload:"VirtualService"` + // An object that represents a TLS validation context trust for an AWS Certicate + // Manager (ACM) certificate. + Acm *VirtualGatewayTlsValidationContextAcmTrust `locationName:"acm" type:"structure"` - // An object that represents a virtual service returned by a describe operation. - // - // VirtualService is a required field - VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` + // An object that represents a Transport Layer Security (TLS) validation context + // trust for a local file. + File *VirtualGatewayTlsValidationContextFileTrust `locationName:"file" type:"structure"` } // String returns the string representation -func (s UpdateVirtualServiceOutput) String() string { +func (s VirtualGatewayTlsValidationContextTrust) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateVirtualServiceOutput) GoString() string { +func (s VirtualGatewayTlsValidationContextTrust) GoString() string { return s.String() } -// SetVirtualService sets the VirtualService field's value. -func (s *UpdateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *UpdateVirtualServiceOutput { - s.VirtualService = v +// Validate inspects the fields of the type to determine if they are valid. +func (s *VirtualGatewayTlsValidationContextTrust) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VirtualGatewayTlsValidationContextTrust"} + if s.Acm != nil { + if err := s.Acm.Validate(); err != nil { + invalidParams.AddNested("Acm", err.(request.ErrInvalidParams)) + } + } + if s.File != nil { + if err := s.File.Validate(); err != nil { + invalidParams.AddNested("File", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAcm sets the Acm field's value. +func (s *VirtualGatewayTlsValidationContextTrust) SetAcm(v *VirtualGatewayTlsValidationContextAcmTrust) *VirtualGatewayTlsValidationContextTrust { + s.Acm = v + return s +} + +// SetFile sets the File field's value. +func (s *VirtualGatewayTlsValidationContextTrust) SetFile(v *VirtualGatewayTlsValidationContextFileTrust) *VirtualGatewayTlsValidationContextTrust { + s.File = v return s } @@ -10672,6 +14733,17 @@ const ( EgressFilterTypeDropAll = "DROP_ALL" ) +const ( + // GatewayRouteStatusCodeActive is a GatewayRouteStatusCode enum value + GatewayRouteStatusCodeActive = "ACTIVE" + + // GatewayRouteStatusCodeDeleted is a GatewayRouteStatusCode enum value + GatewayRouteStatusCodeDeleted = "DELETED" + + // GatewayRouteStatusCodeInactive is a GatewayRouteStatusCode enum value + GatewayRouteStatusCodeInactive = "INACTIVE" +) + const ( // GrpcRetryPolicyEventCancelled is a GrpcRetryPolicyEvent enum value GrpcRetryPolicyEventCancelled = "cancelled" @@ -10778,6 +14850,39 @@ const ( TcpRetryPolicyEventConnectionError = "connection-error" ) +const ( + // VirtualGatewayListenerTlsModeDisabled is a VirtualGatewayListenerTlsMode enum value + VirtualGatewayListenerTlsModeDisabled = "DISABLED" + + // VirtualGatewayListenerTlsModePermissive is a VirtualGatewayListenerTlsMode enum value + VirtualGatewayListenerTlsModePermissive = "PERMISSIVE" + + // VirtualGatewayListenerTlsModeStrict is a VirtualGatewayListenerTlsMode enum value + VirtualGatewayListenerTlsModeStrict = "STRICT" +) + +const ( + // VirtualGatewayPortProtocolGrpc is a VirtualGatewayPortProtocol enum value + VirtualGatewayPortProtocolGrpc = "grpc" + + // VirtualGatewayPortProtocolHttp is a VirtualGatewayPortProtocol enum value + VirtualGatewayPortProtocolHttp = "http" + + // VirtualGatewayPortProtocolHttp2 is a VirtualGatewayPortProtocol enum value + VirtualGatewayPortProtocolHttp2 = "http2" +) + +const ( + // VirtualGatewayStatusCodeActive is a VirtualGatewayStatusCode enum value + VirtualGatewayStatusCodeActive = "ACTIVE" + + // VirtualGatewayStatusCodeDeleted is a VirtualGatewayStatusCode enum value + VirtualGatewayStatusCodeDeleted = "DELETED" + + // VirtualGatewayStatusCodeInactive is a VirtualGatewayStatusCode enum value + VirtualGatewayStatusCodeInactive = "INACTIVE" +) + const ( // VirtualNodeStatusCodeActive is a VirtualNodeStatusCode enum value VirtualNodeStatusCodeActive = "ACTIVE" diff --git a/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go b/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go index 8215648e8d8..4af1265c5d6 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go @@ -3990,7 +3990,29 @@ type ApiCache struct { // Valid values are between 1 and 3600 seconds. Ttl *int64 `locationName:"ttl" type:"long"` - // The cache instance type. + // The cache instance type. Valid values are + // + // * SMALL + // + // * MEDIUM + // + // * LARGE + // + // * XLARGE + // + // * LARGE_2X + // + // * LARGE_4X + // + // * LARGE_8X (not available in all regions) + // + // * LARGE_12X + // + // Historically, instance types were identified by an EC2-style value. As of + // July 2020, this is deprecated, and the generic identifiers above should be + // used. + // + // The following legacy instance types are avaible, but their use is discouraged: // // * T2_SMALL: A t2.small instance type. // @@ -4633,7 +4655,29 @@ type CreateApiCacheInput struct { // Ttl is a required field Ttl *int64 `locationName:"ttl" type:"long" required:"true"` - // The cache instance type. + // The cache instance type. Valid values are + // + // * SMALL + // + // * MEDIUM + // + // * LARGE + // + // * XLARGE + // + // * LARGE_2X + // + // * LARGE_4X + // + // * LARGE_8X (not available in all regions) + // + // * LARGE_12X + // + // Historically, instance types were identified by an EC2-style value. As of + // July 2020, this is deprecated, and the generic identifiers above should be + // used. + // + // The following legacy instance types are avaible, but their use is discouraged: // // * T2_SMALL: A t2.small instance type. // @@ -8585,7 +8629,7 @@ type RdsHttpEndpointConfig struct { // Logical database name. DatabaseName *string `locationName:"databaseName" type:"string"` - // Amazon RDS cluster identifier. + // Amazon RDS cluster ARN. DbClusterIdentifier *string `locationName:"dbClusterIdentifier" type:"string"` // Logical schema name. @@ -9204,7 +9248,29 @@ type UpdateApiCacheInput struct { // Ttl is a required field Ttl *int64 `locationName:"ttl" type:"long" required:"true"` - // The cache instance type. + // The cache instance type. Valid values are + // + // * SMALL + // + // * MEDIUM + // + // * LARGE + // + // * XLARGE + // + // * LARGE_2X + // + // * LARGE_4X + // + // * LARGE_8X (not available in all regions) + // + // * LARGE_12X + // + // Historically, instance types were identified by an EC2-style value. As of + // July 2020, this is deprecated, and the generic identifiers above should be + // used. + // + // The following legacy instance types are avaible, but their use is discouraged: // // * T2_SMALL: A t2.small instance type. // @@ -10315,6 +10381,30 @@ const ( // ApiCacheTypeR48xlarge is a ApiCacheType enum value ApiCacheTypeR48xlarge = "R4_8XLARGE" + + // ApiCacheTypeSmall is a ApiCacheType enum value + ApiCacheTypeSmall = "SMALL" + + // ApiCacheTypeMedium is a ApiCacheType enum value + ApiCacheTypeMedium = "MEDIUM" + + // ApiCacheTypeLarge is a ApiCacheType enum value + ApiCacheTypeLarge = "LARGE" + + // ApiCacheTypeXlarge is a ApiCacheType enum value + ApiCacheTypeXlarge = "XLARGE" + + // ApiCacheTypeLarge2x is a ApiCacheType enum value + ApiCacheTypeLarge2x = "LARGE_2X" + + // ApiCacheTypeLarge4x is a ApiCacheType enum value + ApiCacheTypeLarge4x = "LARGE_4X" + + // ApiCacheTypeLarge8x is a ApiCacheType enum value + ApiCacheTypeLarge8x = "LARGE_8X" + + // ApiCacheTypeLarge12x is a ApiCacheType enum value + ApiCacheTypeLarge12x = "LARGE_12X" ) const ( diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go index fc0bba549e6..c8949fdabe0 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go @@ -5953,8 +5953,7 @@ type CreateCloudFrontOriginAccessIdentityOutput struct { // The current version of the origin access identity created. ETag *string `location:"header" locationName:"ETag" type:"string"` - // The fully qualified URI of the new origin access identity just created. For - // example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A. + // The fully qualified URI of the new origin access identity just created. Location *string `location:"header" locationName:"Location" type:"string"` } @@ -6040,8 +6039,7 @@ type CreateDistributionOutput struct { // The current version of the distribution created. ETag *string `location:"header" locationName:"ETag" type:"string"` - // The fully qualified URI of the new distribution resource just created. For - // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5. + // The fully qualified URI of the new distribution resource just created. Location *string `location:"header" locationName:"Location" type:"string"` } @@ -6127,8 +6125,7 @@ type CreateDistributionWithTagsOutput struct { // The current version of the distribution created. ETag *string `location:"header" locationName:"ETag" type:"string"` - // The fully qualified URI of the new distribution resource just created. For - // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5. + // The fully qualified URI of the new distribution resource just created. Location *string `location:"header" locationName:"Location" type:"string"` } @@ -6213,8 +6210,7 @@ type CreateFieldLevelEncryptionConfigOutput struct { // Returned when you create a new field-level encryption configuration. FieldLevelEncryption *FieldLevelEncryption `type:"structure"` - // The fully qualified URI of the new configuration resource just created. For - // example: https://cloudfront.amazonaws.com/2010-11-01/field-level-encryption-config/EDFDVBD632BHDS5. + // The fully qualified URI of the new configuration resource just created. Location *string `location:"header" locationName:"Location" type:"string"` } @@ -6298,8 +6294,7 @@ type CreateFieldLevelEncryptionProfileOutput struct { // Returned when you create a new field-level encryption profile. FieldLevelEncryptionProfile *FieldLevelEncryptionProfile `type:"structure"` - // The fully qualified URI of the new profile resource just created. For example: - // https://cloudfront.amazonaws.com/2010-11-01/field-level-encryption-profile/EDFDVBD632BHDS5. + // The fully qualified URI of the new profile resource just created. Location *string `location:"header" locationName:"Location" type:"string"` } @@ -6475,8 +6470,7 @@ type CreatePublicKeyOutput struct { // The current version of the public key. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` - // The fully qualified URI of the new public key resource just created. For - // example: https://cloudfront.amazonaws.com/2010-11-01/cloudfront-public-key/EDFDVBD632BHDS5. + // The fully qualified URI of the new public key resource just created. Location *string `location:"header" locationName:"Location" type:"string"` // Returned when you add a public key. @@ -6563,7 +6557,6 @@ type CreateStreamingDistributionOutput struct { ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new streaming distribution resource just created. - // For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8. Location *string `location:"header" locationName:"Location" type:"string"` // The streaming distribution's information. @@ -6650,7 +6643,6 @@ type CreateStreamingDistributionWithTagsOutput struct { ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new streaming distribution resource just created. - // For example:https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8. Location *string `location:"header" locationName:"Location" type:"string"` // The streaming distribution's information. @@ -15129,10 +15121,10 @@ func (s *UpdateStreamingDistributionOutput) SetStreamingDistribution(v *Streamin // viewers that support server name indication (SNI) (https://en.wikipedia.org/wiki/Server_Name_Indication) // (recommended), or all viewers including those that don’t support SNI. // To accept HTTPS connections from only viewers that support SNI, set SSLSupportMethod -// to sni-only. This is recommended. Most browsers and clients released after -// 2010 support SNI. To accept HTTPS connections from all viewers, including -// those that don’t support SNI, set SSLSupportMethod to vip. This is not -// recommended, and results in additional monthly charges from CloudFront. +// to sni-only. This is recommended. Most browsers and clients support SNI. +// To accept HTTPS connections from all viewers, including those that don’t +// support SNI, set SSLSupportMethod to vip. This is not recommended, and +// results in additional monthly charges from CloudFront. // // * The minimum SSL/TLS protocol version that the distribution can use to // communicate with viewers. To specify a minimum version, choose a value @@ -15227,9 +15219,6 @@ type ViewerCertificate struct { // // On the CloudFront console, this setting is called Security Policy. // - // We recommend that you specify TLSv1.2_2018 unless your viewers are using - // browsers or devices that don’t support TLSv1.2. - // // When you’re using SNI only (you set SSLSupportMethod to sni-only), you // must specify TLSv1 or higher. // @@ -15243,8 +15232,7 @@ type ViewerCertificate struct { // // * sni-only – The distribution accepts HTTPS connections from only viewers // that support server name indication (SNI) (https://en.wikipedia.org/wiki/Server_Name_Indication). - // This is recommended. Most browsers and clients released after 2010 support - // SNI. + // This is recommended. Most browsers and clients support SNI. // // * vip – The distribution accepts HTTPS connections from all viewers // including those that don’t support SNI. This is not recommended, and @@ -15416,6 +15404,9 @@ const ( // MinimumProtocolVersionTlsv122018 is a MinimumProtocolVersion enum value MinimumProtocolVersionTlsv122018 = "TLSv1.2_2018" + + // MinimumProtocolVersionTlsv122019 is a MinimumProtocolVersion enum value + MinimumProtocolVersionTlsv122019 = "TLSv1.2_2019" ) const ( diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/api.go index 56b3c461c6d..b86f0fcea8d 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/api.go @@ -85,6 +85,8 @@ func (c *CloudHSMV2) CopyBackupToRegionRequest(input *CopyBackupToRegionInput) ( // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/CopyBackupToRegion func (c *CloudHSMV2) CopyBackupToRegion(input *CopyBackupToRegionInput) (*CopyBackupToRegionOutput, error) { @@ -180,6 +182,8 @@ func (c *CloudHSMV2) CreateClusterRequest(input *CreateClusterInput) (req *reque // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/CreateCluster func (c *CloudHSMV2) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { @@ -466,6 +470,8 @@ func (c *CloudHSMV2) DeleteClusterRequest(input *DeleteClusterInput) (req *reque // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/DeleteCluster func (c *CloudHSMV2) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { @@ -670,6 +676,8 @@ func (c *CloudHSMV2) DescribeBackupsRequest(input *DescribeBackupsInput) (req *r // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/DescribeBackups func (c *CloudHSMV2) DescribeBackups(input *DescribeBackupsInput) (*DescribeBackupsOutput, error) { @@ -827,6 +835,8 @@ func (c *CloudHSMV2) DescribeClustersRequest(input *DescribeClustersInput) (req // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/DescribeClusters func (c *CloudHSMV2) DescribeClusters(input *DescribeClustersInput) (*DescribeClustersOutput, error) { @@ -1082,6 +1092,8 @@ func (c *CloudHSMV2) ListTagsRequest(input *ListTagsInput) (req *request.Request // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ListTags func (c *CloudHSMV2) ListTags(input *ListTagsInput) (*ListTagsOutput, error) { @@ -1324,6 +1336,8 @@ func (c *CloudHSMV2) TagResourceRequest(input *TagResourceInput) (req *request.R // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/TagResource func (c *CloudHSMV2) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { @@ -1420,6 +1434,8 @@ func (c *CloudHSMV2) UntagResourceRequest(input *UntagResourceInput) (req *reque // The request was rejected because an error occurred. // // * CloudHsmTagException +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/UntagResource func (c *CloudHSMV2) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { @@ -1476,13 +1492,14 @@ type Backup struct { SourceBackup *string `type:"string"` // The identifier (ID) of the cluster containing the source backup from which - // the new backup was copied. . + // the new backup was copied. SourceCluster *string `type:"string"` - // The AWS region that contains the source backup from which the new backup + // The AWS Region that contains the source backup from which the new backup // was copied. SourceRegion *string `type:"string"` + // The list of tags for the backup. TagList []*Tag `min:"1" type:"list"` } @@ -1900,6 +1917,8 @@ func (s *CloudHsmServiceException) RequestID() string { return s.RespMetadata.RequestID } +// The request was rejected because of a tagging failure. Verify the tag conditions +// in all applicable policies, and then retry the request. type CloudHsmTagException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1997,6 +2016,7 @@ type Cluster struct { // zone. SubnetMapping map[string]*string `type:"map"` + // The list of tags for the cluster. TagList []*Tag `min:"1" type:"list"` // The identifier (ID) of the virtual private cloud (VPC) that contains the @@ -2111,6 +2131,10 @@ type CopyBackupToRegionInput struct { // DestinationRegion is a required field DestinationRegion *string `type:"string" required:"true"` + // Tags to apply to the destination backup during creation. If you specify tags, + // only these tags will be applied to the destination backup. If you do not + // specify tags, the service copies tags from the source backup to the destination + // backup. TagList []*Tag `min:"1" type:"list"` } @@ -2226,6 +2250,7 @@ type CreateClusterInput struct { // SubnetIds is a required field SubnetIds []*string `min:"1" type:"list" required:"true"` + // Tags to apply to the CloudHSM cluster during creation. TagList []*Tag `min:"1" type:"list"` } diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/errors.go b/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/errors.go index a99c421f3f4..9f72ea42eaf 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudhsmv2/errors.go @@ -42,6 +42,9 @@ const ( // ErrCodeCloudHsmTagException for service response error code // "CloudHsmTagException". + // + // The request was rejected because of a tagging failure. Verify the tag conditions + // in all applicable policies, and then retry the request. ErrCodeCloudHsmTagException = "CloudHsmTagException" ) diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/api.go index 2069fda2168..afcd2604448 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/api.go @@ -81,6 +81,9 @@ func (c *CloudWatchEvents) ActivateEventSourceRequest(input *ActivateEventSource // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ActivateEventSource func (c *CloudWatchEvents) ActivateEventSource(input *ActivateEventSourceInput) (*ActivateEventSourceOutput, error) { req, out := c.ActivateEventSourceRequest(input) @@ -178,6 +181,9 @@ func (c *CloudWatchEvents) CreateEventBusRequest(input *CreateEventBusInput) (re // * LimitExceededException // You tried to create more rules or add more targets to a rule than is allowed. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/CreateEventBus func (c *CloudWatchEvents) CreateEventBus(input *CreateEventBusInput) (*CreateEventBusOutput, error) { req, out := c.CreateEventBusRequest(input) @@ -290,6 +296,9 @@ func (c *CloudWatchEvents) CreatePartnerEventSourceRequest(input *CreatePartnerE // * LimitExceededException // You tried to create more rules or add more targets to a rule than is allowed. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/CreatePartnerEventSource func (c *CloudWatchEvents) CreatePartnerEventSource(input *CreatePartnerEventSourceInput) (*CreatePartnerEventSourceOutput, error) { req, out := c.CreatePartnerEventSourceRequest(input) @@ -385,6 +394,9 @@ func (c *CloudWatchEvents) DeactivateEventSourceRequest(input *DeactivateEventSo // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeactivateEventSource func (c *CloudWatchEvents) DeactivateEventSource(input *DeactivateEventSourceInput) (*DeactivateEventSourceOutput, error) { req, out := c.DeactivateEventSourceRequest(input) @@ -557,6 +569,9 @@ func (c *CloudWatchEvents) DeletePartnerEventSourceRequest(input *DeletePartnerE // * ConcurrentModificationException // There is concurrent modification on a rule or target. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DeletePartnerEventSource func (c *CloudWatchEvents) DeletePartnerEventSource(input *DeletePartnerEventSourceInput) (*DeletePartnerEventSourceOutput, error) { req, out := c.DeletePartnerEventSourceRequest(input) @@ -835,6 +850,9 @@ func (c *CloudWatchEvents) DescribeEventSourceRequest(input *DescribeEventSource // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribeEventSource func (c *CloudWatchEvents) DescribeEventSource(input *DescribeEventSourceInput) (*DescribeEventSourceOutput, error) { req, out := c.DescribeEventSourceRequest(input) @@ -920,6 +938,9 @@ func (c *CloudWatchEvents) DescribePartnerEventSourceRequest(input *DescribePart // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/DescribePartnerEventSource func (c *CloudWatchEvents) DescribePartnerEventSource(input *DescribePartnerEventSourceInput) (*DescribePartnerEventSourceOutput, error) { req, out := c.DescribePartnerEventSourceRequest(input) @@ -1362,6 +1383,9 @@ func (c *CloudWatchEvents) ListEventSourcesRequest(input *ListEventSourcesInput) // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListEventSources func (c *CloudWatchEvents) ListEventSources(input *ListEventSourcesInput) (*ListEventSourcesOutput, error) { req, out := c.ListEventSourcesRequest(input) @@ -1446,6 +1470,9 @@ func (c *CloudWatchEvents) ListPartnerEventSourceAccountsRequest(input *ListPart // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListPartnerEventSourceAccounts func (c *CloudWatchEvents) ListPartnerEventSourceAccounts(input *ListPartnerEventSourceAccountsInput) (*ListPartnerEventSourceAccountsOutput, error) { req, out := c.ListPartnerEventSourceAccountsRequest(input) @@ -1526,6 +1553,9 @@ func (c *CloudWatchEvents) ListPartnerEventSourcesRequest(input *ListPartnerEven // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/ListPartnerEventSources func (c *CloudWatchEvents) ListPartnerEventSources(input *ListPartnerEventSourcesInput) (*ListPartnerEventSourcesOutput, error) { req, out := c.ListPartnerEventSourcesRequest(input) @@ -2020,6 +2050,9 @@ func (c *CloudWatchEvents) PutPartnerEventsRequest(input *PutPartnerEventsInput) // * InternalException // This exception occurs due to unexpected causes. // +// * OperationDisabledException +// The operation you are attempting is not available in this region. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/events-2015-10-07/PutPartnerEvents func (c *CloudWatchEvents) PutPartnerEvents(input *PutPartnerEventsInput) (*PutPartnerEventsOutput, error) { req, out := c.PutPartnerEventsRequest(input) @@ -2088,8 +2121,9 @@ func (c *CloudWatchEvents) PutPermissionRequest(input *PutPermissionInput) (req // PutPermission API operation for Amazon CloudWatch Events. // // Running PutPermission permits the specified AWS account or AWS organization -// to put events to the specified event bus. CloudWatch Events rules in your -// account are triggered by these events arriving to an event bus in your account. +// to put events to the specified event bus. Amazon EventBridge (CloudWatch +// Events) rules in your account are triggered by these events arriving to an +// event bus in your account. // // For another account to send events to your account, that external account // must have an EventBridge rule with your account's event bus as a target. @@ -2383,6 +2417,8 @@ func (c *CloudWatchEvents) PutTargetsRequest(input *PutTargetsInput) (req *reque // // * The default event bus of another AWS account // +// * Amazon API Gateway REST APIs +// // Creating rules with built-in targets is supported only in the AWS Management // Console. The built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances // API call, EC2 StopInstances API call, and EC2 TerminateInstances API call. @@ -2393,12 +2429,13 @@ func (c *CloudWatchEvents) PutTargetsRequest(input *PutTargetsInput) (req *reque // on multiple EC2 instances with one rule, you can use the RunCommandParameters // field. // -// To be able to make API calls against the resources that you own, Amazon CloudWatch -// Events needs the appropriate permissions. For AWS Lambda and Amazon SNS resources, -// EventBridge relies on resource-based policies. For EC2 instances, Kinesis -// data streams, and AWS Step Functions state machines, EventBridge relies on -// IAM roles that you specify in the RoleARN argument in PutTargets. For more -// information, see Authentication and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html) +// To be able to make API calls against the resources that you own, Amazon EventBridge +// (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and +// Amazon SNS resources, EventBridge relies on resource-based policies. For +// EC2 instances, Kinesis data streams, AWS Step Functions state machines and +// API Gateway REST APIs, EventBridge relies on IAM roles that you specify in +// the RoleARN argument in PutTargets. For more information, see Authentication +// and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html) // in the Amazon EventBridge User Guide. // // If another AWS account is in the same region and has granted you permission @@ -2408,7 +2445,8 @@ func (c *CloudWatchEvents) PutTargetsRequest(input *PutTargetsInput) (req *reque // you run PutTargets. If your account sends events to another account, your // account is charged for each sent event. Each event sent to another account // is charged as a custom event. The account receiving the event is not charged. -// For more information, see Amazon CloudWatch Pricing (https://aws.amazon.com/cloudwatch/pricing/). +// For more information, see Amazon EventBridge (CloudWatch Events) Pricing +// (https://aws.amazon.com/eventbridge/pricing/). // // Input, InputPath, and InputTransformer are not available with PutTarget if // the target is an event bus of a different AWS account. @@ -2936,8 +2974,8 @@ func (c *CloudWatchEvents) UntagResourceRequest(input *UntagResourceInput) (req // UntagResource API operation for Amazon CloudWatch Events. // -// Removes one or more tags from the specified EventBridge resource. In CloudWatch -// Events, rules and event buses can be tagged. +// Removes one or more tags from the specified EventBridge resource. In Amazon +// EventBridge (CloudWatch Events, rules and event buses can be tagged. // // 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 @@ -4611,6 +4649,52 @@ func (s *EventSource) SetState(v string) *EventSource { return s } +// These are custom parameter to be used when the target is an API Gateway REST +// APIs. +type HttpParameters struct { + _ struct{} `type:"structure"` + + // The headers that need to be sent as part of request invoking the API Gateway + // REST API. + HeaderParameters map[string]*string `type:"map"` + + // The path parameter values to be used to populate API Gateway REST API path + // wildcards ("*"). + PathParameterValues []*string `type:"list"` + + // The query string keys/values that need to be sent as part of request invoking + // the API Gateway REST API. + QueryStringParameters map[string]*string `type:"map"` +} + +// String returns the string representation +func (s HttpParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s HttpParameters) GoString() string { + return s.String() +} + +// SetHeaderParameters sets the HeaderParameters field's value. +func (s *HttpParameters) SetHeaderParameters(v map[string]*string) *HttpParameters { + s.HeaderParameters = v + return s +} + +// SetPathParameterValues sets the PathParameterValues field's value. +func (s *HttpParameters) SetPathParameterValues(v []*string) *HttpParameters { + s.PathParameterValues = v + return s +} + +// SetQueryStringParameters sets the QueryStringParameters field's value. +func (s *HttpParameters) SetQueryStringParameters(v map[string]*string) *HttpParameters { + s.QueryStringParameters = v + return s +} + // Contains the parameters needed for you to provide custom input to a target // based on one or more pieces of data extracted from the event. type InputTransformer struct { @@ -5863,6 +5947,62 @@ func (s *NetworkConfiguration) SetAwsvpcConfiguration(v *AwsVpcConfiguration) *N return s } +// The operation you are attempting is not available in this region. +type OperationDisabledException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OperationDisabledException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OperationDisabledException) GoString() string { + return s.String() +} + +func newErrorOperationDisabledException(v protocol.ResponseMetadata) error { + return &OperationDisabledException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OperationDisabledException) Code() string { + return "OperationDisabledException" +} + +// Message returns the exception's message. +func (s *OperationDisabledException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OperationDisabledException) OrigErr() error { + return nil +} + +func (s *OperationDisabledException) 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 *OperationDisabledException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OperationDisabledException) RequestID() string { + return s.RespMetadata.RequestID +} + // A partner event source is created by an SaaS partner. If a customer creates // a partner event bus that matches this event source, that AWS account can // receive events from the partner's applications or services. @@ -7611,6 +7751,14 @@ type Target struct { // in the Amazon EC2 Container Service Developer Guide. EcsParameters *EcsParameters `type:"structure"` + // Contains the HTTP parameters to use when the target is a API Gateway REST + // endpoint. + // + // If you specify an API Gateway REST API as a target, you can use this parameter + // to specify headers, path parameter, query string keys/values as part of your + // target invoking request. + HttpParameters *HttpParameters `type:"structure"` + // The ID of the target. // // Id is a required field @@ -7729,6 +7877,12 @@ func (s *Target) SetEcsParameters(v *EcsParameters) *Target { return s } +// SetHttpParameters sets the HttpParameters field's value. +func (s *Target) SetHttpParameters(v *HttpParameters) *Target { + s.HttpParameters = v + return s +} + // SetId sets the Id field's value. func (s *Target) SetId(v string) *Target { s.Id = &v diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/errors.go b/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/errors.go index 059007e401b..9de2a8c22a6 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudwatchevents/errors.go @@ -49,6 +49,12 @@ const ( // or UntagResource. ErrCodeManagedRuleException = "ManagedRuleException" + // ErrCodeOperationDisabledException for service response error code + // "OperationDisabledException". + // + // The operation you are attempting is not available in this region. + ErrCodeOperationDisabledException = "OperationDisabledException" + // ErrCodePolicyLengthExceededException for service response error code // "PolicyLengthExceededException". // @@ -75,6 +81,7 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "InvalidStateException": newErrorInvalidStateException, "LimitExceededException": newErrorLimitExceededException, "ManagedRuleException": newErrorManagedRuleException, + "OperationDisabledException": newErrorOperationDisabledException, "PolicyLengthExceededException": newErrorPolicyLengthExceededException, "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, "ResourceNotFoundException": newErrorResourceNotFoundException, diff --git a/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go b/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go index add39aea141..d38ab73b33d 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go @@ -4322,6 +4322,66 @@ func (s *BuildPhase) SetStartTime(v time.Time) *BuildPhase { return s } +// Contains information that defines how the AWS CodeBuild build project reports +// the build status to the source provider. +type BuildStatusConfig struct { + _ struct{} `type:"structure"` + + // Specifies the context of the build status CodeBuild sends to the source provider. + // The usage of this parameter depends on the source provider. + // + // Bitbucket + // + // This parameter is used for the name parameter in the Bitbucket commit status. + // For more information, see build (https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Bworkspace%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build) + // in the Bitbucket API documentation. + // + // GitHub/GitHub Enterprise Server + // + // This parameter is used for the context parameter in the GitHub commit status. + // For more information, see Create a commit status (https://developer.github.com/v3/repos/statuses/#create-a-commit-status) + // in the GitHub developer guide. + Context *string `locationName:"context" type:"string"` + + // Specifies the target url of the build status CodeBuild sends to the source + // provider. The usage of this parameter depends on the source provider. + // + // Bitbucket + // + // This parameter is used for the url parameter in the Bitbucket commit status. + // For more information, see build (https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Bworkspace%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build) + // in the Bitbucket API documentation. + // + // GitHub/GitHub Enterprise Server + // + // This parameter is used for the target_url parameter in the GitHub commit + // status. For more information, see Create a commit status (https://developer.github.com/v3/repos/statuses/#create-a-commit-status) + // in the GitHub developer guide. + TargetUrl *string `locationName:"targetUrl" type:"string"` +} + +// String returns the string representation +func (s BuildStatusConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BuildStatusConfig) GoString() string { + return s.String() +} + +// SetContext sets the Context field's value. +func (s *BuildStatusConfig) SetContext(v string) *BuildStatusConfig { + s.Context = &v + return s +} + +// SetTargetUrl sets the TargetUrl field's value. +func (s *BuildStatusConfig) SetTargetUrl(v string) *BuildStatusConfig { + s.TargetUrl = &v + return s +} + // Information about Amazon CloudWatch Logs for a build project. type CloudWatchLogsConfig struct { _ struct{} `type:"structure"` @@ -8124,6 +8184,11 @@ type ProjectSource struct { // not get or set this information directly. Auth *SourceAuth `locationName:"auth" type:"structure"` + // Contains information that defines how the build project reports the build + // status to the source provider. This option is only used when the source provider + // is GITHUB, GITHUB_ENTERPRISE, or BITBUCKET. + BuildStatusConfig *BuildStatusConfig `locationName:"buildStatusConfig" type:"structure"` + // The buildspec file declaration to use for the builds in this build project. // // If this value is set, it can be either an inline buildspec definition, the @@ -8210,9 +8275,10 @@ type ProjectSource struct { // * CODEPIPELINE: The source code settings are specified in the source action // of a pipeline in AWS CodePipeline. // - // * GITHUB: The source code is in a GitHub repository. + // * GITHUB: The source code is in a GitHub or GitHub Enterprise Cloud repository. // - // * GITHUB_ENTERPRISE: The source code is in a GitHub Enterprise repository. + // * GITHUB_ENTERPRISE: The source code is in a GitHub Enterprise Server + // repository. // // * NO_SOURCE: The project does not have input source code. // @@ -8262,6 +8328,12 @@ func (s *ProjectSource) SetAuth(v *SourceAuth) *ProjectSource { return s } +// SetBuildStatusConfig sets the BuildStatusConfig field's value. +func (s *ProjectSource) SetBuildStatusConfig(v *BuildStatusConfig) *ProjectSource { + s.BuildStatusConfig = v + return s +} + // SetBuildspec sets the Buildspec field's value. func (s *ProjectSource) SetBuildspec(v string) *ProjectSource { s.Buildspec = &v @@ -9189,6 +9261,11 @@ type StartBuildInput struct { // ones already defined in the build project. ArtifactsOverride *ProjectArtifacts `locationName:"artifactsOverride" type:"structure"` + // Contains information that defines how the build project reports the build + // status to the source provider. This option is only used when the source provider + // is GITHUB, GITHUB_ENTERPRISE, or BITBUCKET. + BuildStatusConfigOverride *BuildStatusConfig `locationName:"buildStatusConfigOverride" type:"structure"` + // A buildspec file declaration that overrides, for this build only, the latest // one already defined in the build project. // @@ -9243,7 +9320,7 @@ type StartBuildInput struct { // A unique, case sensitive identifier you provide to ensure the idempotency // of the StartBuild request. The token is included in the StartBuild request - // and is valid for 12 hours. If you repeat the StartBuild request with the + // and is valid for 5 minutes. If you repeat the StartBuild request with the // same token, but change a parameter, AWS CodeBuild returns a parameter mismatch // error. IdempotencyToken *string `locationName:"idempotencyToken" type:"string"` @@ -9475,6 +9552,12 @@ func (s *StartBuildInput) SetArtifactsOverride(v *ProjectArtifacts) *StartBuildI return s } +// SetBuildStatusConfigOverride sets the BuildStatusConfigOverride field's value. +func (s *StartBuildInput) SetBuildStatusConfigOverride(v *BuildStatusConfig) *StartBuildInput { + s.BuildStatusConfigOverride = v + return s +} + // SetBuildspecOverride sets the BuildspecOverride field's value. func (s *StartBuildInput) SetBuildspecOverride(v string) *StartBuildInput { s.BuildspecOverride = &v @@ -10667,8 +10750,8 @@ type WebhookFilter struct { // Pattern is a required field Pattern *string `locationName:"pattern" type:"string" required:"true"` - // The type of webhook filter. There are five webhook filter types: EVENT, ACTOR_ACCOUNT_ID, - // HEAD_REF, BASE_REF, and FILE_PATH. + // The type of webhook filter. There are six webhook filter types: EVENT, ACTOR_ACCOUNT_ID, + // HEAD_REF, BASE_REF, FILE_PATH, and COMMIT_MESSAGE. // // EVENT // @@ -10705,7 +10788,18 @@ type WebhookFilter struct { // A webhook triggers a build when the path of a changed file matches the regular // expression pattern. // - // Works with GitHub and GitHub Enterprise push events only. + // Works with GitHub and Bitbucket events push and pull requests events. Also + // works with GitHub Enterprise push events, but does not work with GitHub Enterprise + // pull request events. + // + // COMMIT_MESSAGE + // + // A webhook triggers a build when the head commit message matches the regular + // expression pattern. + // + // Works with GitHub and Bitbucket events push and pull requests events. Also + // works with GitHub Enterprise push events, but does not work with GitHub Enterprise + // pull request events. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"WebhookFilterType"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go index 2e438ca2bad..b7e7e4ace1d 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go @@ -3926,13 +3926,13 @@ func (c *EC2) CreateDhcpOptionsRequest(input *CreateDhcpOptionsInput) (req *requ // * domain-name - If you're using AmazonProvidedDNS in us-east-1, specify // ec2.internal. If you're using AmazonProvidedDNS in another Region, specify // region.compute.internal (for example, ap-northeast-1.compute.internal). -// Otherwise, specify a domain name (for example, MyCompany.com). This value -// is used to complete unqualified DNS hostnames. Important: Some Linux operating -// systems accept multiple domain names separated by spaces. However, Windows -// and other Linux operating systems treat the value as a single domain, -// which results in unexpected behavior. If your DHCP options set is associated -// with a VPC that has instances with multiple operating systems, specify -// only one domain name. +// Otherwise, specify a domain name (for example, ExampleCompany.com). This +// value is used to complete unqualified DNS hostnames. Important: Some Linux +// operating systems accept multiple domain names separated by spaces. However, +// Windows and other Linux operating systems treat the value as a single +// domain, which results in unexpected behavior. If your DHCP options set +// is associated with a VPC that has instances with multiple operating systems, +// specify only one domain name. // // * ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) // servers. @@ -6100,7 +6100,7 @@ func (c *EC2) CreateSpotDatafeedSubscriptionRequest(input *CreateSpotDatafeedSub // // Creates a data feed for Spot Instances, enabling you to view Spot Instance // usage logs. You can create one data feed per AWS account. For more information, -// see Spot Instance Data Feed (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html) +// see Spot Instance data feed (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html) // in the Amazon EC2 User Guide for Linux Instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -21302,7 +21302,7 @@ func (c *EC2) DescribeSpotDatafeedSubscriptionRequest(input *DescribeSpotDatafee // DescribeSpotDatafeedSubscription API operation for Amazon Elastic Compute Cloud. // // Describes the data feed for Spot Instances. For more information, see Spot -// Instance Data Feed (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html) +// Instance data feed (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html) // in the Amazon EC2 User Guide for Linux Instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -21820,7 +21820,7 @@ func (c *EC2) DescribeSpotPriceHistoryRequest(input *DescribeSpotPriceHistoryInp // DescribeSpotPriceHistory API operation for Amazon Elastic Compute Cloud. // // Describes the Spot price history. For more information, see Spot Instance -// Pricing History (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html) +// pricing history (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html) // in the Amazon EC2 User Guide for Linux Instances. // // When you specify a start and end time, this operation returns the prices @@ -30156,7 +30156,7 @@ func (c *EC2) ModifyAvailabilityZoneGroupRequest(input *ModifyAvailabilityZoneGr // // Enables or disables an Availability Zone group for your account. // -// Use describe-availability-zones (https://docs.aws.amazon.com/AWSEC2ApiDocReef/build/server-root/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html) +// Use DescribeAvailabilityZones (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html) // to view the value for GroupName. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -35497,7 +35497,7 @@ func (c *EC2) RequestSpotFleetRequest(input *RequestSpotFleetInput) (req *reques // the fleet. You cannot tag other resource types in a Spot Fleet request because // only the spot-fleet-request and instance resource types are supported. // -// For more information, see Spot Fleet Requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html) +// For more information, see Spot Fleet requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html) // in the Amazon EC2 User Guide for Linux Instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -35574,7 +35574,7 @@ func (c *EC2) RequestSpotInstancesRequest(input *RequestSpotInstancesInput) (req // // Creates a Spot Instance request. // -// For more information, see Spot Instance Requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html) +// For more information, see Spot Instance requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html) // in the Amazon EC2 User Guide for Linux Instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -41406,7 +41406,7 @@ func (s AuthorizeSecurityGroupIngressOutput) GoString() string { return s.String() } -// Describes an Availability Zone or Local Zone. +// Describes a Zone. type AvailabilityZone struct { _ struct{} `type:"structure"` @@ -41415,7 +41415,7 @@ type AvailabilityZone struct { // For Local Zones, the name of the associated group, for example us-west-2-lax-1. GroupName *string `locationName:"groupName" type:"string"` - // Any messages about the Availability Zone or Local Zone. + // Any messages about the Zone. Messages []*AvailabilityZoneMessage `locationName:"messageSet" locationNameList:"item" type:"list"` // The name of the location from which the address is advertised. @@ -41427,17 +41427,28 @@ type AvailabilityZone struct { // are opted-in, and not-opted-in. OptInStatus *string `locationName:"optInStatus" type:"string" enum:"AvailabilityZoneOptInStatus"` + // The ID of the zone that handles some of the Local Zone control plane operations, + // such as API calls. + ParentZoneId *string `locationName:"parentZoneId" type:"string"` + + // The name of the zone that handles some of the Local Zone control plane operations, + // such as API calls. + ParentZoneName *string `locationName:"parentZoneName" type:"string"` + // The name of the Region. RegionName *string `locationName:"regionName" type:"string"` - // The state of the Availability Zone or Local Zone. + // The state of the Zone. State *string `locationName:"zoneState" type:"string" enum:"AvailabilityZoneState"` - // The ID of the Availability Zone or Local Zone. + // The ID of the Zone. ZoneId *string `locationName:"zoneId" type:"string"` - // The name of the Availability Zone or Local Zone. + // The name of the Zone. ZoneName *string `locationName:"zoneName" type:"string"` + + // The type of zone. The valid values are availability-zone and local-zone. + ZoneType *string `locationName:"zoneType" type:"string"` } // String returns the string representation @@ -41474,6 +41485,18 @@ func (s *AvailabilityZone) SetOptInStatus(v string) *AvailabilityZone { return s } +// SetParentZoneId sets the ParentZoneId field's value. +func (s *AvailabilityZone) SetParentZoneId(v string) *AvailabilityZone { + s.ParentZoneId = &v + return s +} + +// SetParentZoneName sets the ParentZoneName field's value. +func (s *AvailabilityZone) SetParentZoneName(v string) *AvailabilityZone { + s.ParentZoneName = &v + return s +} + // SetRegionName sets the RegionName field's value. func (s *AvailabilityZone) SetRegionName(v string) *AvailabilityZone { s.RegionName = &v @@ -41498,11 +41521,17 @@ func (s *AvailabilityZone) SetZoneName(v string) *AvailabilityZone { return s } -// Describes a message about an Availability Zone or Local Zone. +// SetZoneType sets the ZoneType field's value. +func (s *AvailabilityZone) SetZoneType(v string) *AvailabilityZone { + s.ZoneType = &v + return s +} + +// Describes a message about a Zone. type AvailabilityZoneMessage struct { _ struct{} `type:"structure"` - // The message about the Availability Zone or Local Zone. + // The message about the Zone. Message *string `locationName:"message" type:"string"` } @@ -42995,6 +43024,8 @@ type CapacityReservationSpecification struct { // // * none - The instance avoids running in a Capacity Reservation even if // one is available. The instance runs as an On-Demand Instance. + // + // When CapacityReservationPreference is not specified, it defaults to open. CapacityReservationPreference *string `type:"string" enum:"CapacityReservationPreference"` // Information about the target Capacity Reservation. @@ -46010,6 +46041,9 @@ type CreateDhcpOptionsInput struct { // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` + + // The tags to assign to the DHCP option. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } // String returns the string representation @@ -46047,6 +46081,12 @@ func (s *CreateDhcpOptionsInput) SetDryRun(v bool) *CreateDhcpOptionsInput { return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateDhcpOptionsInput) SetTagSpecifications(v []*TagSpecification) *CreateDhcpOptionsInput { + s.TagSpecifications = v + return s +} + type CreateDhcpOptionsOutput struct { _ struct{} `type:"structure"` @@ -46083,6 +46123,9 @@ type CreateEgressOnlyInternetGatewayInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` + // The tags to assign to the egress-only internet gateway. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // The ID of the VPC for which to create the egress-only internet gateway. // // VpcId is a required field @@ -46124,6 +46167,12 @@ func (s *CreateEgressOnlyInternetGatewayInput) SetDryRun(v bool) *CreateEgressOn return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateEgressOnlyInternetGatewayInput) SetTagSpecifications(v []*TagSpecification) *CreateEgressOnlyInternetGatewayInput { + s.TagSpecifications = v + return s +} + // SetVpcId sets the VpcId field's value. func (s *CreateEgressOnlyInternetGatewayInput) SetVpcId(v string) *CreateEgressOnlyInternetGatewayInput { s.VpcId = &v @@ -47112,6 +47161,9 @@ type CreateInternetGatewayInput struct { // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` + + // The tags to assign to the internet gateway. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } // String returns the string representation @@ -47130,6 +47182,12 @@ func (s *CreateInternetGatewayInput) SetDryRun(v bool) *CreateInternetGatewayInp return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateInternetGatewayInput) SetTagSpecifications(v []*TagSpecification) *CreateInternetGatewayInput { + s.TagSpecifications = v + return s +} + type CreateInternetGatewayOutput struct { _ struct{} `type:"structure"` @@ -48199,6 +48257,9 @@ type CreateNetworkAclInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` + // The tags to assign to the network ACL. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // The ID of the VPC. // // VpcId is a required field @@ -48234,6 +48295,12 @@ func (s *CreateNetworkAclInput) SetDryRun(v bool) *CreateNetworkAclInput { return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateNetworkAclInput) SetTagSpecifications(v []*TagSpecification) *CreateNetworkAclInput { + s.TagSpecifications = v + return s +} + // SetVpcId sets the VpcId field's value. func (s *CreateNetworkAclInput) SetVpcId(v string) *CreateNetworkAclInput { s.VpcId = &v @@ -48320,6 +48387,9 @@ type CreateNetworkInterfaceInput struct { // // SubnetId is a required field SubnetId *string `locationName:"subnetId" type:"string" required:"true"` + + // The tags to apply to the new network interface. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } // String returns the string representation @@ -48405,6 +48475,12 @@ func (s *CreateNetworkInterfaceInput) SetSubnetId(v string) *CreateNetworkInterf return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateNetworkInterfaceInput) SetTagSpecifications(v []*TagSpecification) *CreateNetworkInterfaceInput { + s.TagSpecifications = v + return s +} + // Contains the output of CreateNetworkInterface. type CreateNetworkInterfaceOutput struct { _ struct{} `type:"structure"` @@ -49017,6 +49093,9 @@ type CreateSecurityGroupInput struct { // GroupName is a required field GroupName *string `type:"string" required:"true"` + // The tags to assign to the security group. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // [EC2-VPC] The ID of the VPC. Required for EC2-VPC. VpcId *string `type:"string"` } @@ -49065,6 +49144,12 @@ func (s *CreateSecurityGroupInput) SetGroupName(v string) *CreateSecurityGroupIn return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateSecurityGroupInput) SetTagSpecifications(v []*TagSpecification) *CreateSecurityGroupInput { + s.TagSpecifications = v + return s +} + // SetVpcId sets the VpcId field's value. func (s *CreateSecurityGroupInput) SetVpcId(v string) *CreateSecurityGroupInput { s.VpcId = &v @@ -49076,6 +49161,9 @@ type CreateSecurityGroupOutput struct { // The ID of the security group. GroupId *string `locationName:"groupId" type:"string"` + + // The tags assigned to the security group. + Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` } // String returns the string representation @@ -49094,6 +49182,12 @@ func (s *CreateSecurityGroupOutput) SetGroupId(v string) *CreateSecurityGroupOut return s } +// SetTags sets the Tags field's value. +func (s *CreateSecurityGroupOutput) SetTags(v []*Tag) *CreateSecurityGroupOutput { + s.Tags = v + return s +} + type CreateSnapshotInput struct { _ struct{} `type:"structure"` @@ -49387,6 +49481,9 @@ type CreateSubnetInput struct { // ARN, you must also specify the Availability Zone of the Outpost subnet. OutpostArn *string `type:"string"` + // The tags to assign to the subnet. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // The ID of the VPC. // // VpcId is a required field @@ -49455,6 +49552,12 @@ func (s *CreateSubnetInput) SetOutpostArn(v string) *CreateSubnetInput { return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateSubnetInput) SetTagSpecifications(v []*TagSpecification) *CreateSubnetInput { + s.TagSpecifications = v + return s +} + // SetVpcId sets the VpcId field's value. func (s *CreateSubnetInput) SetVpcId(v string) *CreateSubnetInput { s.VpcId = &v @@ -51507,6 +51610,9 @@ type CreateVpcInput struct { // The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block. Ipv6Pool *string `type:"string"` + + // The tags to assign to the VPC. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } // String returns the string representation @@ -51574,6 +51680,12 @@ func (s *CreateVpcInput) SetIpv6Pool(v string) *CreateVpcInput { return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateVpcInput) SetTagSpecifications(v []*TagSpecification) *CreateVpcInput { + s.TagSpecifications = v + return s +} + type CreateVpcOutput struct { _ struct{} `type:"structure"` @@ -56512,12 +56624,11 @@ type DescribeAvailabilityZonesInput struct { // Zones, use the name of the group associated with the Local Zone (for example, // us-west-2-lax-1). // - // * message - The Availability Zone or Local Zone message. + // * message - The Zone message. // // * opt-in-status - The opt in status (opted-in, and not-opted-in | opt-in-not-required). // - // * region-name - The name of the Region for the Availability Zone or Local - // Zone (for example, us-east-1). + // * region-name - The name of the Region for the Zone (for example, us-east-1). // // * state - The state of the Availability Zone or Local Zone (available // | information | impaired | unavailable). @@ -56529,10 +56640,10 @@ type DescribeAvailabilityZonesInput struct { // or the Local Zone (for example, use us-west-2-lax-1a). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` - // The IDs of the Availability Zones and Local Zones. + // The IDs of the Zones. ZoneIds []*string `locationName:"ZoneId" locationNameList:"ZoneId" type:"list"` - // The names of the Availability Zones and Local Zones. + // The names of the Zones. ZoneNames []*string `locationName:"ZoneName" locationNameList:"ZoneName" type:"list"` } @@ -56579,7 +56690,7 @@ func (s *DescribeAvailabilityZonesInput) SetZoneNames(v []*string) *DescribeAvai type DescribeAvailabilityZonesOutput struct { _ struct{} `type:"structure"` - // Information about the Availability Zones and Local Zones. + // Information about the Zones. AvailabilityZones []*AvailabilityZone `locationName:"availabilityZoneInfo" locationNameList:"item" type:"list"` } @@ -66770,7 +66881,7 @@ type DescribeSpotInstanceRequestsInput struct { // * state - The state of the Spot Instance request (open | active | closed // | cancelled | failed). Spot request status information can help you track // your Amazon EC2 Spot Instance requests. For more information, see Spot - // Request Status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) + // request status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) // in the Amazon EC2 User Guide for Linux Instances. // // * status-code - The short code describing the most recent evaluation of @@ -97547,6 +97658,12 @@ type RequestSpotInstancesInput struct { // The default is the On-Demand price. SpotPrice *string `locationName:"spotPrice" type:"string"` + // The key-value pair for tagging the Spot Instance request on creation. The + // value for ResourceType must be spot-instances-request, otherwise the Spot + // Instance request fails. To tag the Spot Instance request after it has been + // created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html). + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // The Spot Instance request type. // // Default: one-time @@ -97650,6 +97767,12 @@ func (s *RequestSpotInstancesInput) SetSpotPrice(v string) *RequestSpotInstances return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *RequestSpotInstancesInput) SetTagSpecifications(v []*TagSpecification) *RequestSpotInstancesInput { + s.TagSpecifications = v + return s +} + // SetType sets the Type field's value. func (s *RequestSpotInstancesInput) SetType(v string) *RequestSpotInstancesInput { s.Type = &v @@ -104003,7 +104126,7 @@ type SpotFleetRequestConfigData struct { // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that grants the Spot Fleet the permission to request, launch, terminate, - // and tag instances on your behalf. For more information, see Spot Fleet Prerequisites + // and tag instances on your behalf. For more information, see Spot Fleet prerequisites // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html#spot-fleet-prerequisites) // in the Amazon EC2 User Guide for Linux Instances. Spot Fleet can terminate // Spot Instances on your behalf when you cancel its Spot Fleet request using @@ -104395,7 +104518,7 @@ type SpotInstanceRequest struct { SpotPrice *string `locationName:"spotPrice" type:"string"` // The state of the Spot Instance request. Spot status information helps track - // your Spot Instance requests. For more information, see Spot Status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) + // your Spot Instance requests. For more information, see Spot status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) // in the Amazon EC2 User Guide for Linux Instances. State *string `locationName:"state" type:"string" enum:"SpotInstanceState"` @@ -104581,7 +104704,7 @@ func (s *SpotInstanceStateFault) SetMessage(v string) *SpotInstanceStateFault { type SpotInstanceStatus struct { _ struct{} `type:"structure"` - // The status code. For a list of status codes, see Spot Status Codes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html#spot-instance-bid-status-understand) + // The status code. For a list of status codes, see Spot status codes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html#spot-instance-bid-status-understand) // in the Amazon EC2 User Guide for Linux Instances. Code *string `locationName:"code" type:"string"` @@ -105942,12 +106065,14 @@ type TagSpecification struct { // The type of resource to tag. Currently, the resource types that support tagging // on creation are: capacity-reservation | client-vpn-endpoint | dedicated-host - // | fleet | fpga-image | host-reservation | instance | ipv4pool-ec2 | ipv6pool-ec2 - // | key-pair | launch-template | natgateway | spot-fleet-request | placement-group - // | prefix-list | snapshot | traffic-mirror-filter | traffic-mirror-session - // | traffic-mirror-target | transit-gateway | transit-gateway-attachment | - // transit-gateway-route-table | vpc-endpoint (for interface and gateway endpoints) - // | vpc-endpoint-service (for AWS PrivateLink) | volume | vpc-flow-log. + // | dhcp-options | export-image-task | export-instance-task | fleet | fpga-image + // | host-reservation | import-image-task | import-snapshot-task | instance + // | internet-gateway | ipv4pool-ec2 | ipv6pool-ec2 | key-pair | launch-template + // | placement-group | prefix-list | launch-template | natgateway | network-acl + // | security-group | spot-fleet-request | snapshot | subnet | traffic-mirror-filter + // | traffic-mirror-session | traffic-mirror-target | transit-gateway | transit-gateway-attachment + // | transit-gateway-route-table | volume |vpc | vpc-endpoint (for interface + // and gateway endpoints) | vpc-endpoint-service (for AWS PrivateLink) | vpc-flow-log. // // To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html). ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go b/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go index 12e2e1bd6a6..580ca1a51a8 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go @@ -2184,6 +2184,10 @@ func (c *ECR) PutImageRequest(input *PutImageInput) (req *request.Request, outpu // The specified image is tagged with a tag that already exists. The repository // is configured for tag immutability. // +// * ImageDigestDoesNotMatchException +// The specified image digest does not match the digest that Amazon ECR calculated +// for the image. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutImage func (c *ECR) PutImage(input *PutImageInput) (*PutImageOutput, error) { req, out := c.PutImageRequest(input) @@ -5280,6 +5284,63 @@ func (s *ImageDetail) SetRepositoryName(v string) *ImageDetail { return s } +// The specified image digest does not match the digest that Amazon ECR calculated +// for the image. +type ImageDigestDoesNotMatchException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s ImageDigestDoesNotMatchException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ImageDigestDoesNotMatchException) GoString() string { + return s.String() +} + +func newErrorImageDigestDoesNotMatchException(v protocol.ResponseMetadata) error { + return &ImageDigestDoesNotMatchException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ImageDigestDoesNotMatchException) Code() string { + return "ImageDigestDoesNotMatchException" +} + +// Message returns the exception's message. +func (s *ImageDigestDoesNotMatchException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ImageDigestDoesNotMatchException) OrigErr() error { + return nil +} + +func (s *ImageDigestDoesNotMatchException) 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 *ImageDigestDoesNotMatchException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ImageDigestDoesNotMatchException) RequestID() string { + return s.RespMetadata.RequestID +} + // An object representing an Amazon ECR image failure. type ImageFailure struct { _ struct{} `type:"structure"` @@ -6929,6 +6990,9 @@ func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput type PutImageInput struct { _ struct{} `type:"structure"` + // The image digest of the image manifest corresponding to the image. + ImageDigest *string `locationName:"imageDigest" type:"string"` + // The image manifest corresponding to the image to be uploaded. // // ImageManifest is a required field @@ -6989,6 +7053,12 @@ func (s *PutImageInput) Validate() error { return nil } +// SetImageDigest sets the ImageDigest field's value. +func (s *PutImageInput) SetImageDigest(v string) *PutImageInput { + s.ImageDigest = &v + return s +} + // SetImageManifest sets the ImageManifest field's value. func (s *PutImageInput) SetImageManifest(v string) *PutImageInput { s.ImageManifest = &v diff --git a/vendor/github.com/aws/aws-sdk-go/service/ecr/errors.go b/vendor/github.com/aws/aws-sdk-go/service/ecr/errors.go index bf44256bd1c..590a1134fff 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ecr/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ecr/errors.go @@ -21,6 +21,13 @@ const ( // the manifest or image tag after the last push. ErrCodeImageAlreadyExistsException = "ImageAlreadyExistsException" + // ErrCodeImageDigestDoesNotMatchException for service response error code + // "ImageDigestDoesNotMatchException". + // + // The specified image digest does not match the digest that Amazon ECR calculated + // for the image. + ErrCodeImageDigestDoesNotMatchException = "ImageDigestDoesNotMatchException" + // ErrCodeImageNotFoundException for service response error code // "ImageNotFoundException". // @@ -186,6 +193,7 @@ const ( var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "EmptyUploadException": newErrorEmptyUploadException, "ImageAlreadyExistsException": newErrorImageAlreadyExistsException, + "ImageDigestDoesNotMatchException": newErrorImageDigestDoesNotMatchException, "ImageNotFoundException": newErrorImageNotFoundException, "ImageTagAlreadyExistsException": newErrorImageTagAlreadyExistsException, "InvalidLayerException": newErrorInvalidLayerException, diff --git a/vendor/github.com/aws/aws-sdk-go/service/efs/api.go b/vendor/github.com/aws/aws-sdk-go/service/efs/api.go index c2bb5354400..f194fbcefb7 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/efs/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/efs/api.go @@ -85,6 +85,9 @@ func (c *EFS) CreateAccessPointRequest(input *CreateAccessPointInput) (req *requ // Returned if the access point you are trying to create already exists, with // the creation token you provided in the request. // +// * IncorrectFileSystemLifeCycleState +// Returned if the file system's lifecycle state is not "available". +// // * InternalServerError // Returned if an error occurred on the server side. // @@ -1248,6 +1251,101 @@ func (c *EFS) DescribeAccessPointsPagesWithContext(ctx aws.Context, input *Descr return p.Err() } +const opDescribeBackupPolicy = "DescribeBackupPolicy" + +// DescribeBackupPolicyRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBackupPolicy 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 DescribeBackupPolicy for more information on using the DescribeBackupPolicy +// 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 DescribeBackupPolicyRequest method. +// req, resp := client.DescribeBackupPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeBackupPolicy +func (c *EFS) DescribeBackupPolicyRequest(input *DescribeBackupPolicyInput) (req *request.Request, output *DescribeBackupPolicyOutput) { + op := &request.Operation{ + Name: opDescribeBackupPolicy, + HTTPMethod: "GET", + HTTPPath: "/2015-02-01/file-systems/{FileSystemId}/backup-policy", + } + + if input == nil { + input = &DescribeBackupPolicyInput{} + } + + output = &DescribeBackupPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeBackupPolicy API operation for Amazon Elastic File System. +// +// Returns the backup policy for the specified EFS 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 Elastic File System's +// API operation DescribeBackupPolicy for usage and error information. +// +// Returned Error Types: +// * BadRequest +// Returned if the request is malformed or contains an error such as an invalid +// parameter value or a missing required parameter. +// +// * FileSystemNotFound +// Returned if the specified FileSystemId value doesn't exist in the requester's +// AWS account. +// +// * InternalServerError +// Returned if an error occurred on the server side. +// +// * PolicyNotFound +// Returned if the default file system policy is in effect for the EFS file +// system specified. +// +// * ValidationException +// Returned if the AWS Backup service is not available in the region that 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) { + req, out := c.DescribeBackupPolicyRequest(input) + return out, req.Send() +} + +// DescribeBackupPolicyWithContext is the same as DescribeBackupPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeBackupPolicy 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 *EFS) DescribeBackupPolicyWithContext(ctx aws.Context, input *DescribeBackupPolicyInput, opts ...request.Option) (*DescribeBackupPolicyOutput, error) { + req, out := c.DescribeBackupPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeFileSystemPolicy = "DescribeFileSystemPolicy" // DescribeFileSystemPolicyRequest generates a "aws/request.Request" representing the @@ -2231,6 +2329,101 @@ func (c *EFS) ModifyMountTargetSecurityGroupsWithContext(ctx aws.Context, input return out, req.Send() } +const opPutBackupPolicy = "PutBackupPolicy" + +// PutBackupPolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutBackupPolicy 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 PutBackupPolicy for more information on using the PutBackupPolicy +// 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 PutBackupPolicyRequest method. +// req, resp := client.PutBackupPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutBackupPolicy +func (c *EFS) PutBackupPolicyRequest(input *PutBackupPolicyInput) (req *request.Request, output *PutBackupPolicyOutput) { + op := &request.Operation{ + Name: opPutBackupPolicy, + HTTPMethod: "PUT", + HTTPPath: "/2015-02-01/file-systems/{FileSystemId}/backup-policy", + } + + if input == nil { + input = &PutBackupPolicyInput{} + } + + output = &PutBackupPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutBackupPolicy API operation for Amazon Elastic File System. +// +// Updates the file system's backup policy. Use this action to start or stop +// automatic backups of 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 Elastic File System's +// API operation PutBackupPolicy for usage and error information. +// +// Returned Error Types: +// * BadRequest +// Returned if the request is malformed or contains an error such as an invalid +// parameter value or a missing required parameter. +// +// * FileSystemNotFound +// Returned if the specified FileSystemId value doesn't exist in the requester's +// AWS account. +// +// * IncorrectFileSystemLifeCycleState +// Returned if the file system's lifecycle state is not "available". +// +// * InternalServerError +// Returned if an error occurred on the server side. +// +// * ValidationException +// Returned if the AWS Backup service is not available in the region that 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) { + req, out := c.PutBackupPolicyRequest(input) + return out, req.Send() +} + +// PutBackupPolicyWithContext is the same as PutBackupPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutBackupPolicy 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 *EFS) PutBackupPolicyWithContext(ctx aws.Context, input *PutBackupPolicyInput, opts ...request.Option) (*PutBackupPolicyOutput, error) { + req, out := c.PutBackupPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opPutFileSystemPolicy = "PutFileSystemPolicy" // PutFileSystemPolicyRequest generates a "aws/request.Request" representing the @@ -3037,6 +3230,54 @@ func (s *AccessPointNotFound) RequestID() string { return s.RespMetadata.RequestID } +// The backup policy for the file system, showing the curent status. If ENABLED, +// the file system is being backed up. +type BackupPolicy struct { + _ struct{} `type:"structure"` + + // Describes the status of the file system's backup policy. + // + // * ENABLED - EFS is automatically backing up the file system. + // + // * ENABLING - EFS is turning on automatic backups for the file system. + // + // * DISABLED - automatic back ups are turned off for the file system. + // + // * DISABLED - EFS is turning off automatic backups for the file system. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"Status"` +} + +// String returns the string representation +func (s BackupPolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BackupPolicy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BackupPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BackupPolicy"} + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStatus sets the Status field's value. +func (s *BackupPolicy) SetStatus(v string) *BackupPolicy { + s.Status = &v + return s +} + // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. type BadRequest struct { @@ -3343,7 +3584,7 @@ type CreateFileSystemInput struct { // // EFS accepts only symmetric CMKs. You cannot use asymmetric CMKs with EFS // file systems. - KmsKeyId *string `min:"1" type:"string"` + KmsKeyId *string `type:"string"` // The performance mode of the file system. We recommend generalPurpose performance // mode for most file systems. File systems using the maxIO performance mode @@ -3392,9 +3633,6 @@ func (s *CreateFileSystemInput) Validate() error { if s.CreationToken != nil && len(*s.CreationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("CreationToken", 1)) } - if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) - } if s.ProvisionedThroughputInMibps != nil && *s.ProvisionedThroughputInMibps < 1 { invalidParams.Add(request.NewErrParamMinValue("ProvisionedThroughputInMibps", 1)) } @@ -3466,7 +3704,7 @@ type CreateMountTargetInput struct { FileSystemId *string `type:"string" required:"true"` // Valid IPv4 address within the address range of the specified subnet. - IpAddress *string `type:"string"` + IpAddress *string `min:"7" type:"string"` // Up to five VPC security group IDs, of the form sg-xxxxxxxx. These must be // for the same VPC as subnet specified. @@ -3475,7 +3713,7 @@ type CreateMountTargetInput struct { // The ID of the subnet to add the mount target in. // // SubnetId is a required field - SubnetId *string `type:"string" required:"true"` + SubnetId *string `min:"15" type:"string" required:"true"` } // String returns the string representation @@ -3494,9 +3732,15 @@ func (s *CreateMountTargetInput) Validate() error { if s.FileSystemId == nil { invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } + if s.IpAddress != nil && len(*s.IpAddress) < 7 { + invalidParams.Add(request.NewErrParamMinLen("IpAddress", 7)) + } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } + if s.SubnetId != nil && len(*s.SubnetId) < 15 { + invalidParams.Add(request.NewErrParamMinLen("SubnetId", 15)) + } if invalidParams.Len() > 0 { return invalidParams @@ -3856,7 +4100,7 @@ type DeleteMountTargetInput struct { // The ID of the mount target to delete (String). // // MountTargetId is a required field - MountTargetId *string `location:"uri" locationName:"MountTargetId" type:"string" required:"true"` + MountTargetId *string `location:"uri" locationName:"MountTargetId" min:"13" type:"string" required:"true"` } // String returns the string representation @@ -3875,8 +4119,8 @@ func (s *DeleteMountTargetInput) Validate() error { if s.MountTargetId == nil { invalidParams.Add(request.NewErrParamRequired("MountTargetId")) } - if s.MountTargetId != nil && len(*s.MountTargetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 1)) + if s.MountTargetId != nil && len(*s.MountTargetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 13)) } if invalidParams.Len() > 0 { @@ -4139,6 +4383,71 @@ func (s *DescribeAccessPointsOutput) SetNextToken(v string) *DescribeAccessPoint return s } +type DescribeBackupPolicyInput struct { + _ struct{} `type:"structure"` + + // Specifies which EFS file system to retrieve the BackupPolicy for. + // + // FileSystemId is a required field + FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeBackupPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeBackupPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeBackupPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBackupPolicyInput"} + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *DescribeBackupPolicyInput) SetFileSystemId(v string) *DescribeBackupPolicyInput { + s.FileSystemId = &v + return s +} + +type DescribeBackupPolicyOutput struct { + _ struct{} `type:"structure"` + + // Describes the file system's backup policy, indicating whether automatic backups + // are turned on or off.. + BackupPolicy *BackupPolicy `type:"structure"` +} + +// String returns the string representation +func (s DescribeBackupPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeBackupPolicyOutput) GoString() string { + return s.String() +} + +// SetBackupPolicy sets the BackupPolicy field's value. +func (s *DescribeBackupPolicyOutput) SetBackupPolicy(v *BackupPolicy) *DescribeBackupPolicyOutput { + s.BackupPolicy = v + return s +} + type DescribeFileSystemPolicyInput struct { _ struct{} `type:"structure"` @@ -4226,7 +4535,7 @@ type DescribeFileSystemsInput struct { // (Optional) Opaque pagination token returned from a previous DescribeFileSystems // operation (String). If present, specifies to continue the list from where // the returning call had left off. - Marker *string `location:"querystring" locationName:"Marker" type:"string"` + Marker *string `location:"querystring" locationName:"Marker" min:"1" type:"string"` // (Optional) Specifies the maximum number of file systems to return in the // response (integer). This number is automatically set to 100. The response @@ -4250,6 +4559,9 @@ func (s *DescribeFileSystemsInput) Validate() error { if s.CreationToken != nil && len(*s.CreationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("CreationToken", 1)) } + if s.Marker != nil && len(*s.Marker) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) + } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } @@ -4291,11 +4603,11 @@ type DescribeFileSystemsOutput struct { FileSystems []*FileSystemDescription `type:"list"` // Present if provided by caller in the request (String). - Marker *string `type:"string"` + Marker *string `min:"1" type:"string"` // Present if there are more file systems than returned in the response (String). // You can use the NextMarker in the subsequent request to fetch the descriptions. - NextMarker *string `type:"string"` + NextMarker *string `min:"1" type:"string"` } // String returns the string representation @@ -4398,7 +4710,7 @@ type DescribeMountTargetSecurityGroupsInput struct { // The ID of the mount target whose security groups you want to retrieve. // // MountTargetId is a required field - MountTargetId *string `location:"uri" locationName:"MountTargetId" type:"string" required:"true"` + MountTargetId *string `location:"uri" locationName:"MountTargetId" min:"13" type:"string" required:"true"` } // String returns the string representation @@ -4417,8 +4729,8 @@ func (s *DescribeMountTargetSecurityGroupsInput) Validate() error { if s.MountTargetId == nil { invalidParams.Add(request.NewErrParamRequired("MountTargetId")) } - if s.MountTargetId != nil && len(*s.MountTargetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 1)) + if s.MountTargetId != nil && len(*s.MountTargetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 13)) } if invalidParams.Len() > 0 { @@ -4475,7 +4787,7 @@ type DescribeMountTargetsInput struct { // (Optional) Opaque pagination token returned from a previous DescribeMountTargets // operation (String). If present, it specifies to continue the list from where // the previous returning call left off. - Marker *string `location:"querystring" locationName:"Marker" type:"string"` + Marker *string `location:"querystring" locationName:"Marker" min:"1" type:"string"` // (Optional) Maximum number of mount targets to return in the response. Currently, // this number is automatically set to 10, and other values are ignored. The @@ -4485,7 +4797,7 @@ type DescribeMountTargetsInput struct { // (Optional) ID of the mount target that you want to have described (String). // It must be included in your request if FileSystemId is not included. Accepts // either a mount target ID or ARN as input. - MountTargetId *string `location:"querystring" locationName:"MountTargetId" type:"string"` + MountTargetId *string `location:"querystring" locationName:"MountTargetId" min:"13" type:"string"` } // String returns the string representation @@ -4501,9 +4813,15 @@ func (s DescribeMountTargetsInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMountTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMountTargetsInput"} + if s.Marker != nil && len(*s.Marker) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) + } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } + if s.MountTargetId != nil && len(*s.MountTargetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 13)) + } if invalidParams.Len() > 0 { return invalidParams @@ -4546,7 +4864,7 @@ type DescribeMountTargetsOutput struct { // If the request included the Marker, the response returns that value in this // field. - Marker *string `type:"string"` + Marker *string `min:"1" type:"string"` // Returns the file system's mount targets as an array of MountTargetDescription // objects. @@ -4555,7 +4873,7 @@ type DescribeMountTargetsOutput struct { // If a value is present, there are more mount targets to return. In a subsequent // request, you can provide Marker in your request with this value to retrieve // the next set of mount targets. - NextMarker *string `type:"string"` + NextMarker *string `min:"1" type:"string"` } // String returns the string representation @@ -4597,7 +4915,7 @@ type DescribeTagsInput struct { // (Optional) An opaque pagination token returned from a previous DescribeTags // operation (String). If present, it specifies to continue the list from where // the previous call left off. - Marker *string `location:"querystring" locationName:"Marker" type:"string"` + Marker *string `location:"querystring" locationName:"Marker" min:"1" type:"string"` // (Optional) The maximum number of file system tags to return in the response. // Currently, this number is automatically set to 100, and other values are @@ -4625,6 +4943,9 @@ func (s *DescribeTagsInput) Validate() error { if s.FileSystemId != nil && len(*s.FileSystemId) < 1 { invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 1)) } + if s.Marker != nil && len(*s.Marker) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) + } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } @@ -4658,12 +4979,12 @@ type DescribeTagsOutput struct { // If the request included a Marker, the response returns that value in this // field. - Marker *string `type:"string"` + Marker *string `min:"1" type:"string"` // If a value is present, there are more tags to return. In a subsequent request, // you can provide the value of NextMarker as the value of the Marker parameter // in your next request to retrieve the next set of tags. - NextMarker *string `type:"string"` + NextMarker *string `min:"1" type:"string"` // Returns tags associated with the file system as an array of Tag objects. // @@ -4779,6 +5100,10 @@ type FileSystemDescription struct { // A Boolean value that, if true, indicates that the file system is encrypted. Encrypted *bool `type:"boolean"` + // The Amazon Resource Name (ARN) for the EFS file system, in the format arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id + // . Example with sample data: arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 + FileSystemArn *string `type:"string"` + // The ID of the file system, assigned by Amazon EFS. // // FileSystemId is a required field @@ -4786,7 +5111,7 @@ type FileSystemDescription struct { // The ID of an AWS Key Management Service (AWS KMS) customer master key (CMK) // that was used to protect the encrypted file system. - KmsKeyId *string `min:"1" type:"string"` + KmsKeyId *string `type:"string"` // The lifecycle phase of the file system. // @@ -4878,6 +5203,12 @@ func (s *FileSystemDescription) SetEncrypted(v bool) *FileSystemDescription { return s } +// SetFileSystemArn sets the FileSystemArn field's value. +func (s *FileSystemDescription) SetFileSystemArn(v string) *FileSystemDescription { + s.FileSystemArn = &v + return s +} + // SetFileSystemId sets the FileSystemId field's value. func (s *FileSystemDescription) SetFileSystemId(v string) *FileSystemDescription { s.FileSystemId = &v @@ -5677,7 +6008,7 @@ type ModifyMountTargetSecurityGroupsInput struct { // The ID of the mount target whose security groups you want to modify. // // MountTargetId is a required field - MountTargetId *string `location:"uri" locationName:"MountTargetId" type:"string" required:"true"` + MountTargetId *string `location:"uri" locationName:"MountTargetId" min:"13" type:"string" required:"true"` // An array of up to five VPC security group IDs. SecurityGroups []*string `type:"list"` @@ -5699,8 +6030,8 @@ func (s *ModifyMountTargetSecurityGroupsInput) Validate() error { if s.MountTargetId == nil { invalidParams.Add(request.NewErrParamRequired("MountTargetId")) } - if s.MountTargetId != nil && len(*s.MountTargetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 1)) + if s.MountTargetId != nil && len(*s.MountTargetId) < 13 { + invalidParams.Add(request.NewErrParamMinLen("MountTargetId", 13)) } if invalidParams.Len() > 0 { @@ -5816,7 +6147,7 @@ type MountTargetDescription struct { FileSystemId *string `type:"string" required:"true"` // Address at which the file system can be mounted by using the mount target. - IpAddress *string `type:"string"` + IpAddress *string `min:"7" type:"string"` // Lifecycle state of the mount target. // @@ -5826,7 +6157,7 @@ type MountTargetDescription struct { // System-assigned mount target ID. // // MountTargetId is a required field - MountTargetId *string `type:"string" required:"true"` + MountTargetId *string `min:"13" type:"string" required:"true"` // The ID of the network interface that Amazon EFS created when it created the // mount target. @@ -5838,7 +6169,10 @@ type MountTargetDescription struct { // The ID of the mount target's subnet. // // SubnetId is a required field - SubnetId *string `type:"string" required:"true"` + SubnetId *string `min:"15" type:"string" required:"true"` + + // The Virtual Private Cloud (VPC) ID that the mount target is configured in. + VpcId *string `type:"string"` } // String returns the string representation @@ -5905,6 +6239,12 @@ func (s *MountTargetDescription) SetSubnetId(v string) *MountTargetDescription { return s } +// SetVpcId sets the VpcId field's value. +func (s *MountTargetDescription) SetVpcId(v string) *MountTargetDescription { + s.VpcId = &v + return s +} + // Returned if there is no mount target with the specified ID found in the caller's // account. type MountTargetNotFound struct { @@ -6214,6 +6554,90 @@ func (s *PosixUser) SetUid(v int64) *PosixUser { return s } +type PutBackupPolicyInput struct { + _ struct{} `type:"structure"` + + // The backup policy included in the PutBackupPolicy request. + // + // BackupPolicy is a required field + BackupPolicy *BackupPolicy `type:"structure" required:"true"` + + // Specifies which EFS file system to update the backup policy for. + // + // FileSystemId is a required field + FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` +} + +// String returns the string representation +func (s PutBackupPolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutBackupPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutBackupPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutBackupPolicyInput"} + if s.BackupPolicy == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPolicy")) + } + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 1)) + } + if s.BackupPolicy != nil { + if err := s.BackupPolicy.Validate(); err != nil { + invalidParams.AddNested("BackupPolicy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupPolicy sets the BackupPolicy field's value. +func (s *PutBackupPolicyInput) SetBackupPolicy(v *BackupPolicy) *PutBackupPolicyInput { + s.BackupPolicy = v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *PutBackupPolicyInput) SetFileSystemId(v string) *PutBackupPolicyInput { + s.FileSystemId = &v + return s +} + +type PutBackupPolicyOutput struct { + _ struct{} `type:"structure"` + + // Describes the file system's backup policy, indicating whether automatic backups + // are turned on or off.. + BackupPolicy *BackupPolicy `type:"structure"` +} + +// String returns the string representation +func (s PutBackupPolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutBackupPolicyOutput) GoString() string { + return s.String() +} + +// SetBackupPolicy sets the BackupPolicy field's value. +func (s *PutBackupPolicyOutput) SetBackupPolicy(v *BackupPolicy) *PutBackupPolicyOutput { + s.BackupPolicy = v + return s +} + type PutFileSystemPolicyInput struct { _ struct{} `type:"structure"` @@ -7119,6 +7543,10 @@ type UpdateFileSystemOutput struct { // A Boolean value that, if true, indicates that the file system is encrypted. Encrypted *bool `type:"boolean"` + // The Amazon Resource Name (ARN) for the EFS file system, in the format arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id + // . Example with sample data: arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567 + FileSystemArn *string `type:"string"` + // The ID of the file system, assigned by Amazon EFS. // // FileSystemId is a required field @@ -7126,7 +7554,7 @@ type UpdateFileSystemOutput struct { // The ID of an AWS Key Management Service (AWS KMS) customer master key (CMK) // that was used to protect the encrypted file system. - KmsKeyId *string `min:"1" type:"string"` + KmsKeyId *string `type:"string"` // The lifecycle phase of the file system. // @@ -7218,6 +7646,12 @@ func (s *UpdateFileSystemOutput) SetEncrypted(v bool) *UpdateFileSystemOutput { return s } +// SetFileSystemArn sets the FileSystemArn field's value. +func (s *UpdateFileSystemOutput) SetFileSystemArn(v string) *UpdateFileSystemOutput { + s.FileSystemArn = &v + return s +} + // SetFileSystemId sets the FileSystemId field's value. func (s *UpdateFileSystemOutput) SetFileSystemId(v string) *UpdateFileSystemOutput { s.FileSystemId = &v @@ -7284,6 +7718,66 @@ func (s *UpdateFileSystemOutput) SetThroughputMode(v string) *UpdateFileSystemOu return s } +// Returned if the AWS Backup service is not available in the region that the +// request was made. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // ErrorCode is a required field + ErrorCode *string `min:"1" type:"string" required:"true"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) 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 *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + const ( // LifeCycleStateCreating is a LifeCycleState enum value LifeCycleStateCreating = "creating" @@ -7309,6 +7803,20 @@ const ( PerformanceModeMaxIo = "maxIO" ) +const ( + // StatusEnabled is a Status enum value + StatusEnabled = "ENABLED" + + // StatusEnabling is a Status enum value + StatusEnabling = "ENABLING" + + // StatusDisabled is a Status enum value + StatusDisabled = "DISABLED" + + // StatusDisabling is a Status enum value + StatusDisabling = "DISABLING" +) + const ( // ThroughputModeBursting is a ThroughputMode enum value ThroughputModeBursting = "bursting" diff --git a/vendor/github.com/aws/aws-sdk-go/service/efs/errors.go b/vendor/github.com/aws/aws-sdk-go/service/efs/errors.go index bccb1f84ff2..7e2f36abb24 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/efs/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/efs/errors.go @@ -189,6 +189,13 @@ const ( // ErrCodeUnsupportedAvailabilityZone for service response error code // "UnsupportedAvailabilityZone". ErrCodeUnsupportedAvailabilityZone = "UnsupportedAvailabilityZone" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Returned if the AWS Backup service is not available in the region that the + // request was made. + ErrCodeValidationException = "ValidationException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ @@ -218,4 +225,5 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "ThroughputLimitExceeded": newErrorThroughputLimitExceeded, "TooManyRequests": newErrorTooManyRequests, "UnsupportedAvailabilityZone": newErrorUnsupportedAvailabilityZone, + "ValidationException": newErrorValidationException, } diff --git a/vendor/github.com/aws/aws-sdk-go/service/elasticache/api.go b/vendor/github.com/aws/aws-sdk-go/service/elasticache/api.go index 99e3bc76f77..f8ad7ee87e0 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/elasticache/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/elasticache/api.go @@ -1201,11 +1201,9 @@ func (c *ElastiCache) CreateReplicationGroupRequest(input *CreateReplicationGrou // // When a Redis (cluster mode disabled) replication group has been successfully // created, you can add one or more read replicas to it, up to a total of 5 -// read replicas. You cannot alter a Redis (cluster mode enabled) replication -// group after it has been created. However, if you need to increase or decrease -// the number of node groups (console: shards), you can avail yourself of ElastiCache -// for Redis' enhanced backup and restore. For more information, see Restoring -// From a Backup with Cluster Resizing (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups-restoring.html) +// read replicas. If you need to increase or decrease the number of node groups +// (console: shards), you can avail yourself of ElastiCache for Redis' scaling. +// For more information, see Scaling ElastiCache for Redis Clusters (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Scaling.html) // in the ElastiCache User Guide. // // This operation is valid for Redis only. @@ -6417,7 +6415,7 @@ func (c *ElastiCache) TestFailoverRequest(input *TestFailoverInput) (req *reques // in the ElastiCache User Guide DescribeEvents (https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeEvents.html) // in the ElastiCache API Reference // -// Also see, Testing Multi-AZ with Automatic Failover (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/AutoFailover.html#auto-failover-test) +// Also see, Testing Multi-AZ (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/AutoFailover.html#auto-failover-test) // in the ElastiCache User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7987,8 +7985,7 @@ type ConfigureShard struct { // // The minimum number of replicas in a shard or replication group is: // - // * Redis (cluster mode disabled) If Multi-AZ with Automatic Failover is - // enabled: 1 If Multi-AZ with Automatic Failover is not enable: 0 + // * Redis (cluster mode disabled) If Multi-AZ: 1 If Multi-AZ: 0 // // * Redis (cluster mode enabled): 0 (though you will not be able to failover // to a replica if your primary node fails) @@ -9025,15 +9022,6 @@ type CreateReplicationGroupInput struct { // replication groups. // // Default: false - // - // Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover - // on: - // - // * Redis versions earlier than 2.8.6. - // - // * Redis (cluster mode disabled): T1 node types. - // - // * Redis (cluster mode enabled): T1 node types. AutomaticFailoverEnabled *bool `type:"boolean"` // The compute and memory capacity of the nodes in the node group (shard). @@ -9817,8 +9805,8 @@ type DecreaseReplicaCountInput struct { // // The minimum number of replicas in a shard or replication group is: // - // * Redis (cluster mode disabled) If Multi-AZ with Automatic Failover is - // enabled: 1 If Multi-AZ with Automatic Failover is not enabled: 0 + // * Redis (cluster mode disabled) If Multi-AZ is enabled: 1 If Multi-AZ + // is not enabled: 0 // // * Redis (cluster mode enabled): 0 (though you will not be able to failover // to a replica if your primary node fails) @@ -13815,15 +13803,6 @@ type ModifyReplicationGroupInput struct { // primary if the existing primary encounters a failure. // // Valid values: true | false - // - // Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover - // on: - // - // * Redis versions earlier than 2.8.6. - // - // * Redis (cluster mode disabled): T1 node types. - // - // * Redis (cluster mode enabled): T1 node types. AutomaticFailoverEnabled *bool `type:"boolean"` // A valid cache node type that you want to scale this replication group to. @@ -15428,17 +15407,7 @@ type ReplicationGroup struct { // The date the auth token was last modified AuthTokenLastModifiedDate *time.Time `type:"timestamp"` - // Indicates the status of Multi-AZ with automatic failover for this Redis replication - // group. - // - // Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover - // on: - // - // * Redis versions earlier than 2.8.6. - // - // * Redis (cluster mode disabled): T1 node types. - // - // * Redis (cluster mode enabled): T1 node types. + // Indicates the status of automatic failover for this Redis replication group. AutomaticFailover *string `type:"string" enum:"AutomaticFailoverStatus"` // The name of the compute and memory capacity node type for each node in the @@ -15670,17 +15639,7 @@ type ReplicationGroupPendingModifiedValues struct { // The auth token status AuthTokenStatus *string `type:"string" enum:"AuthTokenUpdateStatus"` - // Indicates the status of Multi-AZ with automatic failover for this Redis replication - // group. - // - // Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover - // on: - // - // * Redis versions earlier than 2.8.6. - // - // * Redis (cluster mode disabled): T1 node types. - // - // * Redis (cluster mode enabled): T1 node types. + // Indicates the status of automatic failover for this Redis replication group. AutomaticFailoverStatus *string `type:"string" enum:"PendingAutomaticFailoverStatus"` // The primary cluster ID that is applied immediately (if --apply-immediately @@ -16446,17 +16405,8 @@ type Snapshot struct { // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` - // Indicates the status of Multi-AZ with automatic failover for the source Redis - // replication group. - // - // Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover - // on: - // - // * Redis versions earlier than 2.8.6. - // - // * Redis (cluster mode disabled): T1 node types. - // - // * Redis (cluster mode enabled): T1 node types. + // Indicates the status of automatic failover for the source Redis replication + // group. AutomaticFailover *string `type:"string" enum:"AutomaticFailoverStatus"` // The date and time when the source cluster was created. diff --git a/vendor/github.com/aws/aws-sdk-go/service/forecastservice/api.go b/vendor/github.com/aws/aws-sdk-go/service/forecastservice/api.go index e6425c8afb7..e0428f70d18 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/forecastservice/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/forecastservice/api.go @@ -79,7 +79,7 @@ func (c *ForecastService) CreateDatasetRequest(input *CreateDatasetInput) (req * // To get a list of all your datasets, use the ListDatasets operation. // // For example Forecast datasets, see the Amazon Forecast Sample GitHub repository -// (https://github.com/aws-samples/amazon-forecast-samples/tree/master/data). +// (https://github.com/aws-samples/amazon-forecast-samples). // // The Status of a dataset must be ACTIVE before you can import training data. // Use the DescribeDataset operation to get the status. @@ -278,8 +278,9 @@ func (c *ForecastService) CreateDatasetImportJobRequest(input *CreateDatasetImpo // to import the data to. // // You must specify a DataSource object that includes an AWS Identity and Access -// Management (IAM) role that Amazon Forecast can assume to access the data. -// For more information, see aws-forecast-iam-roles. +// Management (IAM) role that Amazon Forecast can assume to access the data, +// as Amazon Forecast makes a copy of your data and processes it in an internal +// AWS system. For more information, see aws-forecast-iam-roles. // // The training data must be in CSV format. The delimiter must be a comma (,). // @@ -287,6 +288,12 @@ func (c *ForecastService) CreateDatasetImportJobRequest(input *CreateDatasetImpo // in the S3 bucket. For the latter two cases, Amazon Forecast imports all files // up to the limit of 10,000 files. // +// Because dataset imports are not aggregated, your most recent dataset import +// is the one that is used when training a predictor or generating a forecast. +// Make sure that your most recent dataset import contains all of the data you +// want to model off of, and not just the new data collected since the previous +// import. +// // To get a list of all your dataset import jobs, filtered by specified criteria, // use the ListDatasetImportJobs operation. // @@ -388,9 +395,8 @@ func (c *ForecastService) CreateForecastRequest(input *CreateForecastInput) (req // use the CreateForecastExportJob operation. // // The range of the forecast is determined by the ForecastHorizon value, which -// you specify in the CreatePredictor request, multiplied by the DataFrequency -// value, which you specify in the CreateDataset request. When you query a forecast, -// you can request a specific date range within the forecast. +// you specify in the CreatePredictor request. When you query a forecast, you +// can request a specific date range within the forecast. // // To get a list of all your forecasts, use the ListForecasts operation. // @@ -497,7 +503,7 @@ func (c *ForecastService) CreateForecastExportJobRequest(input *CreateForecastEx // Simple Storage Service (Amazon S3) bucket. The forecast file name will match // the following conventions: // -// __ +// __ // // where the component is in Java SimpleDateFormat (yyyy-MM-ddTHH-mm-ssZ). // @@ -748,6 +754,10 @@ func (c *ForecastService) DeleteDatasetRequest(input *DeleteDatasetInput) (req * // operation. You can only delete datasets that have a status of ACTIVE or CREATE_FAILED. // To get the status use the DescribeDataset operation. // +// Forecast does not automatically update any dataset groups that contain the +// deleted dataset. In order to update the dataset group, use the operation, +// omitting the deleted dataset's ARN. +// // 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. @@ -2791,6 +2801,266 @@ func (c *ForecastService) ListPredictorsPagesWithContext(ctx aws.Context, input return p.Err() } +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/forecast-2018-06-26/ListTagsForResource +func (c *ForecastService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon Forecast Service. +// +// Lists the tags for an Amazon Forecast resource. +// +// 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 Forecast Service's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// We can't find a resource with that Amazon Resource Name (ARN). Check the +// ARN and try again. +// +// * InvalidInputException +// We can't process the request because it includes an invalid value or a value +// that exceeds the valid range. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListTagsForResource +func (c *ForecastService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource 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 *ForecastService) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/TagResource +func (c *ForecastService) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Amazon Forecast Service. +// +// Associates the specified tags to a resource with the specified resourceArn. +// If existing tags on a resource are not specified in the request parameters, +// they are not changed. When a resource is deleted, the tags associated with +// that resource are also deleted. +// +// 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 Forecast Service's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// We can't find a resource with that Amazon Resource Name (ARN). Check the +// ARN and try again. +// +// * LimitExceededException +// The limit on the number of resources per account has been exceeded. +// +// * InvalidInputException +// We can't process the request because it includes an invalid value or a value +// that exceeds the valid range. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/TagResource +func (c *ForecastService) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// 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 *ForecastService) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/UntagResource +func (c *ForecastService) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon Forecast Service. +// +// Deletes the specified tags from a resource. +// +// 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 Forecast Service's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// We can't find a resource with that Amazon Resource Name (ARN). Check the +// ARN and try again. +// +// * InvalidInputException +// We can't process the request because it includes an invalid value or a value +// that exceeds the valid range. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/UntagResource +func (c *ForecastService) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ForecastService) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateDatasetGroup = "UpdateDatasetGroup" // UpdateDatasetGroupRequest generates a "aws/request.Request" representing the @@ -3076,6 +3346,37 @@ type CreateDatasetGroupInput struct { // // Domain is a required field Domain *string `type:"string" required:"true" enum:"Domain"` + + // The optional metadata that you apply to the dataset group to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags []*Tag `type:"list"` } // String returns the string representation @@ -3100,6 +3401,16 @@ func (s *CreateDatasetGroupInput) Validate() error { if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } + 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 @@ -3125,6 +3436,12 @@ func (s *CreateDatasetGroupInput) SetDomain(v string) *CreateDatasetGroupInput { return s } +// SetTags sets the Tags field's value. +func (s *CreateDatasetGroupInput) SetTags(v []*Tag) *CreateDatasetGroupInput { + s.Tags = v + return s +} + type CreateDatasetGroupOutput struct { _ struct{} `type:"structure"` @@ -3176,6 +3493,37 @@ type CreateDatasetImportJobInput struct { // DatasetImportJobName is a required field DatasetImportJobName *string `min:"1" type:"string" required:"true"` + // The optional metadata that you apply to the dataset import job to help you + // categorize and organize them. Each tag consists of a key and an optional + // value, both of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags []*Tag `type:"list"` + // The format of timestamps in the dataset. The format that you specify depends // on the DataFrequency specified when the dataset was created. The following // formats are supported @@ -3220,6 +3568,16 @@ func (s *CreateDatasetImportJobInput) Validate() error { invalidParams.AddNested("DataSource", 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 @@ -3245,6 +3603,12 @@ func (s *CreateDatasetImportJobInput) SetDatasetImportJobName(v string) *CreateD return s } +// SetTags sets the Tags field's value. +func (s *CreateDatasetImportJobInput) SetTags(v []*Tag) *CreateDatasetImportJobInput { + s.Tags = v + return s +} + // SetTimestampFormat sets the TimestampFormat field's value. func (s *CreateDatasetImportJobInput) SetTimestampFormat(v string) *CreateDatasetImportJobInput { s.TimestampFormat = &v @@ -3320,6 +3684,37 @@ type CreateDatasetInput struct { // // Schema is a required field Schema *Schema `type:"structure" required:"true"` + + // The optional metadata that you apply to the dataset to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags []*Tag `type:"list"` } // String returns the string representation @@ -3360,6 +3755,16 @@ func (s *CreateDatasetInput) Validate() error { invalidParams.AddNested("Schema", 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 @@ -3403,6 +3808,12 @@ func (s *CreateDatasetInput) SetSchema(v *Schema) *CreateDatasetInput { return s } +// SetTags sets the Tags field's value. +func (s *CreateDatasetInput) SetTags(v []*Tag) *CreateDatasetInput { + s.Tags = v + return s +} + type CreateDatasetOutput struct { _ struct{} `type:"structure"` @@ -3449,6 +3860,37 @@ type CreateForecastExportJobInput struct { // // ForecastExportJobName is a required field ForecastExportJobName *string `min:"1" type:"string" required:"true"` + + // The optional metadata that you apply to the forecast export job to help you + // categorize and organize them. Each tag consists of a key and an optional + // value, both of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags []*Tag `type:"list"` } // String returns the string representation @@ -3481,6 +3923,16 @@ func (s *CreateForecastExportJobInput) Validate() error { invalidParams.AddNested("Destination", 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 @@ -3506,6 +3958,12 @@ func (s *CreateForecastExportJobInput) SetForecastExportJobName(v string) *Creat return s } +// SetTags sets the Tags field's value. +func (s *CreateForecastExportJobInput) SetTags(v []*Tag) *CreateForecastExportJobInput { + s.Tags = v + return s +} + type CreateForecastExportJobOutput struct { _ struct{} `type:"structure"` @@ -3537,17 +3995,48 @@ type CreateForecastInput struct { // ForecastName is a required field ForecastName *string `min:"1" type:"string" required:"true"` - // The quantiles at which probabilistic forecasts are generated. You can specify - // up to 5 quantiles per forecast. Accepted values include 0.01 to 0.99 (increments - // of .01 only) and mean. The mean forecast is different from the median (0.50) - // when the distribution is not symmetric (e.g. Beta, Negative Binomial). The - // default value is ["0.1", "0.5", "0.9"]. + // The quantiles at which probabilistic forecasts are generated. You can currently + // specify up to 5 quantiles per forecast. Accepted values include 0.01 to 0.99 + // (increments of .01 only) and mean. The mean forecast is different from the + // median (0.50) when the distribution is not symmetric (for example, Beta and + // Negative Binomial). The default value is ["0.1", "0.5", "0.9"]. ForecastTypes []*string `min:"1" type:"list"` // The Amazon Resource Name (ARN) of the predictor to use to generate the forecast. // // PredictorArn is a required field PredictorArn *string `type:"string" required:"true"` + + // The optional metadata that you apply to the forecast to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags []*Tag `type:"list"` } // String returns the string representation @@ -3575,6 +4064,16 @@ func (s *CreateForecastInput) Validate() error { if s.PredictorArn == nil { invalidParams.Add(request.NewErrParamRequired("PredictorArn")) } + 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 @@ -3600,6 +4099,12 @@ func (s *CreateForecastInput) SetPredictorArn(v string) *CreateForecastInput { return s } +// SetTags sets the Tags field's value. +func (s *CreateForecastInput) SetTags(v []*Tag) *CreateForecastInput { + s.Tags = v + return s +} + type CreateForecastOutput struct { _ struct{} `type:"structure"` @@ -3709,15 +4214,46 @@ type CreatePredictorInput struct { // for each tunable hyperparameter. In this case, you are required to specify // an algorithm and PerformAutoML must be false. // - // The following algorithm supports HPO: + // The following algorithm supports HPO: + // + // * DeepAR+ + PerformHPO *bool `type:"boolean"` + + // A name for the predictor. + // + // PredictorName is a required field + PredictorName *string `min:"1" type:"string" required:"true"` + + // The optional metadata that you apply to the predictor to help you categorize + // and organize them. Each tag consists of a key and an optional value, both + // of which you define. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. // - // * DeepAR+ - PerformHPO *bool `type:"boolean"` - - // A name for the predictor. + // * Tag keys and values are case sensitive. // - // PredictorName is a required field - PredictorName *string `min:"1" type:"string" required:"true"` + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + Tags []*Tag `type:"list"` // The hyperparameters to override for model training. The hyperparameters that // you can override are listed in the individual algorithms. For the list of @@ -3773,6 +4309,16 @@ func (s *CreatePredictorInput) Validate() error { invalidParams.AddNested("InputDataConfig", 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 @@ -3840,6 +4386,12 @@ func (s *CreatePredictorInput) SetPredictorName(v string) *CreatePredictorInput return s } +// SetTags sets the Tags field's value. +func (s *CreatePredictorInput) SetTags(v []*Tag) *CreatePredictorInput { + s.Tags = v + return s +} + // SetTrainingParameters sets the TrainingParameters field's value. func (s *CreatePredictorInput) SetTrainingParameters(v map[string]*string) *CreatePredictorInput { s.TrainingParameters = v @@ -5170,7 +5722,7 @@ type DescribeForecastOutput struct { // The name of the forecast. ForecastName *string `min:"1" type:"string"` - // The quantiles at which proababilistic forecasts were generated. + // The quantiles at which probabilistic forecasts were generated. ForecastTypes []*string `min:"1" type:"list"` // Initially, the same as CreationTime (status is CREATE_PENDING). Updated when @@ -5673,9 +6225,10 @@ type Featurization struct { _ struct{} `type:"structure"` // The name of the schema attribute that specifies the data field to be featurized. - // Only the target field of the TARGET_TIME_SERIES dataset type is supported. - // For example, for the RETAIL domain, the target is demand, and for the CUSTOM - // domain, the target is target_value. + // Amazon Forecast supports the target field of the TARGET_TIME_SERIES and the + // RELATED_TIME_SERIES datasets. For example, for the RETAIL domain, the target + // is demand, and for the CUSTOM domain, the target is target_value. For more + // information, see howitworks-missing-values. // // AttributeName is a required field AttributeName *string `min:"1" type:"string" required:"true"` @@ -5744,8 +6297,8 @@ func (s *Featurization) SetFeaturizationPipeline(v []*FeaturizationMethod) *Feat // You define featurization using the FeaturizationConfig object. You specify // an array of transformations, one for each field that you want to featurize. // You then include the FeaturizationConfig object in your CreatePredictor request. -// Amazon Forecast applies the featurization to the TARGET_TIME_SERIES dataset -// before model training. +// Amazon Forecast applies the featurization to the TARGET_TIME_SERIES and RELATED_TIME_SERIES +// datasets before model training. // // You can create multiple featurization configurations. For example, you might // call the CreatePredictor operation twice by specifying different featurization @@ -5754,7 +6307,7 @@ type FeaturizationConfig struct { _ struct{} `type:"structure"` // An array of featurization (transformation) information for the fields of - // a dataset. Only a single featurization is supported. + // a dataset. Featurizations []*Featurization `min:"1" type:"list"` // An array of dimension (field) names that specify how to group the generated @@ -5847,8 +6400,7 @@ func (s *FeaturizationConfig) SetForecastFrequency(v string) *FeaturizationConfi // Provides information about the method that featurizes (transforms) a dataset // field. The method is part of the FeaturizationPipeline of the Featurization -// object. If you don't specify FeaturizationMethodParameters, Amazon Forecast -// uses default parameters. +// object. // // The following is an example of how you specify a FeaturizationMethod object. // @@ -5856,7 +6408,8 @@ func (s *FeaturizationConfig) SetForecastFrequency(v string) *FeaturizationConfi // // "FeaturizationMethodName": "filling", // -// "FeaturizationMethodParameters": {"aggregation": "avg", "backfill": "nan"} +// "FeaturizationMethodParameters": {"aggregation": "sum", "middlefill": "zero", +// "backfill": "zero"} // // } type FeaturizationMethod struct { @@ -5867,17 +6420,30 @@ type FeaturizationMethod struct { // FeaturizationMethodName is a required field FeaturizationMethodName *string `type:"string" required:"true" enum:"FeaturizationMethodName"` - // The method parameters (key-value pairs). Specify these parameters to override - // the default values. The following list shows the parameters and their valid - // values. Bold signifies the default value. + // The method parameters (key-value pairs), which are a map of override parameters. + // Specify these parameters to override the default values. Related Time Series + // attributes do not accept aggregation parameters. + // + // The following list shows the parameters and their valid values for the "filling" + // featurization method for a Target Time Series dataset. Bold signifies the + // default value. // // * aggregation: sum, avg, first, min, max // // * frontfill: none // - // * middlefill: zero, nan (not a number) + // * middlefill: zero, nan (not a number), value, median, mean, min, max + // + // * backfill: zero, nan, value, median, mean, min, max + // + // The following list shows the parameters and their valid values for a Related + // Time Series featurization method (there are no defaults): + // + // * middlefill: zero, value, median, mean, min, max + // + // * backfill: zero, value, median, mean, min, max // - // * backfill: zero, nan + // * futurefill: zero, value, median, mean, min, max FeaturizationMethodParameters map[string]*string `min:"1" type:"map"` } @@ -7286,6 +7852,70 @@ func (s *ListPredictorsOutput) SetPredictors(v []*PredictorSummary) *ListPredict return s } +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that identifies the resource for which to + // list the tags. Currently, the supported resources are Forecast dataset groups, + // datasets, dataset import jobs, predictors, forecasts, and forecast export + // jobs. + // + // ResourceArn is a required field + ResourceArn *string `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.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The tags for the resource. + Tags []*Tag `type:"list"` +} + +// String returns the string representation +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + // Provides metrics that are used to evaluate the performance of a predictor. // This object is part of the WindowSummary object. type Metrics struct { @@ -7821,7 +8451,7 @@ type Schema struct { _ struct{} `type:"structure"` // An array of attributes specifying the name and type of each field in a dataset. - Attributes []*SchemaAttribute `type:"list"` + Attributes []*SchemaAttribute `min:"1" type:"list"` } // String returns the string representation @@ -7837,6 +8467,9 @@ func (s Schema) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *Schema) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Schema"} + if s.Attributes != nil && len(s.Attributes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attributes", 1)) + } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { @@ -8003,6 +8636,35 @@ func (s *Statistics) SetStddev(v float64) *Statistics { // all data in the datasets should belong to the same country as the calendar. // For the holiday calendar data, see the Jollyday (http://jollyday.sourceforge.net/data.html) // web site. +// +// India and Korea's holidays are not included in the Jollyday library, but +// both are supported by Amazon Forecast. Their holidays are: +// +// "IN" - INDIA +// +// * JANUARY 26 - REPUBLIC DAY +// +// * AUGUST 15 - INDEPENDENCE DAY +// +// * OCTOBER 2 GANDHI'S BIRTHDAY +// +// "KR" - KOREA +// +// * JANUARY 1 - NEW YEAR +// +// * MARCH 1 - INDEPENDENCE MOVEMENT DAY +// +// * MAY 5 - CHILDREN'S DAY +// +// * JUNE 6 - MEMORIAL DAY +// +// * AUGUST 15 - LIBERATION DAY +// +// * OCTOBER 3 - NATIONAL FOUNDATION DAY +// +// * OCTOBER 9 - HANGEUL DAY +// +// * DECEMBER 25 - CHRISTMAS DAY type SupplementaryFeature struct { _ struct{} `type:"structure"` @@ -8013,15 +8675,69 @@ type SupplementaryFeature struct { // One of the following 2 letter country codes: // + // * "AR" - ARGENTINA + // + // * "AT" - AUSTRIA + // // * "AU" - AUSTRALIA // + // * "BE" - BELGIUM + // + // * "BR" - BRAZIL + // + // * "CA" - CANADA + // + // * "CN" - CHINA + // + // * "CZ" - CZECH REPUBLIC + // + // * "DK" - DENMARK + // + // * "EC" - ECUADOR + // + // * "FI" - FINLAND + // + // * "FR" - FRANCE + // // * "DE" - GERMANY // + // * "HU" - HUNGARY + // + // * "IE" - IRELAND + // + // * "IN" - INDIA + // + // * "IT" - ITALY + // // * "JP" - JAPAN // - // * "US" - UNITED_STATES + // * "KR" - KOREA + // + // * "LU" - LUXEMBOURG + // + // * "MX" - MEXICO // - // * "UK" - UNITED_KINGDOM + // * "NL" - NETHERLANDS + // + // * "NO" - NORWAY + // + // * "PL" - POLAND + // + // * "PT" - PORTUGAL + // + // * "RU" - RUSSIA + // + // * "ZA" - SOUTH AFRICA + // + // * "ES" - SPAIN + // + // * "SE" - SWEDEN + // + // * "CH" - SWITZERLAND + // + // * "US" - UNITED STATES + // + // * "UK" - UNITED KINGDOM // // Value is a required field Value *string `type:"string" required:"true"` @@ -8068,6 +8784,197 @@ func (s *SupplementaryFeature) SetValue(v string) *SupplementaryFeature { return s } +// The optional metadata that you apply to a resource to help you categorize +// and organize them. Each tag consists of a key and an optional value, both +// of which you define. +// +// The following basic restrictions apply to tags: +// +// * Maximum number of tags per resource - 50. +// +// * For each resource, each tag key must be unique, and each tag key can +// have only one value. +// +// * Maximum key length - 128 Unicode characters in UTF-8. +// +// * Maximum value length - 256 Unicode characters in UTF-8. +// +// * If your tagging schema is used across multiple services and resources, +// remember that other services may have restrictions on allowed characters. +// Generally allowed characters are: letters, numbers, and spaces representable +// in UTF-8, and the following characters: + - = . _ : / @. +// +// * Tag keys and values are case sensitive. +// +// * Do not use aws:, AWS:, or any upper or lowercase combination of such +// as a prefix for keys as it is reserved for AWS use. You cannot edit or +// delete tag keys with this prefix. Values can have this prefix. If a tag +// value has aws as its prefix but the key does not, then Forecast considers +// it to be a user tag and will count against the limit of 50 tags. Tags +// with only the key prefix of aws do not count against your tags per resource +// limit. +type Tag struct { + _ struct{} `type:"structure"` + + // One part of a key-value pair that makes up a tag. A key is a general label + // that acts like a category for more specific tag values. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The optional part of a key-value pair that makes up a tag. A value acts as + // a descriptor within a tag category (key). + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Tag) 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")) + } + 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 *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 +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that identifies the resource for which to + // list the tags. Currently, the supported resources are Forecast dataset groups, + // datasets, dataset import jobs, predictors, forecasts, and forecast export + // jobs. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` + + // The tags to add to the resource. A tag is an array of key-value pairs. + // + // The following basic restrictions apply to tags: + // + // * Maximum number of tags per resource - 50. + // + // * For each resource, each tag key must be unique, and each tag key can + // have only one value. + // + // * Maximum key length - 128 Unicode characters in UTF-8. + // + // * Maximum value length - 256 Unicode characters in UTF-8. + // + // * If your tagging schema is used across multiple services and resources, + // remember that other services may have restrictions on allowed characters. + // Generally allowed characters are: letters, numbers, and spaces representable + // in UTF-8, and the following characters: + - = . _ : / @. + // + // * Tag keys and values are case sensitive. + // + // * Do not use aws:, AWS:, or any upper or lowercase combination of such + // as a prefix for keys as it is reserved for AWS use. You cannot edit or + // delete tag keys with this prefix. Values can have this prefix. If a tag + // value has aws as its prefix but the key does not, then Forecast considers + // it to be a user tag and will count against the limit of 50 tags. Tags + // with only the key prefix of aws do not count against your tags per resource + // limit. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceInput) 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")) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + 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 +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() +} + // The status, start time, and end time of a backtest, as well as a failure // reason if applicable. type TestWindowSummary struct { @@ -8126,6 +9033,74 @@ func (s *TestWindowSummary) SetTestWindowStart(v time.Time) *TestWindowSummary { return s } +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that identifies the resource for which to + // list the tags. Currently, the supported resources are Forecast dataset groups, + // datasets, dataset import jobs, predictors, forecasts, and forecast exports. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` + + // The keys of the tags to be removed. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceInput) 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")) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceOutput) GoString() string { + return s.String() +} + type UpdateDatasetGroupInput struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/glue/api.go b/vendor/github.com/aws/aws-sdk-go/service/glue/api.go index 32f56ad67e1..d355b4d6998 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/glue/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/glue/api.go @@ -7226,6 +7226,95 @@ func (c *Glue) GetPlanWithContext(ctx aws.Context, input *GetPlanInput, opts ... return out, req.Send() } +const opGetResourcePolicies = "GetResourcePolicies" + +// GetResourcePoliciesRequest generates a "aws/request.Request" representing the +// client's request for the GetResourcePolicies 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 GetResourcePolicies for more information on using the GetResourcePolicies +// 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 GetResourcePoliciesRequest method. +// req, resp := client.GetResourcePoliciesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetResourcePolicies +func (c *Glue) GetResourcePoliciesRequest(input *GetResourcePoliciesInput) (req *request.Request, output *GetResourcePoliciesOutput) { + op := &request.Operation{ + Name: opGetResourcePolicies, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetResourcePoliciesInput{} + } + + output = &GetResourcePoliciesOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetResourcePolicies API operation for AWS Glue. +// +// Retrieves the security configurations for the resource policies set on individual +// resources, and also the account-level policy. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Glue's +// API operation GetResourcePolicies for usage and error information. +// +// Returned Error Types: +// * InternalServiceException +// An internal service error occurred. +// +// * OperationTimeoutException +// The operation timed out. +// +// * InvalidInputException +// The input provided was not valid. +// +// * EncryptionException +// An encryption operation failed. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetResourcePolicies +func (c *Glue) GetResourcePolicies(input *GetResourcePoliciesInput) (*GetResourcePoliciesOutput, error) { + req, out := c.GetResourcePoliciesRequest(input) + return out, req.Send() +} + +// GetResourcePoliciesWithContext is the same as GetResourcePolicies with the addition of +// the ability to pass a context and additional request options. +// +// See GetResourcePolicies 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 *Glue) GetResourcePoliciesWithContext(ctx aws.Context, input *GetResourcePoliciesInput, opts ...request.Option) (*GetResourcePoliciesOutput, error) { + req, out := c.GetResourcePoliciesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetResourcePolicy = "GetResourcePolicy" // GetResourcePolicyRequest generates a "aws/request.Request" representing the @@ -16154,8 +16243,7 @@ type Connection struct { // to which a Kafka client will connect to and bootstrap itself. ConnectionProperties map[string]*string `type:"map"` - // The type of the connection. Currently, only JDBC is supported; SFTP is not - // supported. + // The type of the connection. Currently, SFTP is not supported. ConnectionType *string `type:"string" enum:"ConnectionType"` // The time that this connection definition was created. @@ -19735,6 +19823,9 @@ func (s *DataLakePrincipal) SetDataLakePrincipalIdentifier(v string) *DataLakePr type Database struct { _ struct{} `type:"structure"` + // The ID of the Data Catalog in which the database resides. + CatalogId *string `min:"1" type:"string"` + // Creates a set of default permissions on the table for principals. CreateTableDefaultPermissions []*PrincipalPermissions `type:"list"` @@ -19755,6 +19846,10 @@ type Database struct { // These key-value pairs define parameters and properties of the database. Parameters map[string]*string `type:"map"` + + // A DatabaseIdentifier structure that describes a target database for resource + // linking. + TargetDatabase *DatabaseIdentifier `type:"structure"` } // String returns the string representation @@ -19767,6 +19862,12 @@ func (s Database) GoString() string { return s.String() } +// SetCatalogId sets the CatalogId field's value. +func (s *Database) SetCatalogId(v string) *Database { + s.CatalogId = &v + return s +} + // SetCreateTableDefaultPermissions sets the CreateTableDefaultPermissions field's value. func (s *Database) SetCreateTableDefaultPermissions(v []*PrincipalPermissions) *Database { s.CreateTableDefaultPermissions = v @@ -19803,6 +19904,61 @@ func (s *Database) SetParameters(v map[string]*string) *Database { return s } +// SetTargetDatabase sets the TargetDatabase field's value. +func (s *Database) SetTargetDatabase(v *DatabaseIdentifier) *Database { + s.TargetDatabase = v + return s +} + +// A structure that describes a target database for resource linking. +type DatabaseIdentifier struct { + _ struct{} `type:"structure"` + + // The ID of the Data Catalog in which the database resides. + CatalogId *string `min:"1" type:"string"` + + // The name of the catalog database. + DatabaseName *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DatabaseIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DatabaseIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DatabaseIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DatabaseIdentifier"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *DatabaseIdentifier) SetCatalogId(v string) *DatabaseIdentifier { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *DatabaseIdentifier) SetDatabaseName(v string) *DatabaseIdentifier { + s.DatabaseName = &v + return s +} + // The structure used to create or update a database. type DatabaseInput struct { _ struct{} `type:"structure"` @@ -19826,6 +19982,10 @@ type DatabaseInput struct { // // These key-value pairs define parameters and properties of the database. Parameters map[string]*string `type:"map"` + + // A DatabaseIdentifier structure that describes a target database for resource + // linking. + TargetDatabase *DatabaseIdentifier `type:"structure"` } // String returns the string representation @@ -19860,6 +20020,11 @@ func (s *DatabaseInput) Validate() error { } } } + if s.TargetDatabase != nil { + if err := s.TargetDatabase.Validate(); err != nil { + invalidParams.AddNested("TargetDatabase", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -19897,6 +20062,12 @@ func (s *DatabaseInput) SetParameters(v map[string]*string) *DatabaseInput { return s } +// SetTargetDatabase sets the TargetDatabase field's value. +func (s *DatabaseInput) SetTargetDatabase(v *DatabaseIdentifier) *DatabaseInput { + s.TargetDatabase = v + return s +} + // Defines a date column statistics data. type DateColumnStatisticsData struct { _ struct{} `type:"structure"` @@ -20853,6 +21024,9 @@ type DeleteResourcePolicyInput struct { // The hash value returned when this policy was set. PolicyHashCondition *string `min:"1" type:"string"` + + // The ARN of the AWS Glue resource for the resource policy to be deleted. + ResourceArn *string `min:"1" type:"string"` } // String returns the string representation @@ -20871,6 +21045,9 @@ func (s *DeleteResourcePolicyInput) Validate() error { if s.PolicyHashCondition != nil && len(*s.PolicyHashCondition) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyHashCondition", 1)) } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -20884,6 +21061,12 @@ func (s *DeleteResourcePolicyInput) SetPolicyHashCondition(v string) *DeleteReso return s } +// SetResourceArn sets the ResourceArn field's value. +func (s *DeleteResourcePolicyInput) SetResourceArn(v string) *DeleteResourcePolicyInput { + s.ResourceArn = &v + return s +} + type DeleteResourcePolicyOutput struct { _ struct{} `type:"structure"` } @@ -22962,8 +23145,7 @@ func (s *GetConnectionOutput) SetConnection(v *Connection) *GetConnectionOutput type GetConnectionsFilter struct { _ struct{} `type:"structure"` - // The type of connections to return. Currently, only JDBC is supported; SFTP - // is not supported. + // The type of connections to return. Currently, SFTP is not supported. ConnectionType *string `type:"string" enum:"ConnectionType"` // A criteria string that must match the criteria recorded in the connection @@ -23485,6 +23667,15 @@ type GetDatabasesInput struct { // A continuation token, if this is a continuation call. NextToken *string `type:"string"` + + // Allows you to specify that you want to list the databases shared with your + // account. The allowable values are FOREIGN or ALL. + // + // * If set to FOREIGN, will list the databases shared with your account. + // + // * If set to ALL, will list the databases shared with your account, as + // well as the databases in yor local account. + ResourceShareType *string `type:"string" enum:"ResourceShareType"` } // String returns the string representation @@ -23531,6 +23722,12 @@ func (s *GetDatabasesInput) SetNextToken(v string) *GetDatabasesInput { return s } +// SetResourceShareType sets the ResourceShareType field's value. +func (s *GetDatabasesInput) SetResourceShareType(v string) *GetDatabasesInput { + s.ResourceShareType = &v + return s +} + type GetDatabasesOutput struct { _ struct{} `type:"structure"` @@ -25361,8 +25558,92 @@ func (s *GetPlanOutput) SetScalaCode(v string) *GetPlanOutput { return s } +type GetResourcePoliciesInput struct { + _ struct{} `type:"structure"` + + // The maximum size of a list to return. + MaxResults *int64 `min:"1" type:"integer"` + + // A continuation token, if this is a continuation request. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s GetResourcePoliciesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetResourcePoliciesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetResourcePoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetResourcePoliciesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetResourcePoliciesInput) SetMaxResults(v int64) *GetResourcePoliciesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetResourcePoliciesInput) SetNextToken(v string) *GetResourcePoliciesInput { + s.NextToken = &v + return s +} + +type GetResourcePoliciesOutput struct { + _ struct{} `type:"structure"` + + // A list of the individual resource policies and the account-level resource + // policy. + GetResourcePoliciesResponseList []*GluePolicy `type:"list"` + + // A continuation token, if the returned list does not contain the last resource + // policy available. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s GetResourcePoliciesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetResourcePoliciesOutput) GoString() string { + return s.String() +} + +// SetGetResourcePoliciesResponseList sets the GetResourcePoliciesResponseList field's value. +func (s *GetResourcePoliciesOutput) SetGetResourcePoliciesResponseList(v []*GluePolicy) *GetResourcePoliciesOutput { + s.GetResourcePoliciesResponseList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetResourcePoliciesOutput) SetNextToken(v string) *GetResourcePoliciesOutput { + s.NextToken = &v + return s +} + type GetResourcePolicyInput struct { _ struct{} `type:"structure"` + + // The ARN of the AWS Glue resource for the resource policy to be retrieved. + // For more information about AWS Glue resource ARNs, see the AWS Glue ARN string + // pattern (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-common.html#aws-glue-api-regex-aws-glue-arn-id) + ResourceArn *string `min:"1" type:"string"` } // String returns the string representation @@ -25375,6 +25656,25 @@ func (s GetResourcePolicyInput) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetResourcePolicyInput"} + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *GetResourcePolicyInput) SetResourceArn(v string) *GetResourcePolicyInput { + s.ResourceArn = &v + return s +} + type GetResourcePolicyOutput struct { _ struct{} `type:"structure"` @@ -26797,6 +27097,57 @@ func (s *GetWorkflowRunsOutput) SetRuns(v []*WorkflowRun) *GetWorkflowRunsOutput return s } +// A structure for returning a resource policy. +type GluePolicy struct { + _ struct{} `type:"structure"` + + // The date and time at which the policy was created. + CreateTime *time.Time `type:"timestamp"` + + // Contains the hash value associated with this policy. + PolicyHash *string `min:"1" type:"string"` + + // Contains the requested policy document, in JSON format. + PolicyInJson *string `min:"2" type:"string"` + + // The date and time at which the policy was last updated. + UpdateTime *time.Time `type:"timestamp"` +} + +// String returns the string representation +func (s GluePolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GluePolicy) GoString() string { + return s.String() +} + +// SetCreateTime sets the CreateTime field's value. +func (s *GluePolicy) SetCreateTime(v time.Time) *GluePolicy { + s.CreateTime = &v + return s +} + +// SetPolicyHash sets the PolicyHash field's value. +func (s *GluePolicy) SetPolicyHash(v string) *GluePolicy { + s.PolicyHash = &v + return s +} + +// SetPolicyInJson sets the PolicyInJson field's value. +func (s *GluePolicy) SetPolicyInJson(v string) *GluePolicy { + s.PolicyInJson = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *GluePolicy) SetUpdateTime(v time.Time) *GluePolicy { + s.UpdateTime = &v + return s +} + // A classifier that uses grok patterns. type GrokClassifier struct { _ struct{} `type:"structure"` @@ -29740,6 +30091,9 @@ func (s *Order) SetSortOrder(v int64) *Order { type Partition struct { _ struct{} `type:"structure"` + // The ID of the Data Catalog in which the partition resides. + CatalogId *string `min:"1" type:"string"` + // The time at which the partition was created. CreationTime *time.Time `type:"timestamp"` @@ -29775,6 +30129,12 @@ func (s Partition) GoString() string { return s.String() } +// SetCatalogId sets the CatalogId field's value. +func (s *Partition) SetCatalogId(v string) *Partition { + s.CatalogId = &v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *Partition) SetCreationTime(v time.Time) *Partition { s.CreationTime = &v @@ -30287,6 +30647,15 @@ func (s PutDataCatalogEncryptionSettingsOutput) GoString() string { type PutResourcePolicyInput struct { _ struct{} `type:"structure"` + // Allows you to specify if you want to use both resource-level and account/catalog-level + // resource policies. A resource-level policy is a policy attached to an individual + // resource such as a database or a table. + // + // The default value of NO indicates that resource-level policies cannot co-exist + // with an account-level policy. A value of YES means the use of both resource-level + // and account/catalog-level resource policies is allowed. + EnableHybrid *string `type:"string" enum:"EnableHybridValues"` + // A value of MUST_EXIST is used to update a policy. A value of NOT_EXIST is // used to create a new policy. If a value of NONE or a null value is used, // the call will not depend on the existence of a policy. @@ -30301,6 +30670,11 @@ type PutResourcePolicyInput struct { // // PolicyInJson is a required field PolicyInJson *string `min:"2" type:"string" required:"true"` + + // The ARN of the AWS Glue resource for the resource policy to be set. For more + // information about AWS Glue resource ARNs, see the AWS Glue ARN string pattern + // (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-common.html#aws-glue-api-regex-aws-glue-arn-id) + ResourceArn *string `min:"1" type:"string"` } // String returns the string representation @@ -30325,6 +30699,9 @@ func (s *PutResourcePolicyInput) Validate() error { if s.PolicyInJson != nil && len(*s.PolicyInJson) < 2 { invalidParams.Add(request.NewErrParamMinLen("PolicyInJson", 2)) } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -30332,6 +30709,12 @@ func (s *PutResourcePolicyInput) Validate() error { return nil } +// SetEnableHybrid sets the EnableHybrid field's value. +func (s *PutResourcePolicyInput) SetEnableHybrid(v string) *PutResourcePolicyInput { + s.EnableHybrid = &v + return s +} + // SetPolicyExistsCondition sets the PolicyExistsCondition field's value. func (s *PutResourcePolicyInput) SetPolicyExistsCondition(v string) *PutResourcePolicyInput { s.PolicyExistsCondition = &v @@ -30350,6 +30733,12 @@ func (s *PutResourcePolicyInput) SetPolicyInJson(v string) *PutResourcePolicyInp return s } +// SetResourceArn sets the ResourceArn field's value. +func (s *PutResourcePolicyInput) SetResourceArn(v string) *PutResourcePolicyInput { + s.ResourceArn = &v + return s +} + type PutResourcePolicyOutput struct { _ struct{} `type:"structure"` @@ -31004,6 +31393,15 @@ type SearchTablesInput struct { // A continuation token, included if this is a continuation call. NextToken *string `type:"string"` + // Allows you to specify that you want to search the tables shared with your + // account. The allowable values are FOREIGN or ALL. + // + // * If set to FOREIGN, will search the tables shared with your account. + // + // * If set to ALL, will search the tables shared with your account, as well + // as the tables in yor local account. + ResourceShareType *string `type:"string" enum:"ResourceShareType"` + // A string used for a text search. // // Specifying a value in quotes filters based on an exact match to the value. @@ -31064,6 +31462,12 @@ func (s *SearchTablesInput) SetNextToken(v string) *SearchTablesInput { return s } +// SetResourceShareType sets the ResourceShareType field's value. +func (s *SearchTablesInput) SetResourceShareType(v string) *SearchTablesInput { + s.ResourceShareType = &v + return s +} + // SetSearchText sets the SearchText field's value. func (s *SearchTablesInput) SetSearchText(v string) *SearchTablesInput { s.SearchText = &v @@ -32681,6 +33085,9 @@ func (s *Table) SetTableName(v string) *Table { type TableData struct { _ struct{} `type:"structure"` + // The ID of the Data Catalog in which the table resides. + CatalogId *string `min:"1" type:"string"` + // The time when the table definition was created in the Data Catalog. CreateTime *time.Time `type:"timestamp"` @@ -32735,6 +33142,9 @@ type TableData struct { // The type of this table (EXTERNAL_TABLE, VIRTUAL_VIEW, etc.). TableType *string `type:"string"` + // A TableIdentifier structure that describes a target table for resource linking. + TargetTable *TableIdentifier `type:"structure"` + // The last time that the table was updated. UpdateTime *time.Time `type:"timestamp"` @@ -32755,6 +33165,12 @@ func (s TableData) GoString() string { return s.String() } +// SetCatalogId sets the CatalogId field's value. +func (s *TableData) SetCatalogId(v string) *TableData { + s.CatalogId = &v + return s +} + // SetCreateTime sets the CreateTime field's value. func (s *TableData) SetCreateTime(v time.Time) *TableData { s.CreateTime = &v @@ -32839,6 +33255,12 @@ func (s *TableData) SetTableType(v string) *TableData { return s } +// SetTargetTable sets the TargetTable field's value. +func (s *TableData) SetTargetTable(v *TableIdentifier) *TableData { + s.TargetTable = v + return s +} + // SetUpdateTime sets the UpdateTime field's value. func (s *TableData) SetUpdateTime(v time.Time) *TableData { s.UpdateTime = &v @@ -32890,6 +33312,67 @@ func (s *TableError) SetTableName(v string) *TableError { return s } +// A structure that describes a target table for resource linking. +type TableIdentifier struct { + _ struct{} `type:"structure"` + + // The ID of the Data Catalog in which the table resides. + CatalogId *string `min:"1" type:"string"` + + // The name of the catalog database that contains the target table. + DatabaseName *string `min:"1" type:"string"` + + // The name of the target table. + Name *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s TableIdentifier) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TableIdentifier) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TableIdentifier) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TableIdentifier"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCatalogId sets the CatalogId field's value. +func (s *TableIdentifier) SetCatalogId(v string) *TableIdentifier { + s.CatalogId = &v + return s +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *TableIdentifier) SetDatabaseName(v string) *TableIdentifier { + s.DatabaseName = &v + return s +} + +// SetName sets the Name field's value. +func (s *TableIdentifier) SetName(v string) *TableIdentifier { + s.Name = &v + return s +} + // A structure used to define a table. type TableInput struct { _ struct{} `type:"structure"` @@ -32935,6 +33418,9 @@ type TableInput struct { // The type of this table (EXTERNAL_TABLE, VIRTUAL_VIEW, etc.). TableType *string `type:"string"` + // A TableIdentifier structure that describes a target table for resource linking. + TargetTable *TableIdentifier `type:"structure"` + // If the table is a view, the expanded text of the view; otherwise null. ViewExpandedText *string `type:"string"` @@ -32979,6 +33465,11 @@ func (s *TableInput) Validate() error { invalidParams.AddNested("StorageDescriptor", err.(request.ErrInvalidParams)) } } + if s.TargetTable != nil { + if err := s.TargetTable.Validate(); err != nil { + invalidParams.AddNested("TargetTable", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -33046,6 +33537,12 @@ func (s *TableInput) SetTableType(v string) *TableInput { return s } +// SetTargetTable sets the TargetTable field's value. +func (s *TableInput) SetTargetTable(v *TableIdentifier) *TableInput { + s.TargetTable = v + return s +} + // SetViewExpandedText sets the ViewExpandedText field's value. func (s *TableInput) SetViewExpandedText(v string) *TableInput { s.ViewExpandedText = &v @@ -35943,13 +36440,16 @@ func (s *UpdateXMLClassifierRequest) SetRowTag(v string) *UpdateXMLClassifierReq type UserDefinedFunction struct { _ struct{} `type:"structure"` + // The ID of the Data Catalog in which the function resides. + CatalogId *string `min:"1" type:"string"` + // The Java class that contains the function code. ClassName *string `min:"1" type:"string"` // The time at which the function was created. CreateTime *time.Time `type:"timestamp"` - // The name of the database where the function resides. + // The name of the catalog database that contains the function. DatabaseName *string `min:"1" type:"string"` // The name of the function. @@ -35975,6 +36475,12 @@ func (s UserDefinedFunction) GoString() string { return s.String() } +// SetCatalogId sets the CatalogId field's value. +func (s *UserDefinedFunction) SetCatalogId(v string) *UserDefinedFunction { + s.CatalogId = &v + return s +} + // SetClassName sets the ClassName field's value. func (s *UserDefinedFunction) SetClassName(v string) *UserDefinedFunction { s.ClassName = &v @@ -36747,6 +37253,14 @@ const ( DeleteBehaviorDeprecateInDatabase = "DEPRECATE_IN_DATABASE" ) +const ( + // EnableHybridValuesTrue is a EnableHybridValues enum value + EnableHybridValuesTrue = "TRUE" + + // EnableHybridValuesFalse is a EnableHybridValues enum value + EnableHybridValuesFalse = "FALSE" +) + const ( // ExistConditionMustExist is a ExistCondition enum value ExistConditionMustExist = "MUST_EXIST" @@ -36872,6 +37386,14 @@ const ( PrincipalTypeGroup = "GROUP" ) +const ( + // ResourceShareTypeForeign is a ResourceShareType enum value + ResourceShareTypeForeign = "FOREIGN" + + // ResourceShareTypeAll is a ResourceShareType enum value + ResourceShareTypeAll = "ALL" +) + const ( // ResourceTypeJar is a ResourceType enum value ResourceTypeJar = "JAR" diff --git a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go index 9241f58c9a6..349ae50b8af 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go @@ -4859,6 +4859,9 @@ type AmiDistributionConfiguration struct { // The description of the distribution configuration. Description *string `locationName:"description" min:"1" type:"string"` + // The KMS key identifier used to encrypt the distributed image. + KmsKeyId *string `locationName:"kmsKeyId" min:"1" type:"string"` + // Launch permissions can be used to configure which AWS accounts can use the // AMI to launch instances. LaunchPermission *LaunchPermissionConfiguration `locationName:"launchPermission" type:"structure"` @@ -4886,6 +4889,9 @@ func (s *AmiDistributionConfiguration) Validate() error { if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } + if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) + } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } @@ -4908,6 +4914,12 @@ func (s *AmiDistributionConfiguration) SetDescription(v string) *AmiDistribution return s } +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AmiDistributionConfiguration) SetKmsKeyId(v string) *AmiDistributionConfiguration { + s.KmsKeyId = &v + return s +} + // SetLaunchPermission sets the LaunchPermission field's value. func (s *AmiDistributionConfiguration) SetLaunchPermission(v *LaunchPermissionConfiguration) *AmiDistributionConfiguration { s.LaunchPermission = v @@ -9877,7 +9889,9 @@ func (s *InvalidVersionNumberException) RequestID() string { // Describes the configuration for a launch permission. The launch permission // modification request is sent to the EC2 ModifyImageAttribute (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyImageAttribute.html) // API on behalf of the user for each Region they have selected to distribute -// the AMI. +// the AMI. To make an AMI public, set the launch permission authorized accounts +// to all. See the examples for making an AMI public at EC2 ModifyImageAttribute +// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyImageAttribute.html). type LaunchPermissionConfiguration struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/lakeformation/api.go b/vendor/github.com/aws/aws-sdk-go/service/lakeformation/api.go index fe19b68cbf5..801d489d6a3 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/lakeformation/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/lakeformation/api.go @@ -402,7 +402,8 @@ func (c *LakeFormation) GetDataLakeSettingsRequest(input *GetDataLakeSettingsInp // GetDataLakeSettings API operation for AWS Lake Formation. // -// The AWS Lake Formation principal. +// Retrieves the list of the data lake administrators of a Lake Formation-managed +// data lake. // // 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 @@ -493,8 +494,9 @@ func (c *LakeFormation) GetEffectivePermissionsForPathRequest(input *GetEffectiv // GetEffectivePermissionsForPath API operation for AWS Lake Formation. // -// Returns the permissions for a specified table or database resource located -// at a path in Amazon S3. +// Returns the Lake Formation permissions for a specified table or database +// resource located at a path in Amazon S3. GetEffectivePermissionsForPath will +// not return databases and tables if the catalog is encrypted. // // 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 @@ -639,7 +641,7 @@ func (c *LakeFormation) GrantPermissionsRequest(input *GrantPermissionsInput) (r // and data organized in underlying data storage such as Amazon S3. // // For information about permissions, see Security and Access Control to Metadata -// and Data (https://docs-aws.amazon.com/michigan/latest/dg/security-data-access.html). +// and Data (https://docs-aws.amazon.com/lake-formation/latest/dg/security-data-access.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 @@ -737,7 +739,7 @@ func (c *LakeFormation) ListPermissionsRequest(input *ListPermissionsInput) (req // This operation returns only those permissions that have been explicitly granted. // // For information about permissions, see Security and Access Control to Metadata -// and Data (https://docs-aws.amazon.com/michigan/latest/dg/security-data-access.html). +// and Data (https://docs-aws.amazon.com/lake-formation/latest/dg/security-data-access.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 @@ -1018,7 +1020,13 @@ func (c *LakeFormation) PutDataLakeSettingsRequest(input *PutDataLakeSettingsInp // PutDataLakeSettings API operation for AWS Lake Formation. // -// The AWS Lake Formation principal. +// Sets the list of data lake administrators who have admin privileges on all +// resources managed by Lake Formation. For more information on admin privileges, +// see Granting Lake Formation Permissions (https://docs.aws.amazon.com/lake-formation/latest/dg/lake-formation-permissions.html). +// +// This API replaces the current list of data lake admins with the new list +// being passed. To add an admin, fetch the current list and add the new admin +// to that list and pass that list in this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1112,6 +1120,15 @@ func (c *LakeFormation) RegisterResourceRequest(input *RegisterResourceInput) (r // you register subsequent paths, Lake Formation adds the path to the existing // policy. // +// The following request registers a new location and gives AWS Lake Formation +// permission to use the service-linked role to access that location. +// +// ResourceArn = arn:aws:s3:::my-bucket UseServiceLinkedRole = true +// +// If UseServiceLinkedRole is not set to true, you must provide or set the RoleArn: +// +// arn:aws:iam::12345:role/my-data-access-role +// // 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. @@ -1780,7 +1797,8 @@ func (s *ConcurrentModificationException) RequestID() string { return s.RespMetadata.RequestID } -// The AWS Lake Formation principal. +// The AWS Lake Formation principal. Supported principals are IAM users or IAM +// roles. type DataLakePrincipal struct { _ struct{} `type:"structure"` @@ -1817,20 +1835,31 @@ func (s *DataLakePrincipal) SetDataLakePrincipalIdentifier(v string) *DataLakePr return s } -// The AWS Lake Formation principal. +// A structure representing a list of AWS Lake Formation principals designated +// as data lake administrators and lists of principal permission entries for +// default create database and default create table permissions. type DataLakeSettings struct { _ struct{} `type:"structure"` - // A list of up to three principal permissions entries for default create database - // permissions. + // A structure representing a list of up to three principal permissions entries + // for default create database permissions. CreateDatabaseDefaultPermissions []*PrincipalPermissions `type:"list"` - // A list of up to three principal permissions entries for default create table - // permissions. + // A structure representing a list of up to three principal permissions entries + // for default create table permissions. CreateTableDefaultPermissions []*PrincipalPermissions `type:"list"` - // A list of AWS Lake Formation principals. + // A list of AWS Lake Formation principals. Supported principals are IAM users + // or IAM roles. DataLakeAdmins []*DataLakePrincipal `type:"list"` + + // A list of the resource-owning account IDs that the caller's account can use + // to share their user access details (user ARNs). The user ARNs can be logged + // in the resource owner's AWS CloudTrail log. + // + // You may want to specify this property when you are in a high-trust boundary, + // such as the same team or company. + TrustedResourceOwners []*string `type:"list"` } // String returns the string representation @@ -1901,10 +1930,20 @@ func (s *DataLakeSettings) SetDataLakeAdmins(v []*DataLakePrincipal) *DataLakeSe return s } +// SetTrustedResourceOwners sets the TrustedResourceOwners field's value. +func (s *DataLakeSettings) SetTrustedResourceOwners(v []*string) *DataLakeSettings { + s.TrustedResourceOwners = v + return s +} + // A structure for a data location object where permissions are granted or revoked. type DataLocationResource struct { _ struct{} `type:"structure"` + // The identifier for the Data Catalog where the location is registered with + // AWS Lake Formation. By default, it is the account ID of the caller. + CatalogId *string `min:"1" type:"string"` + // The Amazon Resource Name (ARN) that uniquely identifies the data location // resource. // @@ -1925,6 +1964,9 @@ func (s DataLocationResource) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DataLocationResource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DataLocationResource"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } @@ -1935,6 +1977,12 @@ func (s *DataLocationResource) Validate() error { return nil } +// SetCatalogId sets the CatalogId field's value. +func (s *DataLocationResource) SetCatalogId(v string) *DataLocationResource { + s.CatalogId = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *DataLocationResource) SetResourceArn(v string) *DataLocationResource { s.ResourceArn = &v @@ -1945,6 +1993,10 @@ func (s *DataLocationResource) SetResourceArn(v string) *DataLocationResource { type DatabaseResource struct { _ struct{} `type:"structure"` + // The identifier for the Data Catalog. By default, it is the account ID of + // the caller. + CatalogId *string `min:"1" type:"string"` + // The name of the database resource. Unique to the Data Catalog. // // Name is a required field @@ -1964,6 +2016,9 @@ func (s DatabaseResource) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DatabaseResource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DatabaseResource"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -1977,6 +2032,12 @@ func (s *DatabaseResource) Validate() error { return nil } +// SetCatalogId sets the CatalogId field's value. +func (s *DatabaseResource) SetCatalogId(v string) *DatabaseResource { + s.CatalogId = &v + return s +} + // SetName sets the Name field's value. func (s *DatabaseResource) SetName(v string) *DatabaseResource { s.Name = &v @@ -2271,7 +2332,8 @@ func (s *GetDataLakeSettingsInput) SetCatalogId(v string) *GetDataLakeSettingsIn type GetDataLakeSettingsOutput struct { _ struct{} `type:"structure"` - // A list of AWS Lake Formation principals. + // A structure representing a list of AWS Lake Formation principals designated + // as data lake administrators. DataLakeSettings *DataLakeSettings `type:"structure"` } @@ -3030,7 +3092,8 @@ type PutDataLakeSettingsInput struct { // Formation environment. CatalogId *string `min:"1" type:"string"` - // A list of AWS Lake Formation principals. + // A structure representing a list of AWS Lake Formation principals designated + // as data lake administrators. // // DataLakeSettings is a required field DataLakeSettings *DataLakeSettings `type:"structure" required:"true"` @@ -3101,11 +3164,14 @@ type RegisterResourceInput struct { // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` - // The identifier for the role. + // The identifier for the role that registers the resource. RoleArn *string `type:"string"` - // Designates a trusted caller, an IAM principal, by registering this caller - // with the Data Catalog. + // Designates an AWS Identity and Access Management (IAM) service-linked role + // by registering this role with the Data Catalog. A service-linked role is + // a unique type of IAM role that is linked directly to Lake Formation. + // + // For more information, see Using Service-Linked Roles for Lake Formation (https://docs-aws.amazon.com/lake-formation/latest/dg/service-linked-roles.html). UseServiceLinkedRole *bool `type:"boolean"` } @@ -3314,7 +3380,7 @@ type RevokePermissionsInput struct { CatalogId *string `min:"1" type:"string"` // The permissions revoked to the principal on the resource. For information - // about permissions, see Security and Access Control to Metadata and Data (https://docs-aws.amazon.com/michigan/latest/dg/security-data-access.html). + // about permissions, see Security and Access Control to Metadata and Data (https://docs-aws.amazon.com/lake-formation/latest/dg/security-data-access.html). // // Permissions is a required field Permissions []*string `type:"list" required:"true"` @@ -3425,6 +3491,10 @@ func (s RevokePermissionsOutput) GoString() string { type TableResource struct { _ struct{} `type:"structure"` + // The identifier for the Data Catalog. By default, it is the account ID of + // the caller. + CatalogId *string `min:"1" type:"string"` + // The name of the database for the table. Unique to a Data Catalog. A database // is a set of associated table definitions organized into a logical group. // You can Grant and Revoke database privileges to a principal. @@ -3433,9 +3503,12 @@ type TableResource struct { DatabaseName *string `min:"1" type:"string" required:"true"` // The name of the table. + Name *string `min:"1" type:"string"` + + // A wildcard object representing every table under a database. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + // At least one of TableResource$Name or TableResource$TableWildcard is required. + TableWildcard *TableWildcard `type:"structure"` } // String returns the string representation @@ -3451,15 +3524,15 @@ func (s TableResource) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *TableResource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TableResource"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } if s.DatabaseName == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseName")) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } @@ -3470,6 +3543,12 @@ func (s *TableResource) Validate() error { return nil } +// SetCatalogId sets the CatalogId field's value. +func (s *TableResource) SetCatalogId(v string) *TableResource { + s.CatalogId = &v + return s +} + // SetDatabaseName sets the DatabaseName field's value. func (s *TableResource) SetDatabaseName(v string) *TableResource { s.DatabaseName = &v @@ -3482,6 +3561,27 @@ func (s *TableResource) SetName(v string) *TableResource { return s } +// SetTableWildcard sets the TableWildcard field's value. +func (s *TableResource) SetTableWildcard(v *TableWildcard) *TableResource { + s.TableWildcard = v + return s +} + +// A wildcard object representing every table under a database. +type TableWildcard struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TableWildcard) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TableWildcard) GoString() string { + return s.String() +} + // A structure for a table with columns object. This object is only used when // granting a SELECT permission. // @@ -3490,6 +3590,10 @@ func (s *TableResource) SetName(v string) *TableResource { type TableWithColumnsResource struct { _ struct{} `type:"structure"` + // The identifier for the Data Catalog. By default, it is the account ID of + // the caller. + CatalogId *string `min:"1" type:"string"` + // The list of column names for the table. At least one of ColumnNames or ColumnWildcard // is required. ColumnNames []*string `type:"list"` @@ -3501,11 +3605,15 @@ type TableWithColumnsResource struct { // The name of the database for the table with columns resource. Unique to the // Data Catalog. A database is a set of associated table definitions organized // into a logical group. You can Grant and Revoke database privileges to a principal. - DatabaseName *string `min:"1" type:"string"` + // + // DatabaseName is a required field + DatabaseName *string `min:"1" type:"string" required:"true"` // The name of the table resource. A table is a metadata definition that represents // your data. You can Grant and Revoke table privileges to a principal. - Name *string `min:"1" type:"string"` + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation @@ -3521,9 +3629,18 @@ func (s TableWithColumnsResource) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *TableWithColumnsResource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TableWithColumnsResource"} + if s.CatalogId != nil && len(*s.CatalogId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CatalogId", 1)) + } + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } @@ -3534,6 +3651,12 @@ func (s *TableWithColumnsResource) Validate() error { return nil } +// SetCatalogId sets the CatalogId field's value. +func (s *TableWithColumnsResource) SetCatalogId(v string) *TableWithColumnsResource { + s.CatalogId = &v + return s +} + // SetColumnNames sets the ColumnNames field's value. func (s *TableWithColumnsResource) SetColumnNames(v []*string) *TableWithColumnsResource { s.ColumnNames = v @@ -3703,6 +3826,9 @@ const ( // PermissionInsert is a Permission enum value PermissionInsert = "INSERT" + // PermissionDescribe is a Permission enum value + PermissionDescribe = "DESCRIBE" + // PermissionCreateDatabase is a Permission enum value PermissionCreateDatabase = "CREATE_DATABASE" diff --git a/vendor/github.com/aws/aws-sdk-go/service/organizations/api.go b/vendor/github.com/aws/aws-sdk-go/service/organizations/api.go index 8030be843eb..28be2aeac9e 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/organizations/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/organizations/api.go @@ -310,6 +310,8 @@ func (c *Organizations) AttachPolicyRequest(input *AttachPolicyInput) (req *requ // account. How the policy affects accounts depends on the type of policy. Refer // to the AWS Organizations User Guide for information about each policy type: // +// * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) +// // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * SERVICE_CONTROL_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html) @@ -15295,6 +15297,8 @@ type CreatePolicyInput struct { // The type of policy to create. You can specify one of the following values: // + // * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * SERVICE_CONTROL_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html) @@ -15937,6 +15941,8 @@ type DescribeEffectivePolicyInput struct { // The type of policy that you want information about. You can specify one of // the following values: // + // * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * TAG_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html) @@ -16092,6 +16098,11 @@ type DescribeOrganizationOutput struct { _ struct{} `type:"structure"` // A structure that contains information about the organization. + // + // The AvailablePolicyTypes part of the response is deprecated, and you shouldn't + // use it in your apps. It doesn't include any policy type supported by Organizations + // other than SCPs. To determine which policy types are enabled in your organization, + // use the ListRoots operation. Organization *Organization `type:"structure"` } @@ -16450,6 +16461,8 @@ type DisablePolicyTypeInput struct { // The policy type that you want to disable in this root. You can specify one // of the following values: // + // * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * SERVICE_CONTROL_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html) @@ -17027,6 +17040,8 @@ type EnablePolicyTypeInput struct { // The policy type that you want to enable. You can specify one of the following // values: // + // * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * SERVICE_CONTROL_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html) @@ -19195,6 +19210,8 @@ type ListPoliciesForTargetInput struct { // The type of policy that you want to include in the returned list. You must // specify one of the following values: // + // * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * SERVICE_CONTROL_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html) @@ -19335,6 +19352,8 @@ type ListPoliciesInput struct { // Specifies the type of policy that you want to include in the response. You // must specify one of the following values: // + // * AISERVICES_OPT_OUT_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) + // // * BACKUP_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html) // // * SERVICE_CONTROL_POLICY (http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html) @@ -19967,14 +19986,12 @@ type Organization struct { // in the AWS Organizations User Guide. Arn *string `type:"string"` - // A list of policy types that are enabled for this organization. For example, - // if your organization has all features enabled, then service control policies - // (SCPs) are included in the list. // - // Even if a policy type is shown as available in the organization, you can - // separately enable and disable them at the root level by using EnablePolicyType - // and DisablePolicyType. Use ListRoots to see the status of a policy type in - // that root. + // Do not use. This field is deprecated and doesn't provide complete information + // about the policies in your organization. + // + // To determine the policies that are enabled and available for use in your + // organization, use the ListRoots operation instead. AvailablePolicyTypes []*PolicyTypeSummary `type:"list"` // Specifies the functionality that currently is available to the organization. @@ -22124,6 +22141,9 @@ const ( // EffectivePolicyTypeBackupPolicy is a EffectivePolicyType enum value EffectivePolicyTypeBackupPolicy = "BACKUP_POLICY" + + // EffectivePolicyTypeAiservicesOptOutPolicy is a EffectivePolicyType enum value + EffectivePolicyTypeAiservicesOptOutPolicy = "AISERVICES_OPT_OUT_POLICY" ) const ( @@ -22310,6 +22330,9 @@ const ( // PolicyTypeBackupPolicy is a PolicyType enum value PolicyTypeBackupPolicy = "BACKUP_POLICY" + + // PolicyTypeAiservicesOptOutPolicy is a PolicyType enum value + PolicyTypeAiservicesOptOutPolicy = "AISERVICES_OPT_OUT_POLICY" ) const ( diff --git a/vendor/github.com/aws/aws-sdk-go/service/quicksight/api.go b/vendor/github.com/aws/aws-sdk-go/service/quicksight/api.go index 402a395273d..a8d643131c5 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/quicksight/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/quicksight/api.go @@ -945,6 +945,9 @@ func (c *QuickSight) CreateTemplateRequest(input *CreateTemplateInput) (req *req // Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * InternalFailureException // An internal failure occurred. // @@ -1045,6 +1048,9 @@ func (c *QuickSight) CreateTemplateAliasRequest(input *CreateTemplateAliasInput) // Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * InternalFailureException // An internal failure occurred. // @@ -1070,6 +1076,221 @@ func (c *QuickSight) CreateTemplateAliasWithContext(ctx aws.Context, input *Crea return out, req.Send() } +const opCreateTheme = "CreateTheme" + +// CreateThemeRequest generates a "aws/request.Request" representing the +// client's request for the CreateTheme 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 CreateTheme for more information on using the CreateTheme +// 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 CreateThemeRequest method. +// req, resp := client.CreateThemeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateTheme +func (c *QuickSight) CreateThemeRequest(input *CreateThemeInput) (req *request.Request, output *CreateThemeOutput) { + op := &request.Operation{ + Name: opCreateTheme, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}", + } + + if input == nil { + input = &CreateThemeInput{} + } + + output = &CreateThemeOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTheme API operation for Amazon QuickSight. +// +// 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 (https://docs.aws.amazon.com/quicksight/latest/user/themes-in-quicksight.html) +// in the Amazon QuickSight User Guide. +// +// 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 QuickSight's +// API operation CreateTheme for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * LimitExceededException +// A limit is exceeded. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateTheme +func (c *QuickSight) CreateTheme(input *CreateThemeInput) (*CreateThemeOutput, error) { + req, out := c.CreateThemeRequest(input) + return out, req.Send() +} + +// CreateThemeWithContext is the same as CreateTheme with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTheme 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 *QuickSight) CreateThemeWithContext(ctx aws.Context, input *CreateThemeInput, opts ...request.Option) (*CreateThemeOutput, error) { + req, out := c.CreateThemeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateThemeAlias = "CreateThemeAlias" + +// CreateThemeAliasRequest generates a "aws/request.Request" representing the +// client's request for the CreateThemeAlias 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 CreateThemeAlias for more information on using the CreateThemeAlias +// 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 CreateThemeAliasRequest method. +// req, resp := client.CreateThemeAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateThemeAlias +func (c *QuickSight) CreateThemeAliasRequest(input *CreateThemeAliasInput) (req *request.Request, output *CreateThemeAliasOutput) { + op := &request.Operation{ + Name: opCreateThemeAlias, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}", + } + + if input == nil { + input = &CreateThemeAliasInput{} + } + + output = &CreateThemeAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateThemeAlias API operation for Amazon QuickSight. +// +// Creates a theme alias for a theme. +// +// 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 QuickSight's +// API operation CreateThemeAlias for usage and error information. +// +// Returned Error Types: +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * LimitExceededException +// A limit is exceeded. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateThemeAlias +func (c *QuickSight) CreateThemeAlias(input *CreateThemeAliasInput) (*CreateThemeAliasOutput, error) { + req, out := c.CreateThemeAliasRequest(input) + return out, req.Send() +} + +// CreateThemeAliasWithContext is the same as CreateThemeAlias with the addition of +// the ability to pass a context and additional request options. +// +// See CreateThemeAlias 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 *QuickSight) CreateThemeAliasWithContext(ctx aws.Context, input *CreateThemeAliasInput, opts ...request.Option) (*CreateThemeAliasOutput, error) { + req, out := c.CreateThemeAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDashboard = "DeleteDashboard" // DeleteDashboardRequest generates a "aws/request.Request" representing the @@ -1831,6 +2052,9 @@ func (c *QuickSight) DeleteTemplateAliasRequest(input *DeleteTemplateAliasInput) // Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * InternalFailureException // An internal failure occurred. // @@ -1856,60 +2080,58 @@ func (c *QuickSight) DeleteTemplateAliasWithContext(ctx aws.Context, input *Dele return out, req.Send() } -const opDeleteUser = "DeleteUser" +const opDeleteTheme = "DeleteTheme" -// DeleteUserRequest generates a "aws/request.Request" representing the -// client's request for the DeleteUser operation. The "output" return +// DeleteThemeRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTheme 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 DeleteUser for more information on using the DeleteUser +// See DeleteTheme for more information on using the DeleteTheme // 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 DeleteUserRequest method. -// req, resp := client.DeleteUserRequest(params) +// // Example sending a request using the DeleteThemeRequest method. +// req, resp := client.DeleteThemeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUser -func (c *QuickSight) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteTheme +func (c *QuickSight) DeleteThemeRequest(input *DeleteThemeInput) (req *request.Request, output *DeleteThemeOutput) { op := &request.Operation{ - Name: opDeleteUser, + Name: opDeleteTheme, HTTPMethod: "DELETE", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}", } if input == nil { - input = &DeleteUserInput{} + input = &DeleteThemeInput{} } - output = &DeleteUserOutput{} + output = &DeleteThemeOutput{} req = c.newRequest(op, input, output) return } -// DeleteUser API operation for Amazon QuickSight. +// DeleteTheme API operation for Amazon QuickSight. // -// Deletes the Amazon QuickSight user that is associated with the identity of -// the AWS 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. +// Deletes a theme. // // 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 QuickSight's -// API operation DeleteUser for usage and error information. +// API operation DeleteTheme for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -1919,6 +2141,9 @@ func (c *QuickSight) DeleteUserRequest(input *DeleteUserInput) (req *request.Req // your policies have the correct permissions, and that you are using the correct // access keys. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // @@ -1928,94 +2153,95 @@ func (c *QuickSight) DeleteUserRequest(input *DeleteUserInput) (req *request.Req // * ThrottlingException // Access is throttled. // +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUser -func (c *QuickSight) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { - req, out := c.DeleteUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteTheme +func (c *QuickSight) DeleteTheme(input *DeleteThemeInput) (*DeleteThemeOutput, error) { + req, out := c.DeleteThemeRequest(input) return out, req.Send() } -// DeleteUserWithContext is the same as DeleteUser with the addition of +// DeleteThemeWithContext is the same as DeleteTheme with the addition of // the ability to pass a context and additional request options. // -// See DeleteUser for details on how to use this API operation. +// See DeleteTheme 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 *QuickSight) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput, opts ...request.Option) (*DeleteUserOutput, error) { - req, out := c.DeleteUserRequest(input) +func (c *QuickSight) DeleteThemeWithContext(ctx aws.Context, input *DeleteThemeInput, opts ...request.Option) (*DeleteThemeOutput, error) { + req, out := c.DeleteThemeRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDeleteUserByPrincipalId = "DeleteUserByPrincipalId" +const opDeleteThemeAlias = "DeleteThemeAlias" -// DeleteUserByPrincipalIdRequest generates a "aws/request.Request" representing the -// client's request for the DeleteUserByPrincipalId operation. The "output" return +// DeleteThemeAliasRequest generates a "aws/request.Request" representing the +// client's request for the DeleteThemeAlias 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 DeleteUserByPrincipalId for more information on using the DeleteUserByPrincipalId +// See DeleteThemeAlias for more information on using the DeleteThemeAlias // 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 DeleteUserByPrincipalIdRequest method. -// req, resp := client.DeleteUserByPrincipalIdRequest(params) +// // Example sending a request using the DeleteThemeAliasRequest method. +// req, resp := client.DeleteThemeAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUserByPrincipalId -func (c *QuickSight) DeleteUserByPrincipalIdRequest(input *DeleteUserByPrincipalIdInput) (req *request.Request, output *DeleteUserByPrincipalIdOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteThemeAlias +func (c *QuickSight) DeleteThemeAliasRequest(input *DeleteThemeAliasInput) (req *request.Request, output *DeleteThemeAliasOutput) { op := &request.Operation{ - Name: opDeleteUserByPrincipalId, + Name: opDeleteThemeAlias, HTTPMethod: "DELETE", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/user-principals/{PrincipalId}", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}", } if input == nil { - input = &DeleteUserByPrincipalIdInput{} + input = &DeleteThemeAliasInput{} } - output = &DeleteUserByPrincipalIdOutput{} + output = &DeleteThemeAliasOutput{} req = c.newRequest(op, input, output) return } -// DeleteUserByPrincipalId API operation for Amazon QuickSight. +// DeleteThemeAlias API operation for Amazon QuickSight. // -// Deletes a user identified by its principal ID. +// 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. // // 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 QuickSight's -// API operation DeleteUserByPrincipalId for usage and error information. +// API operation DeleteThemeAlias for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. @@ -2026,39 +2252,240 @@ func (c *QuickSight) DeleteUserByPrincipalIdRequest(input *DeleteUserByPrincipal // * ThrottlingException // Access is throttled. // +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUserByPrincipalId -func (c *QuickSight) DeleteUserByPrincipalId(input *DeleteUserByPrincipalIdInput) (*DeleteUserByPrincipalIdOutput, error) { - req, out := c.DeleteUserByPrincipalIdRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteThemeAlias +func (c *QuickSight) DeleteThemeAlias(input *DeleteThemeAliasInput) (*DeleteThemeAliasOutput, error) { + req, out := c.DeleteThemeAliasRequest(input) return out, req.Send() } -// DeleteUserByPrincipalIdWithContext is the same as DeleteUserByPrincipalId with the addition of +// DeleteThemeAliasWithContext is the same as DeleteThemeAlias with the addition of // the ability to pass a context and additional request options. // -// See DeleteUserByPrincipalId for details on how to use this API operation. +// See DeleteThemeAlias 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 *QuickSight) DeleteUserByPrincipalIdWithContext(ctx aws.Context, input *DeleteUserByPrincipalIdInput, opts ...request.Option) (*DeleteUserByPrincipalIdOutput, error) { - req, out := c.DeleteUserByPrincipalIdRequest(input) +func (c *QuickSight) DeleteThemeAliasWithContext(ctx aws.Context, input *DeleteThemeAliasInput, opts ...request.Option) (*DeleteThemeAliasOutput, error) { + req, out := c.DeleteThemeAliasRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDescribeDashboard = "DescribeDashboard" +const opDeleteUser = "DeleteUser" -// DescribeDashboardRequest generates a "aws/request.Request" representing the -// client's request for the DescribeDashboard operation. The "output" return -// value will be populated with the request's response once the request completes +// DeleteUserRequest generates a "aws/request.Request" representing the +// client's request for the DeleteUser 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 DeleteUser for more information on using the DeleteUser +// 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 DeleteUserRequest method. +// req, resp := client.DeleteUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUser +func (c *QuickSight) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { + op := &request.Operation{ + Name: opDeleteUser, + HTTPMethod: "DELETE", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}", + } + + if input == nil { + input = &DeleteUserInput{} + } + + output = &DeleteUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteUser API operation for Amazon QuickSight. +// +// Deletes the Amazon QuickSight user that is associated with the identity of +// the AWS 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. +// +// 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 QuickSight's +// API operation DeleteUser for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * InternalFailureException +// An internal failure occurred. +// +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUser +func (c *QuickSight) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { + req, out := c.DeleteUserRequest(input) + return out, req.Send() +} + +// DeleteUserWithContext is the same as DeleteUser with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteUser 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 *QuickSight) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput, opts ...request.Option) (*DeleteUserOutput, error) { + req, out := c.DeleteUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteUserByPrincipalId = "DeleteUserByPrincipalId" + +// DeleteUserByPrincipalIdRequest generates a "aws/request.Request" representing the +// client's request for the DeleteUserByPrincipalId 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 DeleteUserByPrincipalId for more information on using the DeleteUserByPrincipalId +// 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 DeleteUserByPrincipalIdRequest method. +// req, resp := client.DeleteUserByPrincipalIdRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUserByPrincipalId +func (c *QuickSight) DeleteUserByPrincipalIdRequest(input *DeleteUserByPrincipalIdInput) (req *request.Request, output *DeleteUserByPrincipalIdOutput) { + op := &request.Operation{ + Name: opDeleteUserByPrincipalId, + HTTPMethod: "DELETE", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/user-principals/{PrincipalId}", + } + + if input == nil { + input = &DeleteUserByPrincipalIdInput{} + } + + output = &DeleteUserByPrincipalIdOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteUserByPrincipalId API operation for Amazon QuickSight. +// +// Deletes a user identified by its principal ID. +// +// 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 QuickSight's +// API operation DeleteUserByPrincipalId for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * InternalFailureException +// An internal failure occurred. +// +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DeleteUserByPrincipalId +func (c *QuickSight) DeleteUserByPrincipalId(input *DeleteUserByPrincipalIdInput) (*DeleteUserByPrincipalIdOutput, error) { + req, out := c.DeleteUserByPrincipalIdRequest(input) + return out, req.Send() +} + +// DeleteUserByPrincipalIdWithContext is the same as DeleteUserByPrincipalId with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteUserByPrincipalId 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 *QuickSight) DeleteUserByPrincipalIdWithContext(ctx aws.Context, input *DeleteUserByPrincipalIdInput, opts ...request.Option) (*DeleteUserByPrincipalIdOutput, error) { + req, out := c.DeleteUserByPrincipalIdRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeDashboard = "DescribeDashboard" + +// DescribeDashboardRequest generates a "aws/request.Request" representing the +// client's request for the DescribeDashboard 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. @@ -3225,58 +3652,58 @@ func (c *QuickSight) DescribeTemplatePermissionsWithContext(ctx aws.Context, inp return out, req.Send() } -const opDescribeUser = "DescribeUser" +const opDescribeTheme = "DescribeTheme" -// DescribeUserRequest generates a "aws/request.Request" representing the -// client's request for the DescribeUser operation. The "output" return +// DescribeThemeRequest generates a "aws/request.Request" representing the +// client's request for the DescribeTheme 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 DescribeUser for more information on using the DescribeUser +// See DescribeTheme for more information on using the DescribeTheme // 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 DescribeUserRequest method. -// req, resp := client.DescribeUserRequest(params) +// // Example sending a request using the DescribeThemeRequest method. +// req, resp := client.DescribeThemeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeUser -func (c *QuickSight) DescribeUserRequest(input *DescribeUserInput) (req *request.Request, output *DescribeUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeTheme +func (c *QuickSight) DescribeThemeRequest(input *DescribeThemeInput) (req *request.Request, output *DescribeThemeOutput) { op := &request.Operation{ - Name: opDescribeUser, + Name: opDescribeTheme, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}", } if input == nil { - input = &DescribeUserInput{} + input = &DescribeThemeInput{} } - output = &DescribeUserOutput{} + output = &DescribeThemeOutput{} req = c.newRequest(op, input, output) return } -// DescribeUser API operation for Amazon QuickSight. +// DescribeTheme API operation for Amazon QuickSight. // -// Returns information about a user, given the user name. +// Describes a theme. // // 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 QuickSight's -// API operation DescribeUser for usage and error information. +// API operation DescribeTheme for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -3289,149 +3716,112 @@ func (c *QuickSight) DescribeUserRequest(input *DescribeUserInput) (req *request // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // +// * ResourceExistsException +// The resource specified already exists. +// // * ResourceNotFoundException // One or more resources can't be found. // // * ThrottlingException // Access is throttled. // +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeUser -func (c *QuickSight) DescribeUser(input *DescribeUserInput) (*DescribeUserOutput, error) { - req, out := c.DescribeUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeTheme +func (c *QuickSight) DescribeTheme(input *DescribeThemeInput) (*DescribeThemeOutput, error) { + req, out := c.DescribeThemeRequest(input) return out, req.Send() } -// DescribeUserWithContext is the same as DescribeUser with the addition of +// DescribeThemeWithContext is the same as DescribeTheme with the addition of // the ability to pass a context and additional request options. // -// See DescribeUser for details on how to use this API operation. +// See DescribeTheme 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 *QuickSight) DescribeUserWithContext(ctx aws.Context, input *DescribeUserInput, opts ...request.Option) (*DescribeUserOutput, error) { - req, out := c.DescribeUserRequest(input) +func (c *QuickSight) DescribeThemeWithContext(ctx aws.Context, input *DescribeThemeInput, opts ...request.Option) (*DescribeThemeOutput, error) { + req, out := c.DescribeThemeRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetDashboardEmbedUrl = "GetDashboardEmbedUrl" +const opDescribeThemeAlias = "DescribeThemeAlias" -// GetDashboardEmbedUrlRequest generates a "aws/request.Request" representing the -// client's request for the GetDashboardEmbedUrl operation. The "output" return +// DescribeThemeAliasRequest generates a "aws/request.Request" representing the +// client's request for the DescribeThemeAlias 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 GetDashboardEmbedUrl for more information on using the GetDashboardEmbedUrl +// See DescribeThemeAlias for more information on using the DescribeThemeAlias // 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 GetDashboardEmbedUrlRequest method. -// req, resp := client.GetDashboardEmbedUrlRequest(params) +// // Example sending a request using the DescribeThemeAliasRequest method. +// req, resp := client.DescribeThemeAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/GetDashboardEmbedUrl -func (c *QuickSight) GetDashboardEmbedUrlRequest(input *GetDashboardEmbedUrlInput) (req *request.Request, output *GetDashboardEmbedUrlOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeThemeAlias +func (c *QuickSight) DescribeThemeAliasRequest(input *DescribeThemeAliasInput) (req *request.Request, output *DescribeThemeAliasOutput) { op := &request.Operation{ - Name: opGetDashboardEmbedUrl, + Name: opDescribeThemeAlias, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/embed-url", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}", } if input == nil { - input = &GetDashboardEmbedUrlInput{} + input = &DescribeThemeAliasInput{} } - output = &GetDashboardEmbedUrlOutput{} + output = &DescribeThemeAliasOutput{} req = c.newRequest(op, input, output) return } -// GetDashboardEmbedUrl API operation for Amazon QuickSight. +// DescribeThemeAlias API operation for Amazon QuickSight. // -// Generates a URL and authorization code that you can embed 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 Amazon QuickSight Dashboards (https://docs.aws.amazon.com/quicksight/latest/user/embedding-dashboards.html) -// in the Amazon QuickSight User Guide or Embedding Amazon QuickSight Dashboards -// (https://docs.aws.amazon.com/quicksight/latest/APIReference/qs-dev-embedded-dashboards.html) -// in the Amazon QuickSight API Reference. +// Describes the alias for a theme. // // 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 QuickSight's -// API operation GetDashboardEmbedUrl for usage and error information. +// API operation DescribeThemeAlias for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ResourceExistsException -// The resource specified already exists. -// // * ResourceNotFoundException // One or more resources can't be found. // // * ThrottlingException // Access is throttled. // -// * DomainNotWhitelistedException -// The domain specified isn't on the allow list. All domains for embedded dashboards -// must be added to the approved list by an Amazon QuickSight admin. -// -// * UserNotFoundException -// The user with the provided name isn't found. This error can happen in any -// operation that requires finding a user based on a provided user name, such -// as DeleteUser, DescribeUser, and so on. -// -// * IdentityTypeNotSupportedException -// The identity type specified isn't supported. Supported identity types include -// IAM and QUICKSIGHT. -// -// * SessionLifetimeInMinutesInvalidException -// The number of minutes specified for the lifetime of a session isn't valid. -// The session lifetime must be 15-600 minutes. -// // * 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. @@ -3441,88 +3831,89 @@ func (c *QuickSight) GetDashboardEmbedUrlRequest(input *GetDashboardEmbedUrlInpu // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/GetDashboardEmbedUrl -func (c *QuickSight) GetDashboardEmbedUrl(input *GetDashboardEmbedUrlInput) (*GetDashboardEmbedUrlOutput, error) { - req, out := c.GetDashboardEmbedUrlRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeThemeAlias +func (c *QuickSight) DescribeThemeAlias(input *DescribeThemeAliasInput) (*DescribeThemeAliasOutput, error) { + req, out := c.DescribeThemeAliasRequest(input) return out, req.Send() } -// GetDashboardEmbedUrlWithContext is the same as GetDashboardEmbedUrl with the addition of +// DescribeThemeAliasWithContext is the same as DescribeThemeAlias with the addition of // the ability to pass a context and additional request options. // -// See GetDashboardEmbedUrl for details on how to use this API operation. +// See DescribeThemeAlias 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 *QuickSight) GetDashboardEmbedUrlWithContext(ctx aws.Context, input *GetDashboardEmbedUrlInput, opts ...request.Option) (*GetDashboardEmbedUrlOutput, error) { - req, out := c.GetDashboardEmbedUrlRequest(input) +func (c *QuickSight) DescribeThemeAliasWithContext(ctx aws.Context, input *DescribeThemeAliasInput, opts ...request.Option) (*DescribeThemeAliasOutput, error) { + req, out := c.DescribeThemeAliasRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListDashboardVersions = "ListDashboardVersions" +const opDescribeThemePermissions = "DescribeThemePermissions" -// ListDashboardVersionsRequest generates a "aws/request.Request" representing the -// client's request for the ListDashboardVersions operation. The "output" return +// DescribeThemePermissionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeThemePermissions 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 ListDashboardVersions for more information on using the ListDashboardVersions +// See DescribeThemePermissions for more information on using the DescribeThemePermissions // 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 ListDashboardVersionsRequest method. -// req, resp := client.ListDashboardVersionsRequest(params) +// // Example sending a request using the DescribeThemePermissionsRequest method. +// req, resp := client.DescribeThemePermissionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboardVersions -func (c *QuickSight) ListDashboardVersionsRequest(input *ListDashboardVersionsInput) (req *request.Request, output *ListDashboardVersionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeThemePermissions +func (c *QuickSight) DescribeThemePermissionsRequest(input *DescribeThemePermissionsInput) (req *request.Request, output *DescribeThemePermissionsOutput) { op := &request.Operation{ - Name: opListDashboardVersions, + Name: opDescribeThemePermissions, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/versions", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/permissions", } if input == nil { - input = &ListDashboardVersionsInput{} + input = &DescribeThemePermissionsInput{} } - output = &ListDashboardVersionsOutput{} + output = &DescribeThemePermissionsOutput{} req = c.newRequest(op, input, output) return } -// ListDashboardVersions API operation for Amazon QuickSight. +// DescribeThemePermissions API operation for Amazon QuickSight. // -// Lists all the versions of the dashboards in the QuickSight subscription. +// Describes the read and write permissions for a theme. // // 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 QuickSight's -// API operation ListDashboardVersions for usage and error information. +// API operation DescribeThemePermissions for usage and error information. // // Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // @@ -3532,9 +3923,6 @@ func (c *QuickSight) ListDashboardVersionsRequest(input *ListDashboardVersionsIn // * ThrottlingException // Access is throttled. // -// * InvalidNextTokenException -// The NextToken value isn't valid. -// // * 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. @@ -3544,260 +3932,297 @@ func (c *QuickSight) ListDashboardVersionsRequest(input *ListDashboardVersionsIn // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboardVersions -func (c *QuickSight) ListDashboardVersions(input *ListDashboardVersionsInput) (*ListDashboardVersionsOutput, error) { - req, out := c.ListDashboardVersionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeThemePermissions +func (c *QuickSight) DescribeThemePermissions(input *DescribeThemePermissionsInput) (*DescribeThemePermissionsOutput, error) { + req, out := c.DescribeThemePermissionsRequest(input) return out, req.Send() } -// ListDashboardVersionsWithContext is the same as ListDashboardVersions with the addition of +// DescribeThemePermissionsWithContext is the same as DescribeThemePermissions with the addition of // the ability to pass a context and additional request options. // -// See ListDashboardVersions for details on how to use this API operation. +// See DescribeThemePermissions 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 *QuickSight) ListDashboardVersionsWithContext(ctx aws.Context, input *ListDashboardVersionsInput, opts ...request.Option) (*ListDashboardVersionsOutput, error) { - req, out := c.ListDashboardVersionsRequest(input) +func (c *QuickSight) DescribeThemePermissionsWithContext(ctx aws.Context, input *DescribeThemePermissionsInput, opts ...request.Option) (*DescribeThemePermissionsOutput, error) { + req, out := c.DescribeThemePermissionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListDashboardVersionsPages iterates over the pages of a ListDashboardVersions operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListDashboardVersions 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 ListDashboardVersions operation. -// pageNum := 0 -// err := client.ListDashboardVersionsPages(params, -// func(page *quicksight.ListDashboardVersionsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *QuickSight) ListDashboardVersionsPages(input *ListDashboardVersionsInput, fn func(*ListDashboardVersionsOutput, bool) bool) error { - return c.ListDashboardVersionsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListDashboardVersionsPagesWithContext same as ListDashboardVersionsPages 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 *QuickSight) ListDashboardVersionsPagesWithContext(ctx aws.Context, input *ListDashboardVersionsInput, fn func(*ListDashboardVersionsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListDashboardVersionsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListDashboardVersionsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListDashboardVersionsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListDashboards = "ListDashboards" +const opDescribeUser = "DescribeUser" -// ListDashboardsRequest generates a "aws/request.Request" representing the -// client's request for the ListDashboards operation. The "output" return +// DescribeUserRequest generates a "aws/request.Request" representing the +// client's request for the DescribeUser 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 ListDashboards for more information on using the ListDashboards +// See DescribeUser for more information on using the DescribeUser // 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 ListDashboardsRequest method. -// req, resp := client.ListDashboardsRequest(params) +// // Example sending a request using the DescribeUserRequest method. +// req, resp := client.DescribeUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboards -func (c *QuickSight) ListDashboardsRequest(input *ListDashboardsInput) (req *request.Request, output *ListDashboardsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeUser +func (c *QuickSight) DescribeUserRequest(input *DescribeUserInput) (req *request.Request, output *DescribeUserOutput) { op := &request.Operation{ - Name: opListDashboards, + Name: opDescribeUser, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/dashboards", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}", } if input == nil { - input = &ListDashboardsInput{} + input = &DescribeUserInput{} } - output = &ListDashboardsOutput{} + output = &DescribeUserOutput{} req = c.newRequest(op, input, output) return } -// ListDashboards API operation for Amazon QuickSight. +// DescribeUser API operation for Amazon QuickSight. // -// Lists dashboards in an AWS account. +// Returns information about a user, given the user name. // // 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 QuickSight's -// API operation ListDashboards for usage and error information. +// API operation DescribeUser for usage and error information. // // Returned Error Types: -// * ThrottlingException -// Access is throttled. +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. // -// * InvalidNextTokenException -// The NextToken value isn't valid. +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. // -// * 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. -// Not every operation and capability is available in every edition. +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboards -func (c *QuickSight) ListDashboards(input *ListDashboardsInput) (*ListDashboardsOutput, error) { - req, out := c.ListDashboardsRequest(input) +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DescribeUser +func (c *QuickSight) DescribeUser(input *DescribeUserInput) (*DescribeUserOutput, error) { + req, out := c.DescribeUserRequest(input) return out, req.Send() } -// ListDashboardsWithContext is the same as ListDashboards with the addition of +// DescribeUserWithContext is the same as DescribeUser with the addition of // the ability to pass a context and additional request options. // -// See ListDashboards for details on how to use this API operation. +// See DescribeUser 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 *QuickSight) ListDashboardsWithContext(ctx aws.Context, input *ListDashboardsInput, opts ...request.Option) (*ListDashboardsOutput, error) { - req, out := c.ListDashboardsRequest(input) +func (c *QuickSight) DescribeUserWithContext(ctx aws.Context, input *DescribeUserInput, opts ...request.Option) (*DescribeUserOutput, error) { + req, out := c.DescribeUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListDashboardsPages iterates over the pages of a ListDashboards operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. +const opGetDashboardEmbedUrl = "GetDashboardEmbedUrl" + +// GetDashboardEmbedUrlRequest generates a "aws/request.Request" representing the +// client's request for the GetDashboardEmbedUrl operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. // -// See ListDashboards method for more information on how to use this operation. +// 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. // -// Note: This operation can generate multiple requests to a service. +// See GetDashboardEmbedUrl for more information on using the GetDashboardEmbedUrl +// API call, and error handling. // -// // Example iterating over at most 3 pages of a ListDashboards operation. -// pageNum := 0 -// err := client.ListDashboardsPages(params, -// func(page *quicksight.ListDashboardsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) +// 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. // -func (c *QuickSight) ListDashboardsPages(input *ListDashboardsInput, fn func(*ListDashboardsOutput, bool) bool) error { - return c.ListDashboardsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListDashboardsPagesWithContext same as ListDashboardsPages 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 *QuickSight) ListDashboardsPagesWithContext(ctx aws.Context, input *ListDashboardsInput, fn func(*ListDashboardsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListDashboardsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListDashboardsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, +// // Example sending a request using the GetDashboardEmbedUrlRequest method. +// req, resp := client.GetDashboardEmbedUrlRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/GetDashboardEmbedUrl +func (c *QuickSight) GetDashboardEmbedUrlRequest(input *GetDashboardEmbedUrlInput) (req *request.Request, output *GetDashboardEmbedUrlOutput) { + op := &request.Operation{ + Name: opGetDashboardEmbedUrl, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/embed-url", } - for p.Next() { - if !fn(p.Page().(*ListDashboardsOutput), !p.HasNextPage()) { - break - } + if input == nil { + input = &GetDashboardEmbedUrlInput{} } - return p.Err() + output = &GetDashboardEmbedUrlOutput{} + req = c.newRequest(op, input, output) + return } -const opListDataSets = "ListDataSets" +// GetDashboardEmbedUrl API operation for Amazon QuickSight. +// +// Generates a URL and authorization code that you can embed 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 Amazon QuickSight Dashboards (https://docs.aws.amazon.com/quicksight/latest/user/embedding-dashboards.html) +// in the Amazon QuickSight User Guide or Embedding Amazon QuickSight Dashboards +// (https://docs.aws.amazon.com/quicksight/latest/APIReference/qs-dev-embedded-dashboards.html) +// in the Amazon QuickSight API Reference. +// +// 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 QuickSight's +// API operation GetDashboardEmbedUrl for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * DomainNotWhitelistedException +// The domain specified isn't on the allow list. All domains for embedded dashboards +// must be added to the approved list by an Amazon QuickSight admin. +// +// * UserNotFoundException +// The user with the provided name isn't found. This error can happen in any +// operation that requires finding a user based on a provided user name, such +// as DeleteUser, DescribeUser, and so on. +// +// * IdentityTypeNotSupportedException +// The identity type specified isn't supported. Supported identity types include +// IAM and QUICKSIGHT. +// +// * SessionLifetimeInMinutesInvalidException +// The number of minutes specified for the lifetime of a session isn't valid. +// The session lifetime must be 15-600 minutes. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/GetDashboardEmbedUrl +func (c *QuickSight) GetDashboardEmbedUrl(input *GetDashboardEmbedUrlInput) (*GetDashboardEmbedUrlOutput, error) { + req, out := c.GetDashboardEmbedUrlRequest(input) + return out, req.Send() +} -// ListDataSetsRequest generates a "aws/request.Request" representing the -// client's request for the ListDataSets operation. The "output" return +// GetDashboardEmbedUrlWithContext is the same as GetDashboardEmbedUrl with the addition of +// the ability to pass a context and additional request options. +// +// See GetDashboardEmbedUrl 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 *QuickSight) GetDashboardEmbedUrlWithContext(ctx aws.Context, input *GetDashboardEmbedUrlInput, opts ...request.Option) (*GetDashboardEmbedUrlOutput, error) { + req, out := c.GetDashboardEmbedUrlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDashboardVersions = "ListDashboardVersions" + +// ListDashboardVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListDashboardVersions 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 ListDataSets for more information on using the ListDataSets +// See ListDashboardVersions for more information on using the ListDashboardVersions // 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 ListDataSetsRequest method. -// req, resp := client.ListDataSetsRequest(params) +// // Example sending a request using the ListDashboardVersionsRequest method. +// req, resp := client.ListDashboardVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSets -func (c *QuickSight) ListDataSetsRequest(input *ListDataSetsInput) (req *request.Request, output *ListDataSetsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboardVersions +func (c *QuickSight) ListDashboardVersionsRequest(input *ListDashboardVersionsInput) (req *request.Request, output *ListDashboardVersionsOutput) { op := &request.Operation{ - Name: opListDataSets, + Name: opListDashboardVersions, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/data-sets", + HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/versions", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -3807,107 +4232,106 @@ func (c *QuickSight) ListDataSetsRequest(input *ListDataSetsInput) (req *request } if input == nil { - input = &ListDataSetsInput{} + input = &ListDashboardVersionsInput{} } - output = &ListDataSetsOutput{} + output = &ListDashboardVersionsOutput{} req = c.newRequest(op, input, output) return } -// ListDataSets API operation for Amazon QuickSight. -// -// Lists all of the datasets belonging to the current AWS account in an AWS -// Region. +// ListDashboardVersions API operation for Amazon QuickSight. // -// The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/*. +// Lists all the versions of the dashboards in the 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 // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation ListDataSets for usage and error information. +// API operation ListDashboardVersions for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // +// * ResourceNotFoundException +// One or more resources can't be found. +// // * ThrottlingException // Access is throttled. // // * InvalidNextTokenException // The NextToken value isn't valid. // +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSets -func (c *QuickSight) ListDataSets(input *ListDataSetsInput) (*ListDataSetsOutput, error) { - req, out := c.ListDataSetsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboardVersions +func (c *QuickSight) ListDashboardVersions(input *ListDashboardVersionsInput) (*ListDashboardVersionsOutput, error) { + req, out := c.ListDashboardVersionsRequest(input) return out, req.Send() } -// ListDataSetsWithContext is the same as ListDataSets with the addition of +// ListDashboardVersionsWithContext is the same as ListDashboardVersions with the addition of // the ability to pass a context and additional request options. // -// See ListDataSets for details on how to use this API operation. +// See ListDashboardVersions 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 *QuickSight) ListDataSetsWithContext(ctx aws.Context, input *ListDataSetsInput, opts ...request.Option) (*ListDataSetsOutput, error) { - req, out := c.ListDataSetsRequest(input) +func (c *QuickSight) ListDashboardVersionsWithContext(ctx aws.Context, input *ListDashboardVersionsInput, opts ...request.Option) (*ListDashboardVersionsOutput, error) { + req, out := c.ListDashboardVersionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListDataSetsPages iterates over the pages of a ListDataSets operation, +// ListDashboardVersionsPages iterates over the pages of a ListDashboardVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListDataSets method for more information on how to use this operation. +// See ListDashboardVersions 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 ListDataSets operation. +// // Example iterating over at most 3 pages of a ListDashboardVersions operation. // pageNum := 0 -// err := client.ListDataSetsPages(params, -// func(page *quicksight.ListDataSetsOutput, lastPage bool) bool { +// err := client.ListDashboardVersionsPages(params, +// func(page *quicksight.ListDashboardVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *QuickSight) ListDataSetsPages(input *ListDataSetsInput, fn func(*ListDataSetsOutput, bool) bool) error { - return c.ListDataSetsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *QuickSight) ListDashboardVersionsPages(input *ListDashboardVersionsInput, fn func(*ListDashboardVersionsOutput, bool) bool) error { + return c.ListDashboardVersionsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListDataSetsPagesWithContext same as ListDataSetsPages except +// ListDashboardVersionsPagesWithContext same as ListDashboardVersionsPages 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 *QuickSight) ListDataSetsPagesWithContext(ctx aws.Context, input *ListDataSetsInput, fn func(*ListDataSetsOutput, bool) bool, opts ...request.Option) error { +func (c *QuickSight) ListDashboardVersionsPagesWithContext(ctx aws.Context, input *ListDashboardVersionsInput, fn func(*ListDashboardVersionsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListDataSetsInput + var inCpy *ListDashboardVersionsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListDataSetsRequest(inCpy) + req, _ := c.ListDashboardVersionsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -3915,7 +4339,7 @@ func (c *QuickSight) ListDataSetsPagesWithContext(ctx aws.Context, input *ListDa } for p.Next() { - if !fn(p.Page().(*ListDataSetsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListDashboardVersionsOutput), !p.HasNextPage()) { break } } @@ -3923,37 +4347,37 @@ func (c *QuickSight) ListDataSetsPagesWithContext(ctx aws.Context, input *ListDa return p.Err() } -const opListDataSources = "ListDataSources" +const opListDashboards = "ListDashboards" -// ListDataSourcesRequest generates a "aws/request.Request" representing the -// client's request for the ListDataSources operation. The "output" return +// ListDashboardsRequest generates a "aws/request.Request" representing the +// client's request for the ListDashboards 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 ListDataSources for more information on using the ListDataSources +// See ListDashboards for more information on using the ListDashboards // 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 ListDataSourcesRequest method. -// req, resp := client.ListDataSourcesRequest(params) +// // Example sending a request using the ListDashboardsRequest method. +// req, resp := client.ListDashboardsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSources -func (c *QuickSight) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboards +func (c *QuickSight) ListDashboardsRequest(input *ListDashboardsInput) (req *request.Request, output *ListDashboardsOutput) { op := &request.Operation{ - Name: opListDataSources, + Name: opListDashboards, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/data-sources", + HTTPPath: "/accounts/{AwsAccountId}/dashboards", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -3963,104 +4387,100 @@ func (c *QuickSight) ListDataSourcesRequest(input *ListDataSourcesInput) (req *r } if input == nil { - input = &ListDataSourcesInput{} + input = &ListDashboardsInput{} } - output = &ListDataSourcesOutput{} + output = &ListDashboardsOutput{} req = c.newRequest(op, input, output) return } -// ListDataSources API operation for Amazon QuickSight. +// ListDashboards API operation for Amazon QuickSight. // -// Lists data sources in current AWS Region that belong to this AWS account. +// Lists dashboards in an AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation ListDataSources for usage and error information. +// API operation ListDashboards for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -// -// * InvalidParameterValueException -// One or more parameters has a value that isn't valid. -// // * ThrottlingException // Access is throttled. // // * InvalidNextTokenException // The NextToken value isn't valid. // -// * InternalFailureException -// An internal failure occurred. +// * 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. +// Not every operation and capability is available in every edition. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSources -func (c *QuickSight) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { - req, out := c.ListDataSourcesRequest(input) +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDashboards +func (c *QuickSight) ListDashboards(input *ListDashboardsInput) (*ListDashboardsOutput, error) { + req, out := c.ListDashboardsRequest(input) return out, req.Send() } -// ListDataSourcesWithContext is the same as ListDataSources with the addition of +// ListDashboardsWithContext is the same as ListDashboards with the addition of // the ability to pass a context and additional request options. // -// See ListDataSources for details on how to use this API operation. +// See ListDashboards 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 *QuickSight) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { - req, out := c.ListDataSourcesRequest(input) +func (c *QuickSight) ListDashboardsWithContext(ctx aws.Context, input *ListDashboardsInput, opts ...request.Option) (*ListDashboardsOutput, error) { + req, out := c.ListDashboardsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListDataSourcesPages iterates over the pages of a ListDataSources operation, +// ListDashboardsPages iterates over the pages of a ListDashboards operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListDataSources method for more information on how to use this operation. +// See ListDashboards 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 ListDataSources operation. +// // Example iterating over at most 3 pages of a ListDashboards operation. // pageNum := 0 -// err := client.ListDataSourcesPages(params, -// func(page *quicksight.ListDataSourcesOutput, lastPage bool) bool { +// err := client.ListDashboardsPages(params, +// func(page *quicksight.ListDashboardsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *QuickSight) ListDataSourcesPages(input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool) error { - return c.ListDataSourcesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *QuickSight) ListDashboardsPages(input *ListDashboardsInput, fn func(*ListDashboardsOutput, bool) bool) error { + return c.ListDashboardsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListDataSourcesPagesWithContext same as ListDataSourcesPages except +// ListDashboardsPagesWithContext same as ListDashboardsPages 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 *QuickSight) ListDataSourcesPagesWithContext(ctx aws.Context, input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool, opts ...request.Option) error { +func (c *QuickSight) ListDashboardsPagesWithContext(ctx aws.Context, input *ListDashboardsInput, fn func(*ListDashboardsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListDataSourcesInput + var inCpy *ListDashboardsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListDataSourcesRequest(inCpy) + req, _ := c.ListDashboardsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4068,7 +4488,7 @@ func (c *QuickSight) ListDataSourcesPagesWithContext(ctx aws.Context, input *Lis } for p.Next() { - if !fn(p.Page().(*ListDataSourcesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListDashboardsOutput), !p.HasNextPage()) { break } } @@ -4076,58 +4496,67 @@ func (c *QuickSight) ListDataSourcesPagesWithContext(ctx aws.Context, input *Lis return p.Err() } -const opListGroupMemberships = "ListGroupMemberships" +const opListDataSets = "ListDataSets" -// ListGroupMembershipsRequest generates a "aws/request.Request" representing the -// client's request for the ListGroupMemberships operation. The "output" return +// ListDataSetsRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSets 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 ListGroupMemberships for more information on using the ListGroupMemberships +// See ListDataSets for more information on using the ListDataSets // 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 ListGroupMembershipsRequest method. -// req, resp := client.ListGroupMembershipsRequest(params) +// // Example sending a request using the ListDataSetsRequest method. +// req, resp := client.ListDataSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroupMemberships -func (c *QuickSight) ListGroupMembershipsRequest(input *ListGroupMembershipsInput) (req *request.Request, output *ListGroupMembershipsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSets +func (c *QuickSight) ListDataSetsRequest(input *ListDataSetsInput) (req *request.Request, output *ListDataSetsOutput) { op := &request.Operation{ - Name: opListGroupMemberships, + Name: opListDataSets, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members", + HTTPPath: "/accounts/{AwsAccountId}/data-sets", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListGroupMembershipsInput{} + input = &ListDataSetsInput{} } - output = &ListGroupMembershipsOutput{} + output = &ListDataSetsOutput{} req = c.newRequest(op, input, output) return } -// ListGroupMemberships API operation for Amazon QuickSight. +// ListDataSets API operation for Amazon QuickSight. // -// Lists member users in a group. +// Lists all of the datasets belonging to the current AWS account in an AWS +// Region. +// +// The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/*. // // 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 QuickSight's -// API operation ListGroupMemberships for usage and error information. +// API operation ListDataSets for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -4140,98 +4569,147 @@ func (c *QuickSight) ListGroupMembershipsRequest(input *ListGroupMembershipsInpu // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ResourceNotFoundException -// One or more resources can't be found. -// // * ThrottlingException // Access is throttled. // // * InvalidNextTokenException // The NextToken value isn't valid. // -// * PreconditionNotMetException -// One or more preconditions aren't met. -// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroupMemberships -func (c *QuickSight) ListGroupMemberships(input *ListGroupMembershipsInput) (*ListGroupMembershipsOutput, error) { - req, out := c.ListGroupMembershipsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSets +func (c *QuickSight) ListDataSets(input *ListDataSetsInput) (*ListDataSetsOutput, error) { + req, out := c.ListDataSetsRequest(input) return out, req.Send() } -// ListGroupMembershipsWithContext is the same as ListGroupMemberships with the addition of +// ListDataSetsWithContext is the same as ListDataSets with the addition of // the ability to pass a context and additional request options. // -// See ListGroupMemberships for details on how to use this API operation. +// See ListDataSets 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 *QuickSight) ListGroupMembershipsWithContext(ctx aws.Context, input *ListGroupMembershipsInput, opts ...request.Option) (*ListGroupMembershipsOutput, error) { - req, out := c.ListGroupMembershipsRequest(input) +func (c *QuickSight) ListDataSetsWithContext(ctx aws.Context, input *ListDataSetsInput, opts ...request.Option) (*ListDataSetsOutput, error) { + req, out := c.ListDataSetsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListGroups = "ListGroups" +// ListDataSetsPages iterates over the pages of a ListDataSets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataSets 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 ListDataSets operation. +// pageNum := 0 +// err := client.ListDataSetsPages(params, +// func(page *quicksight.ListDataSetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *QuickSight) ListDataSetsPages(input *ListDataSetsInput, fn func(*ListDataSetsOutput, bool) bool) error { + return c.ListDataSetsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// ListGroupsRequest generates a "aws/request.Request" representing the -// client's request for the ListGroups operation. The "output" return +// ListDataSetsPagesWithContext same as ListDataSetsPages 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 *QuickSight) ListDataSetsPagesWithContext(ctx aws.Context, input *ListDataSetsInput, fn func(*ListDataSetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDataSources = "ListDataSources" + +// ListDataSourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListDataSources 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 ListGroups for more information on using the ListGroups +// See ListDataSources for more information on using the ListDataSources // 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 ListGroupsRequest method. -// req, resp := client.ListGroupsRequest(params) +// // Example sending a request using the ListDataSourcesRequest method. +// req, resp := client.ListDataSourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroups -func (c *QuickSight) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSources +func (c *QuickSight) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) { op := &request.Operation{ - Name: opListGroups, + Name: opListDataSources, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups", + HTTPPath: "/accounts/{AwsAccountId}/data-sources", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListGroupsInput{} + input = &ListDataSourcesInput{} } - output = &ListGroupsOutput{} + output = &ListDataSourcesOutput{} req = c.newRequest(op, input, output) return } -// ListGroups API operation for Amazon QuickSight. +// ListDataSources API operation for Amazon QuickSight. // -// Lists all user groups in Amazon QuickSight. +// Lists data sources in current AWS Region that belong to this AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation ListGroups for usage and error information. +// API operation ListDataSources for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -4244,98 +4722,141 @@ func (c *QuickSight) ListGroupsRequest(input *ListGroupsInput) (req *request.Req // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ResourceNotFoundException -// One or more resources can't be found. -// // * ThrottlingException // Access is throttled. // // * InvalidNextTokenException // The NextToken value isn't valid. // -// * PreconditionNotMetException -// One or more preconditions aren't met. -// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroups -func (c *QuickSight) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) { - req, out := c.ListGroupsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListDataSources +func (c *QuickSight) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) return out, req.Send() } -// ListGroupsWithContext is the same as ListGroups with the addition of +// ListDataSourcesWithContext is the same as ListDataSources with the addition of // the ability to pass a context and additional request options. // -// See ListGroups for details on how to use this API operation. +// See ListDataSources 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 *QuickSight) ListGroupsWithContext(ctx aws.Context, input *ListGroupsInput, opts ...request.Option) (*ListGroupsOutput, error) { - req, out := c.ListGroupsRequest(input) +func (c *QuickSight) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) { + req, out := c.ListDataSourcesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListIAMPolicyAssignments = "ListIAMPolicyAssignments" - -// ListIAMPolicyAssignmentsRequest generates a "aws/request.Request" representing the -// client's request for the ListIAMPolicyAssignments 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. +// ListDataSourcesPages iterates over the pages of a ListDataSources operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. // -// See ListIAMPolicyAssignments for more information on using the ListIAMPolicyAssignments -// API call, and error handling. +// See ListDataSources method for more information on how to use this operation. // -// 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. +// Note: This operation can generate multiple requests to a service. // +// // Example iterating over at most 3 pages of a ListDataSources operation. +// pageNum := 0 +// err := client.ListDataSourcesPages(params, +// func(page *quicksight.ListDataSourcesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) // -// // Example sending a request using the ListIAMPolicyAssignmentsRequest method. -// req, resp := client.ListIAMPolicyAssignmentsRequest(params) +func (c *QuickSight) ListDataSourcesPages(input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool) error { + return c.ListDataSourcesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataSourcesPagesWithContext same as ListDataSourcesPages except +// it takes a Context and allows setting request options on the pages. // -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) +// 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 *QuickSight) ListDataSourcesPagesWithContext(ctx aws.Context, input *ListDataSourcesInput, fn func(*ListDataSourcesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataSourcesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataSourcesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataSourcesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListGroupMemberships = "ListGroupMemberships" + +// ListGroupMembershipsRequest generates a "aws/request.Request" representing the +// client's request for the ListGroupMemberships 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 ListGroupMemberships for more information on using the ListGroupMemberships +// 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 ListGroupMembershipsRequest method. +// req, resp := client.ListGroupMembershipsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignments -func (c *QuickSight) ListIAMPolicyAssignmentsRequest(input *ListIAMPolicyAssignmentsInput) (req *request.Request, output *ListIAMPolicyAssignmentsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroupMemberships +func (c *QuickSight) ListGroupMembershipsRequest(input *ListGroupMembershipsInput) (req *request.Request, output *ListGroupMembershipsOutput) { op := &request.Operation{ - Name: opListIAMPolicyAssignments, + Name: opListGroupMemberships, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members", } if input == nil { - input = &ListIAMPolicyAssignmentsInput{} + input = &ListGroupMembershipsInput{} } - output = &ListIAMPolicyAssignmentsOutput{} + output = &ListGroupMembershipsOutput{} req = c.newRequest(op, input, output) return } -// ListIAMPolicyAssignments API operation for Amazon QuickSight. +// ListGroupMemberships API operation for Amazon QuickSight. // -// Lists IAM policy assignments in the current Amazon QuickSight account. +// Lists member users in a group. // // 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 QuickSight's -// API operation ListIAMPolicyAssignments for usage and error information. +// API operation ListGroupMemberships for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -4357,85 +4878,89 @@ func (c *QuickSight) ListIAMPolicyAssignmentsRequest(input *ListIAMPolicyAssignm // * InvalidNextTokenException // The NextToken value isn't valid. // +// * PreconditionNotMetException +// One or more preconditions aren't met. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignments -func (c *QuickSight) ListIAMPolicyAssignments(input *ListIAMPolicyAssignmentsInput) (*ListIAMPolicyAssignmentsOutput, error) { - req, out := c.ListIAMPolicyAssignmentsRequest(input) +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroupMemberships +func (c *QuickSight) ListGroupMemberships(input *ListGroupMembershipsInput) (*ListGroupMembershipsOutput, error) { + req, out := c.ListGroupMembershipsRequest(input) return out, req.Send() } -// ListIAMPolicyAssignmentsWithContext is the same as ListIAMPolicyAssignments with the addition of +// ListGroupMembershipsWithContext is the same as ListGroupMemberships with the addition of // the ability to pass a context and additional request options. // -// See ListIAMPolicyAssignments for details on how to use this API operation. +// See ListGroupMemberships 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 *QuickSight) ListIAMPolicyAssignmentsWithContext(ctx aws.Context, input *ListIAMPolicyAssignmentsInput, opts ...request.Option) (*ListIAMPolicyAssignmentsOutput, error) { - req, out := c.ListIAMPolicyAssignmentsRequest(input) +func (c *QuickSight) ListGroupMembershipsWithContext(ctx aws.Context, input *ListGroupMembershipsInput, opts ...request.Option) (*ListGroupMembershipsOutput, error) { + req, out := c.ListGroupMembershipsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListIAMPolicyAssignmentsForUser = "ListIAMPolicyAssignmentsForUser" +const opListGroups = "ListGroups" -// ListIAMPolicyAssignmentsForUserRequest generates a "aws/request.Request" representing the -// client's request for the ListIAMPolicyAssignmentsForUser operation. The "output" return +// ListGroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListGroups 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 ListIAMPolicyAssignmentsForUser for more information on using the ListIAMPolicyAssignmentsForUser +// See ListGroups for more information on using the ListGroups // 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 ListIAMPolicyAssignmentsForUserRequest method. -// req, resp := client.ListIAMPolicyAssignmentsForUserRequest(params) +// // Example sending a request using the ListGroupsRequest method. +// req, resp := client.ListGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignmentsForUser -func (c *QuickSight) ListIAMPolicyAssignmentsForUserRequest(input *ListIAMPolicyAssignmentsForUserInput) (req *request.Request, output *ListIAMPolicyAssignmentsForUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroups +func (c *QuickSight) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) { op := &request.Operation{ - Name: opListIAMPolicyAssignmentsForUser, + Name: opListGroups, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/iam-policy-assignments", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups", } if input == nil { - input = &ListIAMPolicyAssignmentsForUserInput{} + input = &ListGroupsInput{} } - output = &ListIAMPolicyAssignmentsForUserOutput{} + output = &ListGroupsOutput{} req = c.newRequest(op, input, output) return } -// ListIAMPolicyAssignmentsForUser API operation for Amazon QuickSight. +// ListGroups API operation for Amazon QuickSight. // -// 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. +// Lists all user groups in Amazon QuickSight. // // 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 QuickSight's -// API operation ListIAMPolicyAssignmentsForUser for usage and error information. +// API operation ListGroups for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -4448,102 +4973,98 @@ func (c *QuickSight) ListIAMPolicyAssignmentsForUserRequest(input *ListIAMPolicy // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ResourceExistsException -// The resource specified already exists. -// // * ResourceNotFoundException // One or more resources can't be found. // // * ThrottlingException // Access is throttled. // -// * ConcurrentUpdatingException -// A resource is already in a state that indicates an action is happening that -// must complete before a new update can be applied. +// * InvalidNextTokenException +// The NextToken value isn't valid. +// +// * PreconditionNotMetException +// One or more preconditions aren't met. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignmentsForUser -func (c *QuickSight) ListIAMPolicyAssignmentsForUser(input *ListIAMPolicyAssignmentsForUserInput) (*ListIAMPolicyAssignmentsForUserOutput, error) { - req, out := c.ListIAMPolicyAssignmentsForUserRequest(input) +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListGroups +func (c *QuickSight) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) { + req, out := c.ListGroupsRequest(input) return out, req.Send() } -// ListIAMPolicyAssignmentsForUserWithContext is the same as ListIAMPolicyAssignmentsForUser with the addition of +// ListGroupsWithContext is the same as ListGroups with the addition of // the ability to pass a context and additional request options. // -// See ListIAMPolicyAssignmentsForUser for details on how to use this API operation. +// See ListGroups 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 *QuickSight) ListIAMPolicyAssignmentsForUserWithContext(ctx aws.Context, input *ListIAMPolicyAssignmentsForUserInput, opts ...request.Option) (*ListIAMPolicyAssignmentsForUserOutput, error) { - req, out := c.ListIAMPolicyAssignmentsForUserRequest(input) +func (c *QuickSight) ListGroupsWithContext(ctx aws.Context, input *ListGroupsInput, opts ...request.Option) (*ListGroupsOutput, error) { + req, out := c.ListGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListIngestions = "ListIngestions" +const opListIAMPolicyAssignments = "ListIAMPolicyAssignments" -// ListIngestionsRequest generates a "aws/request.Request" representing the -// client's request for the ListIngestions operation. The "output" return +// ListIAMPolicyAssignmentsRequest generates a "aws/request.Request" representing the +// client's request for the ListIAMPolicyAssignments 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 ListIngestions for more information on using the ListIngestions +// See ListIAMPolicyAssignments for more information on using the ListIAMPolicyAssignments // 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 ListIngestionsRequest method. -// req, resp := client.ListIngestionsRequest(params) +// // Example sending a request using the ListIAMPolicyAssignmentsRequest method. +// req, resp := client.ListIAMPolicyAssignmentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIngestions -func (c *QuickSight) ListIngestionsRequest(input *ListIngestionsInput) (req *request.Request, output *ListIngestionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignments +func (c *QuickSight) ListIAMPolicyAssignmentsRequest(input *ListIAMPolicyAssignmentsInput) (req *request.Request, output *ListIAMPolicyAssignmentsOutput) { op := &request.Operation{ - Name: opListIngestions, + Name: opListIAMPolicyAssignments, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/data-sets/{DataSetId}/ingestions", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments", } if input == nil { - input = &ListIngestionsInput{} + input = &ListIAMPolicyAssignmentsInput{} } - output = &ListIngestionsOutput{} + output = &ListIAMPolicyAssignmentsOutput{} req = c.newRequest(op, input, output) return } -// ListIngestions API operation for Amazon QuickSight. +// ListIAMPolicyAssignments API operation for Amazon QuickSight. // -// Lists the history of SPICE ingestions for a dataset. +// Lists IAM policy 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 // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation ListIngestions for usage and error information. +// API operation ListIAMPolicyAssignments for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -4562,60 +5083,268 @@ func (c *QuickSight) ListIngestionsRequest(input *ListIngestionsInput) (req *req // * ThrottlingException // Access is throttled. // -// * ResourceExistsException -// The resource specified already exists. -// // * InvalidNextTokenException // The NextToken value isn't valid. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIngestions -func (c *QuickSight) ListIngestions(input *ListIngestionsInput) (*ListIngestionsOutput, error) { - req, out := c.ListIngestionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignments +func (c *QuickSight) ListIAMPolicyAssignments(input *ListIAMPolicyAssignmentsInput) (*ListIAMPolicyAssignmentsOutput, error) { + req, out := c.ListIAMPolicyAssignmentsRequest(input) return out, req.Send() } -// ListIngestionsWithContext is the same as ListIngestions with the addition of +// ListIAMPolicyAssignmentsWithContext is the same as ListIAMPolicyAssignments with the addition of // the ability to pass a context and additional request options. // -// See ListIngestions for details on how to use this API operation. +// See ListIAMPolicyAssignments 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 *QuickSight) ListIngestionsWithContext(ctx aws.Context, input *ListIngestionsInput, opts ...request.Option) (*ListIngestionsOutput, error) { - req, out := c.ListIngestionsRequest(input) +func (c *QuickSight) ListIAMPolicyAssignmentsWithContext(ctx aws.Context, input *ListIAMPolicyAssignmentsInput, opts ...request.Option) (*ListIAMPolicyAssignmentsOutput, error) { + req, out := c.ListIAMPolicyAssignmentsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListIngestionsPages iterates over the pages of a ListIngestions operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. +const opListIAMPolicyAssignmentsForUser = "ListIAMPolicyAssignmentsForUser" + +// ListIAMPolicyAssignmentsForUserRequest generates a "aws/request.Request" representing the +// client's request for the ListIAMPolicyAssignmentsForUser operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. // -// See ListIngestions method for more information on how to use this operation. +// 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. // -// Note: This operation can generate multiple requests to a service. +// See ListIAMPolicyAssignmentsForUser for more information on using the ListIAMPolicyAssignmentsForUser +// API call, and error handling. // -// // Example iterating over at most 3 pages of a ListIngestions operation. -// pageNum := 0 -// err := client.ListIngestionsPages(params, -// func(page *quicksight.ListIngestionsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) +// 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. // -func (c *QuickSight) ListIngestionsPages(input *ListIngestionsInput, fn func(*ListIngestionsOutput, bool) bool) error { - return c.ListIngestionsPagesWithContext(aws.BackgroundContext(), input, fn) +// +// // Example sending a request using the ListIAMPolicyAssignmentsForUserRequest method. +// req, resp := client.ListIAMPolicyAssignmentsForUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignmentsForUser +func (c *QuickSight) ListIAMPolicyAssignmentsForUserRequest(input *ListIAMPolicyAssignmentsForUserInput) (req *request.Request, output *ListIAMPolicyAssignmentsForUserOutput) { + op := &request.Operation{ + Name: opListIAMPolicyAssignmentsForUser, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/iam-policy-assignments", + } + + if input == nil { + input = &ListIAMPolicyAssignmentsForUserInput{} + } + + output = &ListIAMPolicyAssignmentsForUserOutput{} + req = c.newRequest(op, input, output) + return } -// ListIngestionsPagesWithContext same as ListIngestionsPages except -// it takes a Context and allows setting request options on the pages. +// ListIAMPolicyAssignmentsForUser API operation for Amazon QuickSight. +// +// 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. +// +// 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 QuickSight's +// API operation ListIAMPolicyAssignmentsForUser for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * ConcurrentUpdatingException +// A resource is already in a state that indicates an action is happening that +// must complete before a new update can be applied. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIAMPolicyAssignmentsForUser +func (c *QuickSight) ListIAMPolicyAssignmentsForUser(input *ListIAMPolicyAssignmentsForUserInput) (*ListIAMPolicyAssignmentsForUserOutput, error) { + req, out := c.ListIAMPolicyAssignmentsForUserRequest(input) + return out, req.Send() +} + +// ListIAMPolicyAssignmentsForUserWithContext is the same as ListIAMPolicyAssignmentsForUser with the addition of +// the ability to pass a context and additional request options. +// +// See ListIAMPolicyAssignmentsForUser 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 *QuickSight) ListIAMPolicyAssignmentsForUserWithContext(ctx aws.Context, input *ListIAMPolicyAssignmentsForUserInput, opts ...request.Option) (*ListIAMPolicyAssignmentsForUserOutput, error) { + req, out := c.ListIAMPolicyAssignmentsForUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListIngestions = "ListIngestions" + +// ListIngestionsRequest generates a "aws/request.Request" representing the +// client's request for the ListIngestions 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 ListIngestions for more information on using the ListIngestions +// 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 ListIngestionsRequest method. +// req, resp := client.ListIngestionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIngestions +func (c *QuickSight) ListIngestionsRequest(input *ListIngestionsInput) (req *request.Request, output *ListIngestionsOutput) { + op := &request.Operation{ + Name: opListIngestions, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/data-sets/{DataSetId}/ingestions", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListIngestionsInput{} + } + + output = &ListIngestionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListIngestions API operation for Amazon QuickSight. +// +// Lists the history of SPICE ingestions for a dataset. +// +// 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 QuickSight's +// API operation ListIngestions for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * InvalidNextTokenException +// The NextToken value isn't valid. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListIngestions +func (c *QuickSight) ListIngestions(input *ListIngestionsInput) (*ListIngestionsOutput, error) { + req, out := c.ListIngestionsRequest(input) + return out, req.Send() +} + +// ListIngestionsWithContext is the same as ListIngestions with the addition of +// the ability to pass a context and additional request options. +// +// See ListIngestions 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 *QuickSight) ListIngestionsWithContext(ctx aws.Context, input *ListIngestionsInput, opts ...request.Option) (*ListIngestionsOutput, error) { + req, out := c.ListIngestionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListIngestionsPages iterates over the pages of a ListIngestions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListIngestions 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 ListIngestions operation. +// pageNum := 0 +// err := client.ListIngestionsPages(params, +// func(page *quicksight.ListIngestionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *QuickSight) ListIngestionsPages(input *ListIngestionsInput, fn func(*ListIngestionsOutput, bool) bool) error { + return c.ListIngestionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListIngestionsPagesWithContext same as ListIngestionsPages 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 @@ -4800,6 +5529,9 @@ func (c *QuickSight) ListTemplateAliasesRequest(input *ListTemplateAliasesInput) // API operation ListTemplateAliases for usage and error information. // // Returned Error Types: +// * InvalidNextTokenException +// The NextToken value isn't valid. +// // * ThrottlingException // Access is throttled. // @@ -5200,67 +5932,65 @@ func (c *QuickSight) ListTemplatesPagesWithContext(ctx aws.Context, input *ListT return p.Err() } -const opListUserGroups = "ListUserGroups" +const opListThemeAliases = "ListThemeAliases" -// ListUserGroupsRequest generates a "aws/request.Request" representing the -// client's request for the ListUserGroups operation. The "output" return +// ListThemeAliasesRequest generates a "aws/request.Request" representing the +// client's request for the ListThemeAliases 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 ListUserGroups for more information on using the ListUserGroups +// See ListThemeAliases for more information on using the ListThemeAliases // 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 ListUserGroupsRequest method. -// req, resp := client.ListUserGroupsRequest(params) +// // Example sending a request using the ListThemeAliasesRequest method. +// req, resp := client.ListThemeAliasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUserGroups -func (c *QuickSight) ListUserGroupsRequest(input *ListUserGroupsInput) (req *request.Request, output *ListUserGroupsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListThemeAliases +func (c *QuickSight) ListThemeAliasesRequest(input *ListThemeAliasesInput) (req *request.Request, output *ListThemeAliasesOutput) { op := &request.Operation{ - Name: opListUserGroups, + Name: opListThemeAliases, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/groups", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/aliases", } if input == nil { - input = &ListUserGroupsInput{} + input = &ListThemeAliasesInput{} } - output = &ListUserGroupsOutput{} + output = &ListThemeAliasesOutput{} req = c.newRequest(op, input, output) return } -// ListUserGroups API operation for Amazon QuickSight. +// ListThemeAliases API operation for Amazon QuickSight. // -// Lists the Amazon QuickSight groups that an Amazon QuickSight user is a member -// of. +// Lists all the aliases of a theme. // // 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 QuickSight's -// API operation ListUserGroups for usage and error information. +// API operation ListThemeAliases for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * InvalidNextTokenException +// The NextToken value isn't valid. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. @@ -5271,86 +6001,89 @@ func (c *QuickSight) ListUserGroupsRequest(input *ListUserGroupsInput) (req *req // * ThrottlingException // Access is throttled. // +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUserGroups -func (c *QuickSight) ListUserGroups(input *ListUserGroupsInput) (*ListUserGroupsOutput, error) { - req, out := c.ListUserGroupsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListThemeAliases +func (c *QuickSight) ListThemeAliases(input *ListThemeAliasesInput) (*ListThemeAliasesOutput, error) { + req, out := c.ListThemeAliasesRequest(input) return out, req.Send() } -// ListUserGroupsWithContext is the same as ListUserGroups with the addition of +// ListThemeAliasesWithContext is the same as ListThemeAliases with the addition of // the ability to pass a context and additional request options. // -// See ListUserGroups for details on how to use this API operation. +// See ListThemeAliases 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 *QuickSight) ListUserGroupsWithContext(ctx aws.Context, input *ListUserGroupsInput, opts ...request.Option) (*ListUserGroupsOutput, error) { - req, out := c.ListUserGroupsRequest(input) +func (c *QuickSight) ListThemeAliasesWithContext(ctx aws.Context, input *ListThemeAliasesInput, opts ...request.Option) (*ListThemeAliasesOutput, error) { + req, out := c.ListThemeAliasesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListUsers = "ListUsers" +const opListThemeVersions = "ListThemeVersions" -// ListUsersRequest generates a "aws/request.Request" representing the -// client's request for the ListUsers operation. The "output" return +// ListThemeVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListThemeVersions 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 ListUsers for more information on using the ListUsers +// See ListThemeVersions for more information on using the ListThemeVersions // 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 ListUsersRequest method. -// req, resp := client.ListUsersRequest(params) +// // Example sending a request using the ListThemeVersionsRequest method. +// req, resp := client.ListThemeVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUsers -func (c *QuickSight) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListThemeVersions +func (c *QuickSight) ListThemeVersionsRequest(input *ListThemeVersionsInput) (req *request.Request, output *ListThemeVersionsOutput) { op := &request.Operation{ - Name: opListUsers, + Name: opListThemeVersions, HTTPMethod: "GET", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/versions", } if input == nil { - input = &ListUsersInput{} + input = &ListThemeVersionsInput{} } - output = &ListUsersOutput{} + output = &ListThemeVersionsOutput{} req = c.newRequest(op, input, output) return } -// ListUsers API operation for Amazon QuickSight. +// ListThemeVersions API operation for Amazon QuickSight. // -// Returns a list of all of the Amazon QuickSight users belonging to this account. +// Lists all the versions of the themes in the current AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation ListUsers for usage and error information. +// API operation ListThemeVersions for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -5360,6 +6093,9 @@ func (c *QuickSight) ListUsersRequest(input *ListUsersInput) (req *request.Reque // your policies have the correct permissions, and that you are using the correct // access keys. // +// * InvalidNextTokenException +// The NextToken value isn't valid. +// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // @@ -5369,91 +6105,89 @@ func (c *QuickSight) ListUsersRequest(input *ListUsersInput) (req *request.Reque // * ThrottlingException // Access is throttled. // -// * InvalidNextTokenException -// The NextToken value isn't valid. +// * 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. +// Not every operation and capability is available in every edition. // // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUsers -func (c *QuickSight) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { - req, out := c.ListUsersRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListThemeVersions +func (c *QuickSight) ListThemeVersions(input *ListThemeVersionsInput) (*ListThemeVersionsOutput, error) { + req, out := c.ListThemeVersionsRequest(input) return out, req.Send() } -// ListUsersWithContext is the same as ListUsers with the addition of +// ListThemeVersionsWithContext is the same as ListThemeVersions with the addition of // the ability to pass a context and additional request options. // -// See ListUsers for details on how to use this API operation. +// See ListThemeVersions 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 *QuickSight) ListUsersWithContext(ctx aws.Context, input *ListUsersInput, opts ...request.Option) (*ListUsersOutput, error) { - req, out := c.ListUsersRequest(input) +func (c *QuickSight) ListThemeVersionsWithContext(ctx aws.Context, input *ListThemeVersionsInput, opts ...request.Option) (*ListThemeVersionsOutput, error) { + req, out := c.ListThemeVersionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opRegisterUser = "RegisterUser" +const opListThemes = "ListThemes" -// RegisterUserRequest generates a "aws/request.Request" representing the -// client's request for the RegisterUser operation. The "output" return +// ListThemesRequest generates a "aws/request.Request" representing the +// client's request for the ListThemes 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 RegisterUser for more information on using the RegisterUser +// See ListThemes for more information on using the ListThemes // 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 RegisterUserRequest method. -// req, resp := client.RegisterUserRequest(params) +// // Example sending a request using the ListThemesRequest method. +// req, resp := client.ListThemesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/RegisterUser -func (c *QuickSight) RegisterUserRequest(input *RegisterUserInput) (req *request.Request, output *RegisterUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListThemes +func (c *QuickSight) ListThemesRequest(input *ListThemesInput) (req *request.Request, output *ListThemesOutput) { op := &request.Operation{ - Name: opRegisterUser, - HTTPMethod: "POST", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users", + Name: opListThemes, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/themes", } if input == nil { - input = &RegisterUserInput{} + input = &ListThemesInput{} } - output = &RegisterUserOutput{} + output = &ListThemesOutput{} req = c.newRequest(op, input, output) return } -// RegisterUser API operation for Amazon QuickSight. +// ListThemes API operation for Amazon QuickSight. // -// Creates an Amazon QuickSight user, whose identity is associated with the -// AWS Identity and Access Management (IAM) identity or role specified in the -// request. +// Lists all the themes in the current AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation RegisterUser for usage and error information. +// API operation ListThemes for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -5466,283 +6200,199 @@ func (c *QuickSight) RegisterUserRequest(input *RegisterUserInput) (req *request // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // +// * InvalidNextTokenException +// The NextToken value isn't valid. +// // * ResourceNotFoundException // One or more resources can't be found. // // * ThrottlingException // Access is throttled. // -// * LimitExceededException -// A limit is exceeded. -// -// * ResourceExistsException -// The resource specified already exists. -// -// * PreconditionNotMetException -// One or more preconditions aren't met. +// * 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. +// Not every operation and capability is available in every edition. // // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/RegisterUser -func (c *QuickSight) RegisterUser(input *RegisterUserInput) (*RegisterUserOutput, error) { - req, out := c.RegisterUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListThemes +func (c *QuickSight) ListThemes(input *ListThemesInput) (*ListThemesOutput, error) { + req, out := c.ListThemesRequest(input) return out, req.Send() } -// RegisterUserWithContext is the same as RegisterUser with the addition of +// ListThemesWithContext is the same as ListThemes with the addition of // the ability to pass a context and additional request options. // -// See RegisterUser for details on how to use this API operation. +// See ListThemes 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 *QuickSight) RegisterUserWithContext(ctx aws.Context, input *RegisterUserInput, opts ...request.Option) (*RegisterUserOutput, error) { - req, out := c.RegisterUserRequest(input) +func (c *QuickSight) ListThemesWithContext(ctx aws.Context, input *ListThemesInput, opts ...request.Option) (*ListThemesOutput, error) { + req, out := c.ListThemesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opSearchDashboards = "SearchDashboards" +const opListUserGroups = "ListUserGroups" -// SearchDashboardsRequest generates a "aws/request.Request" representing the -// client's request for the SearchDashboards operation. The "output" return +// ListUserGroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListUserGroups 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 SearchDashboards for more information on using the SearchDashboards +// See ListUserGroups for more information on using the ListUserGroups // 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 SearchDashboardsRequest method. -// req, resp := client.SearchDashboardsRequest(params) +// // Example sending a request using the ListUserGroupsRequest method. +// req, resp := client.ListUserGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/SearchDashboards -func (c *QuickSight) SearchDashboardsRequest(input *SearchDashboardsInput) (req *request.Request, output *SearchDashboardsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUserGroups +func (c *QuickSight) ListUserGroupsRequest(input *ListUserGroupsInput) (req *request.Request, output *ListUserGroupsOutput) { op := &request.Operation{ - Name: opSearchDashboards, - HTTPMethod: "POST", - HTTPPath: "/accounts/{AwsAccountId}/search/dashboards", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + Name: opListUserGroups, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/groups", } if input == nil { - input = &SearchDashboardsInput{} + input = &ListUserGroupsInput{} } - output = &SearchDashboardsOutput{} + output = &ListUserGroupsOutput{} req = c.newRequest(op, input, output) return } -// SearchDashboards API operation for Amazon QuickSight. +// ListUserGroups API operation for Amazon QuickSight. // -// Searchs for dashboards that belong to a user. +// Lists the Amazon QuickSight groups that an Amazon QuickSight user is a member +// of. // // 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 QuickSight's -// API operation SearchDashboards for usage and error information. +// API operation ListUserGroups for usage and error information. // // Returned Error Types: -// * ThrottlingException -// Access is throttled. -// -// * ResourceNotFoundException -// One or more resources can't be found. +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * 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. -// Not every operation and capability is available in every edition. +// * ResourceNotFoundException +// One or more resources can't be found. // -// * InvalidNextTokenException -// The NextToken value isn't valid. +// * ThrottlingException +// Access is throttled. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/SearchDashboards -func (c *QuickSight) SearchDashboards(input *SearchDashboardsInput) (*SearchDashboardsOutput, error) { - req, out := c.SearchDashboardsRequest(input) +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUserGroups +func (c *QuickSight) ListUserGroups(input *ListUserGroupsInput) (*ListUserGroupsOutput, error) { + req, out := c.ListUserGroupsRequest(input) return out, req.Send() } -// SearchDashboardsWithContext is the same as SearchDashboards with the addition of +// ListUserGroupsWithContext is the same as ListUserGroups with the addition of // the ability to pass a context and additional request options. // -// See SearchDashboards for details on how to use this API operation. +// See ListUserGroups 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 *QuickSight) SearchDashboardsWithContext(ctx aws.Context, input *SearchDashboardsInput, opts ...request.Option) (*SearchDashboardsOutput, error) { - req, out := c.SearchDashboardsRequest(input) +func (c *QuickSight) ListUserGroupsWithContext(ctx aws.Context, input *ListUserGroupsInput, opts ...request.Option) (*ListUserGroupsOutput, error) { + req, out := c.ListUserGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// SearchDashboardsPages iterates over the pages of a SearchDashboards operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See SearchDashboards 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 SearchDashboards operation. -// pageNum := 0 -// err := client.SearchDashboardsPages(params, -// func(page *quicksight.SearchDashboardsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *QuickSight) SearchDashboardsPages(input *SearchDashboardsInput, fn func(*SearchDashboardsOutput, bool) bool) error { - return c.SearchDashboardsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// SearchDashboardsPagesWithContext same as SearchDashboardsPages 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 *QuickSight) SearchDashboardsPagesWithContext(ctx aws.Context, input *SearchDashboardsInput, fn func(*SearchDashboardsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *SearchDashboardsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.SearchDashboardsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*SearchDashboardsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opTagResource = "TagResource" +const opListUsers = "ListUsers" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// ListUsersRequest generates a "aws/request.Request" representing the +// client's request for the ListUsers operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See ListUsers for more information on using the ListUsers // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the ListUsersRequest method. +// req, resp := client.ListUsersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/TagResource -func (c *QuickSight) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUsers +func (c *QuickSight) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) { op := &request.Operation{ - Name: opTagResource, - HTTPMethod: "POST", - HTTPPath: "/resources/{ResourceArn}/tags", + Name: opListUsers, + HTTPMethod: "GET", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users", } if input == nil { - input = &TagResourceInput{} + input = &ListUsersInput{} } - output = &TagResourceOutput{} + output = &ListUsersOutput{} req = c.newRequest(op, input, output) return } -// TagResource API operation for Amazon QuickSight. -// -// 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. +// ListUsers API operation for Amazon QuickSight. // -// * QuickSight doesn't currently support the Tag Editor for AWS Resource -// Groups. +// Returns a list of all of the Amazon QuickSight users belonging to this account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation TagResource for usage and error information. +// API operation ListUsers for usage and error information. // // Returned Error Types: -// * LimitExceededException -// A limit is exceeded. -// // * AccessDeniedException // You don't have access to this item. The provided credentials couldn't be // validated. You might not be authorized to carry out the request. Make sure @@ -5759,83 +6409,91 @@ func (c *QuickSight) TagResourceRequest(input *TagResourceInput) (req *request.R // * ThrottlingException // Access is throttled. // +// * InvalidNextTokenException +// The NextToken value isn't valid. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/TagResource -func (c *QuickSight) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) - return out, req.Send() -} +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/ListUsers +func (c *QuickSight) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { + req, out := c.ListUsersRequest(input) + return out, req.Send() +} -// TagResourceWithContext is the same as TagResource with the addition of +// ListUsersWithContext is the same as ListUsers with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See ListUsers 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 *QuickSight) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *QuickSight) ListUsersWithContext(ctx aws.Context, input *ListUsersInput, opts ...request.Option) (*ListUsersOutput, error) { + req, out := c.ListUsersRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +const opRegisterUser = "RegisterUser" -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// RegisterUserRequest generates a "aws/request.Request" representing the +// client's request for the RegisterUser operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UntagResource for more information on using the UntagResource +// See RegisterUser for more information on using the RegisterUser // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the RegisterUserRequest method. +// req, resp := client.RegisterUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UntagResource -func (c *QuickSight) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/RegisterUser +func (c *QuickSight) RegisterUserRequest(input *RegisterUserInput) (req *request.Request, output *RegisterUserOutput) { op := &request.Operation{ - Name: opUntagResource, - HTTPMethod: "DELETE", - HTTPPath: "/resources/{ResourceArn}/tags", + Name: opRegisterUser, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users", } if input == nil { - input = &UntagResourceInput{} + input = &RegisterUserInput{} } - output = &UntagResourceOutput{} + output = &RegisterUserOutput{} req = c.newRequest(op, input, output) return } -// UntagResource API operation for Amazon QuickSight. +// RegisterUser API operation for Amazon QuickSight. // -// Removes a tag or tags from a resource. +// Creates an Amazon QuickSight user, whose identity is associated with the +// AWS Identity and Access Management (IAM) identity or role specified in the +// request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation UntagResource for usage and error information. +// API operation RegisterUser for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -5854,99 +6512,111 @@ func (c *QuickSight) UntagResourceRequest(input *UntagResourceInput) (req *reque // * ThrottlingException // Access is throttled. // +// * LimitExceededException +// A limit is exceeded. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * PreconditionNotMetException +// One or more preconditions aren't met. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UntagResource -func (c *QuickSight) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/RegisterUser +func (c *QuickSight) RegisterUser(input *RegisterUserInput) (*RegisterUserOutput, error) { + req, out := c.RegisterUserRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// RegisterUserWithContext is the same as RegisterUser with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See RegisterUser 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 *QuickSight) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *QuickSight) RegisterUserWithContext(ctx aws.Context, input *RegisterUserInput, opts ...request.Option) (*RegisterUserOutput, error) { + req, out := c.RegisterUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDashboard = "UpdateDashboard" +const opSearchDashboards = "SearchDashboards" -// UpdateDashboardRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDashboard operation. The "output" return +// SearchDashboardsRequest generates a "aws/request.Request" representing the +// client's request for the SearchDashboards 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 UpdateDashboard for more information on using the UpdateDashboard +// See SearchDashboards for more information on using the SearchDashboards // 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 UpdateDashboardRequest method. -// req, resp := client.UpdateDashboardRequest(params) +// // Example sending a request using the SearchDashboardsRequest method. +// req, resp := client.SearchDashboardsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboard -func (c *QuickSight) UpdateDashboardRequest(input *UpdateDashboardInput) (req *request.Request, output *UpdateDashboardOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/SearchDashboards +func (c *QuickSight) SearchDashboardsRequest(input *SearchDashboardsInput) (req *request.Request, output *SearchDashboardsOutput) { op := &request.Operation{ - Name: opUpdateDashboard, - HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}", + Name: opSearchDashboards, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/search/dashboards", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &UpdateDashboardInput{} + input = &SearchDashboardsInput{} } - output = &UpdateDashboardOutput{} + output = &SearchDashboardsOutput{} req = c.newRequest(op, input, output) return } -// UpdateDashboard API operation for Amazon QuickSight. +// SearchDashboards API operation for Amazon QuickSight. // -// Updates a dashboard in an AWS account. +// Searchs for dashboards that belong to a user. // // 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 QuickSight's -// API operation UpdateDashboard for usage and error information. +// API operation SearchDashboards for usage and error information. // // Returned Error Types: // * ThrottlingException // Access is throttled. // -// * InvalidParameterValueException -// One or more parameters has a value that isn't valid. -// // * ResourceNotFoundException // One or more resources can't be found. // -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. -// -// * LimitExceededException -// A limit is exceeded. +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. // // * UnsupportedUserEditionException // This error indicates that you are calling an operation on an Amazon QuickSight @@ -5954,301 +6624,370 @@ func (c *QuickSight) UpdateDashboardRequest(input *UpdateDashboardInput) (req *r // Amazon QuickSight currently has Standard Edition and Enterprise Edition. // Not every operation and capability is available in every edition. // +// * InvalidNextTokenException +// The NextToken value isn't valid. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboard -func (c *QuickSight) UpdateDashboard(input *UpdateDashboardInput) (*UpdateDashboardOutput, error) { - req, out := c.UpdateDashboardRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/SearchDashboards +func (c *QuickSight) SearchDashboards(input *SearchDashboardsInput) (*SearchDashboardsOutput, error) { + req, out := c.SearchDashboardsRequest(input) return out, req.Send() } -// UpdateDashboardWithContext is the same as UpdateDashboard with the addition of +// SearchDashboardsWithContext is the same as SearchDashboards with the addition of // the ability to pass a context and additional request options. // -// See UpdateDashboard for details on how to use this API operation. +// See SearchDashboards 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 *QuickSight) UpdateDashboardWithContext(ctx aws.Context, input *UpdateDashboardInput, opts ...request.Option) (*UpdateDashboardOutput, error) { - req, out := c.UpdateDashboardRequest(input) +func (c *QuickSight) SearchDashboardsWithContext(ctx aws.Context, input *SearchDashboardsInput, opts ...request.Option) (*SearchDashboardsOutput, error) { + req, out := c.SearchDashboardsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDashboardPermissions = "UpdateDashboardPermissions" +// SearchDashboardsPages iterates over the pages of a SearchDashboards operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchDashboards 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 SearchDashboards operation. +// pageNum := 0 +// err := client.SearchDashboardsPages(params, +// func(page *quicksight.SearchDashboardsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *QuickSight) SearchDashboardsPages(input *SearchDashboardsInput, fn func(*SearchDashboardsOutput, bool) bool) error { + return c.SearchDashboardsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UpdateDashboardPermissionsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDashboardPermissions operation. The "output" return +// SearchDashboardsPagesWithContext same as SearchDashboardsPages 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 *QuickSight) SearchDashboardsPagesWithContext(ctx aws.Context, input *SearchDashboardsInput, fn func(*SearchDashboardsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchDashboardsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchDashboardsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchDashboardsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateDashboardPermissions for more information on using the UpdateDashboardPermissions +// See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateDashboardPermissionsRequest method. -// req, resp := client.UpdateDashboardPermissionsRequest(params) +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPermissions -func (c *QuickSight) UpdateDashboardPermissionsRequest(input *UpdateDashboardPermissionsInput) (req *request.Request, output *UpdateDashboardPermissionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/TagResource +func (c *QuickSight) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ - Name: opUpdateDashboardPermissions, - HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/permissions", + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/resources/{ResourceArn}/tags", } if input == nil { - input = &UpdateDashboardPermissionsInput{} + input = &TagResourceInput{} } - output = &UpdateDashboardPermissionsOutput{} + output = &TagResourceOutput{} req = c.newRequest(op, input, output) return } -// UpdateDashboardPermissions API operation for Amazon QuickSight. +// TagResource API operation for Amazon QuickSight. // -// Updates read and write permissions on a dashboard. +// 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 AWS 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 // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation UpdateDashboardPermissions for usage and error information. +// API operation TagResource for usage and error information. // // Returned Error Types: -// * ThrottlingException -// Access is throttled. -// -// * InvalidParameterValueException -// One or more parameters has a value that isn't valid. +// * LimitExceededException +// A limit is exceeded. // -// * ResourceNotFoundException -// One or more resources can't be found. +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. // -// * 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. -// Not every operation and capability is available in every edition. +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. // -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPermissions -func (c *QuickSight) UpdateDashboardPermissions(input *UpdateDashboardPermissionsInput) (*UpdateDashboardPermissionsOutput, error) { - req, out := c.UpdateDashboardPermissionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/TagResource +func (c *QuickSight) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) return out, req.Send() } -// UpdateDashboardPermissionsWithContext is the same as UpdateDashboardPermissions with the addition of +// TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateDashboardPermissions for details on how to use this API operation. +// See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *QuickSight) UpdateDashboardPermissionsWithContext(ctx aws.Context, input *UpdateDashboardPermissionsInput, opts ...request.Option) (*UpdateDashboardPermissionsOutput, error) { - req, out := c.UpdateDashboardPermissionsRequest(input) +func (c *QuickSight) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDashboardPublishedVersion = "UpdateDashboardPublishedVersion" +const opUntagResource = "UntagResource" -// UpdateDashboardPublishedVersionRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDashboardPublishedVersion operation. The "output" return +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateDashboardPublishedVersion for more information on using the UpdateDashboardPublishedVersion +// See UntagResource for more information on using the UntagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateDashboardPublishedVersionRequest method. -// req, resp := client.UpdateDashboardPublishedVersionRequest(params) +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPublishedVersion -func (c *QuickSight) UpdateDashboardPublishedVersionRequest(input *UpdateDashboardPublishedVersionInput) (req *request.Request, output *UpdateDashboardPublishedVersionOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UntagResource +func (c *QuickSight) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ - Name: opUpdateDashboardPublishedVersion, - HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/versions/{VersionNumber}", + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/resources/{ResourceArn}/tags", } if input == nil { - input = &UpdateDashboardPublishedVersionInput{} + input = &UntagResourceInput{} } - output = &UpdateDashboardPublishedVersionOutput{} + output = &UntagResourceOutput{} req = c.newRequest(op, input, output) return } -// UpdateDashboardPublishedVersion API operation for Amazon QuickSight. +// UntagResource API operation for Amazon QuickSight. // -// Updates the published version of a dashboard. +// Removes a tag or tags from a resource. // // 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 QuickSight's -// API operation UpdateDashboardPublishedVersion for usage and error information. +// API operation UntagResource for usage and error information. // // Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ThrottlingException -// Access is throttled. -// -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. -// // * ResourceNotFoundException // One or more resources can't be found. // -// * 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. -// Not every operation and capability is available in every edition. +// * ThrottlingException +// Access is throttled. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPublishedVersion -func (c *QuickSight) UpdateDashboardPublishedVersion(input *UpdateDashboardPublishedVersionInput) (*UpdateDashboardPublishedVersionOutput, error) { - req, out := c.UpdateDashboardPublishedVersionRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UntagResource +func (c *QuickSight) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) return out, req.Send() } -// UpdateDashboardPublishedVersionWithContext is the same as UpdateDashboardPublishedVersion with the addition of +// UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateDashboardPublishedVersion for details on how to use this API operation. +// See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *QuickSight) UpdateDashboardPublishedVersionWithContext(ctx aws.Context, input *UpdateDashboardPublishedVersionInput, opts ...request.Option) (*UpdateDashboardPublishedVersionOutput, error) { - req, out := c.UpdateDashboardPublishedVersionRequest(input) +func (c *QuickSight) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDataSet = "UpdateDataSet" +const opUpdateDashboard = "UpdateDashboard" -// UpdateDataSetRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDataSet operation. The "output" return +// UpdateDashboardRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDashboard 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 UpdateDataSet for more information on using the UpdateDataSet +// See UpdateDashboard for more information on using the UpdateDashboard // 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 UpdateDataSetRequest method. -// req, resp := client.UpdateDataSetRequest(params) +// // Example sending a request using the UpdateDashboardRequest method. +// req, resp := client.UpdateDashboardRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSet -func (c *QuickSight) UpdateDataSetRequest(input *UpdateDataSetInput) (req *request.Request, output *UpdateDataSetOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboard +func (c *QuickSight) UpdateDashboardRequest(input *UpdateDashboardInput) (req *request.Request, output *UpdateDashboardOutput) { op := &request.Operation{ - Name: opUpdateDataSet, + Name: opUpdateDashboard, HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/data-sets/{DataSetId}", + HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}", } if input == nil { - input = &UpdateDataSetInput{} + input = &UpdateDashboardInput{} } - output = &UpdateDataSetOutput{} + output = &UpdateDashboardOutput{} req = c.newRequest(op, input, output) return } -// UpdateDataSet API operation for Amazon QuickSight. +// UpdateDashboard API operation for Amazon QuickSight. // -// Updates a dataset. +// Updates a dashboard in an AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation UpdateDataSet for usage and error information. +// API operation UpdateDashboard for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -// -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// * ThrottlingException +// Access is throttled. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * LimitExceededException -// A limit is exceeded. -// -// * ThrottlingException -// Access is throttled. -// // * ResourceNotFoundException // One or more resources can't be found. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * LimitExceededException +// A limit is exceeded. +// // * 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. @@ -6258,93 +6997,84 @@ func (c *QuickSight) UpdateDataSetRequest(input *UpdateDataSetInput) (req *reque // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSet -func (c *QuickSight) UpdateDataSet(input *UpdateDataSetInput) (*UpdateDataSetOutput, error) { - req, out := c.UpdateDataSetRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboard +func (c *QuickSight) UpdateDashboard(input *UpdateDashboardInput) (*UpdateDashboardOutput, error) { + req, out := c.UpdateDashboardRequest(input) return out, req.Send() } -// UpdateDataSetWithContext is the same as UpdateDataSet with the addition of +// UpdateDashboardWithContext is the same as UpdateDashboard with the addition of // the ability to pass a context and additional request options. // -// See UpdateDataSet for details on how to use this API operation. +// See UpdateDashboard 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 *QuickSight) UpdateDataSetWithContext(ctx aws.Context, input *UpdateDataSetInput, opts ...request.Option) (*UpdateDataSetOutput, error) { - req, out := c.UpdateDataSetRequest(input) +func (c *QuickSight) UpdateDashboardWithContext(ctx aws.Context, input *UpdateDashboardInput, opts ...request.Option) (*UpdateDashboardOutput, error) { + req, out := c.UpdateDashboardRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDataSetPermissions = "UpdateDataSetPermissions" +const opUpdateDashboardPermissions = "UpdateDashboardPermissions" -// UpdateDataSetPermissionsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDataSetPermissions operation. The "output" return +// UpdateDashboardPermissionsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDashboardPermissions 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 UpdateDataSetPermissions for more information on using the UpdateDataSetPermissions +// See UpdateDashboardPermissions for more information on using the UpdateDashboardPermissions // 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 UpdateDataSetPermissionsRequest method. -// req, resp := client.UpdateDataSetPermissionsRequest(params) +// // Example sending a request using the UpdateDashboardPermissionsRequest method. +// req, resp := client.UpdateDashboardPermissionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSetPermissions -func (c *QuickSight) UpdateDataSetPermissionsRequest(input *UpdateDataSetPermissionsInput) (req *request.Request, output *UpdateDataSetPermissionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPermissions +func (c *QuickSight) UpdateDashboardPermissionsRequest(input *UpdateDashboardPermissionsInput) (req *request.Request, output *UpdateDashboardPermissionsOutput) { op := &request.Operation{ - Name: opUpdateDataSetPermissions, - HTTPMethod: "POST", - HTTPPath: "/accounts/{AwsAccountId}/data-sets/{DataSetId}/permissions", + Name: opUpdateDashboardPermissions, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/permissions", } if input == nil { - input = &UpdateDataSetPermissionsInput{} + input = &UpdateDashboardPermissionsInput{} } - output = &UpdateDataSetPermissionsOutput{} + output = &UpdateDashboardPermissionsOutput{} req = c.newRequest(op, input, output) return } -// UpdateDataSetPermissions API operation for Amazon QuickSight. -// -// Updates the permissions on a dataset. +// UpdateDashboardPermissions API operation for Amazon QuickSight. // -// The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/data-set-id. +// Updates read and write permissions on a dashboard. // // 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 QuickSight's -// API operation UpdateDataSetPermissions for usage and error information. +// API operation UpdateDashboardPermissions for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -// -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// * ThrottlingException +// Access is throttled. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. @@ -6352,184 +7082,189 @@ func (c *QuickSight) UpdateDataSetPermissionsRequest(input *UpdateDataSetPermiss // * ResourceNotFoundException // One or more resources can't be found. // -// * ThrottlingException -// Access is throttled. +// * 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. +// Not every operation and capability is available in every edition. +// +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSetPermissions -func (c *QuickSight) UpdateDataSetPermissions(input *UpdateDataSetPermissionsInput) (*UpdateDataSetPermissionsOutput, error) { - req, out := c.UpdateDataSetPermissionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPermissions +func (c *QuickSight) UpdateDashboardPermissions(input *UpdateDashboardPermissionsInput) (*UpdateDashboardPermissionsOutput, error) { + req, out := c.UpdateDashboardPermissionsRequest(input) return out, req.Send() } -// UpdateDataSetPermissionsWithContext is the same as UpdateDataSetPermissions with the addition of +// UpdateDashboardPermissionsWithContext is the same as UpdateDashboardPermissions with the addition of // the ability to pass a context and additional request options. // -// See UpdateDataSetPermissions for details on how to use this API operation. +// See UpdateDashboardPermissions 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 *QuickSight) UpdateDataSetPermissionsWithContext(ctx aws.Context, input *UpdateDataSetPermissionsInput, opts ...request.Option) (*UpdateDataSetPermissionsOutput, error) { - req, out := c.UpdateDataSetPermissionsRequest(input) +func (c *QuickSight) UpdateDashboardPermissionsWithContext(ctx aws.Context, input *UpdateDashboardPermissionsInput, opts ...request.Option) (*UpdateDashboardPermissionsOutput, error) { + req, out := c.UpdateDashboardPermissionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDataSource = "UpdateDataSource" +const opUpdateDashboardPublishedVersion = "UpdateDashboardPublishedVersion" -// UpdateDataSourceRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDataSource operation. The "output" return +// UpdateDashboardPublishedVersionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDashboardPublishedVersion 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 UpdateDataSource for more information on using the UpdateDataSource +// See UpdateDashboardPublishedVersion for more information on using the UpdateDashboardPublishedVersion // 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 UpdateDataSourceRequest method. -// req, resp := client.UpdateDataSourceRequest(params) +// // Example sending a request using the UpdateDashboardPublishedVersionRequest method. +// req, resp := client.UpdateDashboardPublishedVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSource -func (c *QuickSight) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPublishedVersion +func (c *QuickSight) UpdateDashboardPublishedVersionRequest(input *UpdateDashboardPublishedVersionInput) (req *request.Request, output *UpdateDashboardPublishedVersionOutput) { op := &request.Operation{ - Name: opUpdateDataSource, + Name: opUpdateDashboardPublishedVersion, HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/data-sources/{DataSourceId}", + HTTPPath: "/accounts/{AwsAccountId}/dashboards/{DashboardId}/versions/{VersionNumber}", } if input == nil { - input = &UpdateDataSourceInput{} + input = &UpdateDashboardPublishedVersionInput{} } - output = &UpdateDataSourceOutput{} + output = &UpdateDashboardPublishedVersionOutput{} req = c.newRequest(op, input, output) return } -// UpdateDataSource API operation for Amazon QuickSight. +// UpdateDashboardPublishedVersion API operation for Amazon QuickSight. // -// Updates a data source. +// Updates the published version of a dashboard. // // 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 QuickSight's -// API operation UpdateDataSource for usage and error information. +// API operation UpdateDashboardPublishedVersion for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -// -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. -// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // // * ThrottlingException // Access is throttled. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * ResourceNotFoundException // One or more resources can't be found. // +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSource -func (c *QuickSight) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { - req, out := c.UpdateDataSourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDashboardPublishedVersion +func (c *QuickSight) UpdateDashboardPublishedVersion(input *UpdateDashboardPublishedVersionInput) (*UpdateDashboardPublishedVersionOutput, error) { + req, out := c.UpdateDashboardPublishedVersionRequest(input) return out, req.Send() } -// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of +// UpdateDashboardPublishedVersionWithContext is the same as UpdateDashboardPublishedVersion with the addition of // the ability to pass a context and additional request options. // -// See UpdateDataSource for details on how to use this API operation. +// See UpdateDashboardPublishedVersion 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 *QuickSight) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { - req, out := c.UpdateDataSourceRequest(input) +func (c *QuickSight) UpdateDashboardPublishedVersionWithContext(ctx aws.Context, input *UpdateDashboardPublishedVersionInput, opts ...request.Option) (*UpdateDashboardPublishedVersionOutput, error) { + req, out := c.UpdateDashboardPublishedVersionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDataSourcePermissions = "UpdateDataSourcePermissions" +const opUpdateDataSet = "UpdateDataSet" -// UpdateDataSourcePermissionsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDataSourcePermissions operation. The "output" return +// UpdateDataSetRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSet 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 UpdateDataSourcePermissions for more information on using the UpdateDataSourcePermissions +// See UpdateDataSet for more information on using the UpdateDataSet // 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 UpdateDataSourcePermissionsRequest method. -// req, resp := client.UpdateDataSourcePermissionsRequest(params) +// // Example sending a request using the UpdateDataSetRequest method. +// req, resp := client.UpdateDataSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSourcePermissions -func (c *QuickSight) UpdateDataSourcePermissionsRequest(input *UpdateDataSourcePermissionsInput) (req *request.Request, output *UpdateDataSourcePermissionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSet +func (c *QuickSight) UpdateDataSetRequest(input *UpdateDataSetInput) (req *request.Request, output *UpdateDataSetOutput) { op := &request.Operation{ - Name: opUpdateDataSourcePermissions, - HTTPMethod: "POST", - HTTPPath: "/accounts/{AwsAccountId}/data-sources/{DataSourceId}/permissions", + Name: opUpdateDataSet, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/data-sets/{DataSetId}", } if input == nil { - input = &UpdateDataSourcePermissionsInput{} + input = &UpdateDataSetInput{} } - output = &UpdateDataSourcePermissionsOutput{} + output = &UpdateDataSetOutput{} req = c.newRequest(op, input, output) return } -// UpdateDataSourcePermissions API operation for Amazon QuickSight. +// UpdateDataSet API operation for Amazon QuickSight. // -// Updates the permissions to a data source. +// Updates a dataset. // // 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 QuickSight's -// API operation UpdateDataSourcePermissions for usage and error information. +// API operation UpdateDataSet for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -6545,89 +7280,100 @@ func (c *QuickSight) UpdateDataSourcePermissionsRequest(input *UpdateDataSourceP // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ResourceNotFoundException -// One or more resources can't be found. +// * LimitExceededException +// A limit is exceeded. // // * ThrottlingException // Access is throttled. // +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSourcePermissions -func (c *QuickSight) UpdateDataSourcePermissions(input *UpdateDataSourcePermissionsInput) (*UpdateDataSourcePermissionsOutput, error) { - req, out := c.UpdateDataSourcePermissionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSet +func (c *QuickSight) UpdateDataSet(input *UpdateDataSetInput) (*UpdateDataSetOutput, error) { + req, out := c.UpdateDataSetRequest(input) return out, req.Send() } -// UpdateDataSourcePermissionsWithContext is the same as UpdateDataSourcePermissions with the addition of +// UpdateDataSetWithContext is the same as UpdateDataSet with the addition of // the ability to pass a context and additional request options. // -// See UpdateDataSourcePermissions for details on how to use this API operation. +// See UpdateDataSet 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 *QuickSight) UpdateDataSourcePermissionsWithContext(ctx aws.Context, input *UpdateDataSourcePermissionsInput, opts ...request.Option) (*UpdateDataSourcePermissionsOutput, error) { - req, out := c.UpdateDataSourcePermissionsRequest(input) +func (c *QuickSight) UpdateDataSetWithContext(ctx aws.Context, input *UpdateDataSetInput, opts ...request.Option) (*UpdateDataSetOutput, error) { + req, out := c.UpdateDataSetRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateGroup = "UpdateGroup" +const opUpdateDataSetPermissions = "UpdateDataSetPermissions" -// UpdateGroupRequest generates a "aws/request.Request" representing the -// client's request for the UpdateGroup operation. The "output" return +// UpdateDataSetPermissionsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSetPermissions 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 UpdateGroup for more information on using the UpdateGroup +// See UpdateDataSetPermissions for more information on using the UpdateDataSetPermissions // 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 UpdateGroupRequest method. -// req, resp := client.UpdateGroupRequest(params) +// // Example sending a request using the UpdateDataSetPermissionsRequest method. +// req, resp := client.UpdateDataSetPermissionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateGroup -func (c *QuickSight) UpdateGroupRequest(input *UpdateGroupInput) (req *request.Request, output *UpdateGroupOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSetPermissions +func (c *QuickSight) UpdateDataSetPermissionsRequest(input *UpdateDataSetPermissionsInput) (req *request.Request, output *UpdateDataSetPermissionsOutput) { op := &request.Operation{ - Name: opUpdateGroup, - HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}", + Name: opUpdateDataSetPermissions, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/data-sets/{DataSetId}/permissions", } if input == nil { - input = &UpdateGroupInput{} + input = &UpdateDataSetPermissionsInput{} } - output = &UpdateGroupOutput{} + output = &UpdateDataSetPermissionsOutput{} req = c.newRequest(op, input, output) return } -// UpdateGroup API operation for Amazon QuickSight. +// UpdateDataSetPermissions API operation for Amazon QuickSight. // -// Changes a group description. +// Updates the permissions on a dataset. +// +// The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/data-set-id. // // 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 QuickSight's -// API operation UpdateGroup for usage and error information. +// API operation UpdateDataSetPermissions for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -6637,6 +7383,9 @@ func (c *QuickSight) UpdateGroupRequest(input *UpdateGroupInput) (req *request.R // your policies have the correct permissions, and that you are using the correct // access keys. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // @@ -6646,90 +7395,83 @@ func (c *QuickSight) UpdateGroupRequest(input *UpdateGroupInput) (req *request.R // * ThrottlingException // Access is throttled. // -// * PreconditionNotMetException -// One or more preconditions aren't met. -// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateGroup -func (c *QuickSight) UpdateGroup(input *UpdateGroupInput) (*UpdateGroupOutput, error) { - req, out := c.UpdateGroupRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSetPermissions +func (c *QuickSight) UpdateDataSetPermissions(input *UpdateDataSetPermissionsInput) (*UpdateDataSetPermissionsOutput, error) { + req, out := c.UpdateDataSetPermissionsRequest(input) return out, req.Send() } -// UpdateGroupWithContext is the same as UpdateGroup with the addition of +// UpdateDataSetPermissionsWithContext is the same as UpdateDataSetPermissions with the addition of // the ability to pass a context and additional request options. // -// See UpdateGroup for details on how to use this API operation. +// See UpdateDataSetPermissions 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 *QuickSight) UpdateGroupWithContext(ctx aws.Context, input *UpdateGroupInput, opts ...request.Option) (*UpdateGroupOutput, error) { - req, out := c.UpdateGroupRequest(input) +func (c *QuickSight) UpdateDataSetPermissionsWithContext(ctx aws.Context, input *UpdateDataSetPermissionsInput, opts ...request.Option) (*UpdateDataSetPermissionsOutput, error) { + req, out := c.UpdateDataSetPermissionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateIAMPolicyAssignment = "UpdateIAMPolicyAssignment" +const opUpdateDataSource = "UpdateDataSource" -// UpdateIAMPolicyAssignmentRequest generates a "aws/request.Request" representing the -// client's request for the UpdateIAMPolicyAssignment operation. The "output" return +// UpdateDataSourceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSource 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 UpdateIAMPolicyAssignment for more information on using the UpdateIAMPolicyAssignment +// See UpdateDataSource for more information on using the UpdateDataSource // 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 UpdateIAMPolicyAssignmentRequest method. -// req, resp := client.UpdateIAMPolicyAssignmentRequest(params) +// // Example sending a request using the UpdateDataSourceRequest method. +// req, resp := client.UpdateDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateIAMPolicyAssignment -func (c *QuickSight) UpdateIAMPolicyAssignmentRequest(input *UpdateIAMPolicyAssignmentInput) (req *request.Request, output *UpdateIAMPolicyAssignmentOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSource +func (c *QuickSight) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { op := &request.Operation{ - Name: opUpdateIAMPolicyAssignment, + Name: opUpdateDataSource, HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments/{AssignmentName}", + HTTPPath: "/accounts/{AwsAccountId}/data-sources/{DataSourceId}", } if input == nil { - input = &UpdateIAMPolicyAssignmentInput{} + input = &UpdateDataSourceInput{} } - output = &UpdateIAMPolicyAssignmentOutput{} + output = &UpdateDataSourceOutput{} req = c.newRequest(op, input, output) return } -// UpdateIAMPolicyAssignment API operation for Amazon QuickSight. +// UpdateDataSource API operation for Amazon QuickSight. // -// Updates an existing IAM policy assignment. This operation updates only the -// optional parameter or parameters that are specified in the request. +// Updates a data source. // // 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 QuickSight's -// API operation UpdateIAMPolicyAssignment for usage and error information. +// API operation UpdateDataSource for usage and error information. // // Returned Error Types: // * AccessDeniedException @@ -6739,107 +7481,109 @@ func (c *QuickSight) UpdateIAMPolicyAssignmentRequest(input *UpdateIAMPolicyAssi // your policies have the correct permissions, and that you are using the correct // access keys. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ResourceExistsException -// The resource specified already exists. -// -// * ResourceNotFoundException -// One or more resources can't be found. -// // * ThrottlingException // Access is throttled. // -// * ConcurrentUpdatingException -// A resource is already in a state that indicates an action is happening that -// must complete before a new update can be applied. +// * ResourceNotFoundException +// One or more resources can't be found. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateIAMPolicyAssignment -func (c *QuickSight) UpdateIAMPolicyAssignment(input *UpdateIAMPolicyAssignmentInput) (*UpdateIAMPolicyAssignmentOutput, error) { - req, out := c.UpdateIAMPolicyAssignmentRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSource +func (c *QuickSight) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) return out, req.Send() } -// UpdateIAMPolicyAssignmentWithContext is the same as UpdateIAMPolicyAssignment with the addition of +// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of // the ability to pass a context and additional request options. // -// See UpdateIAMPolicyAssignment for details on how to use this API operation. +// See UpdateDataSource 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 *QuickSight) UpdateIAMPolicyAssignmentWithContext(ctx aws.Context, input *UpdateIAMPolicyAssignmentInput, opts ...request.Option) (*UpdateIAMPolicyAssignmentOutput, error) { - req, out := c.UpdateIAMPolicyAssignmentRequest(input) +func (c *QuickSight) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) { + req, out := c.UpdateDataSourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateTemplate = "UpdateTemplate" +const opUpdateDataSourcePermissions = "UpdateDataSourcePermissions" -// UpdateTemplateRequest generates a "aws/request.Request" representing the -// client's request for the UpdateTemplate operation. The "output" return +// UpdateDataSourcePermissionsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDataSourcePermissions 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 UpdateTemplate for more information on using the UpdateTemplate +// See UpdateDataSourcePermissions for more information on using the UpdateDataSourcePermissions // 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 UpdateTemplateRequest method. -// req, resp := client.UpdateTemplateRequest(params) +// // Example sending a request using the UpdateDataSourcePermissionsRequest method. +// req, resp := client.UpdateDataSourcePermissionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplate -func (c *QuickSight) UpdateTemplateRequest(input *UpdateTemplateInput) (req *request.Request, output *UpdateTemplateOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSourcePermissions +func (c *QuickSight) UpdateDataSourcePermissionsRequest(input *UpdateDataSourcePermissionsInput) (req *request.Request, output *UpdateDataSourcePermissionsOutput) { op := &request.Operation{ - Name: opUpdateTemplate, - HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/templates/{TemplateId}", + Name: opUpdateDataSourcePermissions, + HTTPMethod: "POST", + HTTPPath: "/accounts/{AwsAccountId}/data-sources/{DataSourceId}/permissions", } if input == nil { - input = &UpdateTemplateInput{} + input = &UpdateDataSourcePermissionsInput{} } - output = &UpdateTemplateOutput{} + output = &UpdateDataSourcePermissionsOutput{} req = c.newRequest(op, input, output) return } -// UpdateTemplate API operation for Amazon QuickSight. +// UpdateDataSourcePermissions API operation for Amazon QuickSight. // -// Updates a template from an existing Amazon QuickSight analysis or another -// template. +// Updates the permissions to a data source. // // 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 QuickSight's -// API operation UpdateTemplate for usage and error information. +// API operation UpdateDataSourcePermissions for usage and error information. // // Returned Error Types: -// * InvalidParameterValueException -// One or more parameters has a value that isn't valid. -// -// * ResourceExistsException -// The resource specified already exists. +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. // // * ResourceNotFoundException // One or more resources can't be found. @@ -6847,480 +7591,3314 @@ func (c *QuickSight) UpdateTemplateRequest(input *UpdateTemplateInput) (req *req // * ThrottlingException // Access is throttled. // -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. -// -// * LimitExceededException -// A limit is exceeded. -// -// * 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. -// Not every operation and capability is available in every edition. -// // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplate -func (c *QuickSight) UpdateTemplate(input *UpdateTemplateInput) (*UpdateTemplateOutput, error) { - req, out := c.UpdateTemplateRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSourcePermissions +func (c *QuickSight) UpdateDataSourcePermissions(input *UpdateDataSourcePermissionsInput) (*UpdateDataSourcePermissionsOutput, error) { + req, out := c.UpdateDataSourcePermissionsRequest(input) return out, req.Send() } -// UpdateTemplateWithContext is the same as UpdateTemplate with the addition of +// UpdateDataSourcePermissionsWithContext is the same as UpdateDataSourcePermissions with the addition of // the ability to pass a context and additional request options. // -// See UpdateTemplate for details on how to use this API operation. +// See UpdateDataSourcePermissions 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 *QuickSight) UpdateTemplateWithContext(ctx aws.Context, input *UpdateTemplateInput, opts ...request.Option) (*UpdateTemplateOutput, error) { - req, out := c.UpdateTemplateRequest(input) +func (c *QuickSight) UpdateDataSourcePermissionsWithContext(ctx aws.Context, input *UpdateDataSourcePermissionsInput, opts ...request.Option) (*UpdateDataSourcePermissionsOutput, error) { + req, out := c.UpdateDataSourcePermissionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateTemplateAlias = "UpdateTemplateAlias" +const opUpdateGroup = "UpdateGroup" -// UpdateTemplateAliasRequest generates a "aws/request.Request" representing the -// client's request for the UpdateTemplateAlias operation. The "output" return +// UpdateGroupRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGroup 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 UpdateTemplateAlias for more information on using the UpdateTemplateAlias +// See UpdateGroup for more information on using the UpdateGroup // 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 UpdateTemplateAliasRequest method. -// req, resp := client.UpdateTemplateAliasRequest(params) +// // Example sending a request using the UpdateGroupRequest method. +// req, resp := client.UpdateGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplateAlias -func (c *QuickSight) UpdateTemplateAliasRequest(input *UpdateTemplateAliasInput) (req *request.Request, output *UpdateTemplateAliasOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateGroup +func (c *QuickSight) UpdateGroupRequest(input *UpdateGroupInput) (req *request.Request, output *UpdateGroupOutput) { op := &request.Operation{ - Name: opUpdateTemplateAlias, + Name: opUpdateGroup, HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/templates/{TemplateId}/aliases/{AliasName}", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}", } if input == nil { - input = &UpdateTemplateAliasInput{} + input = &UpdateGroupInput{} } - output = &UpdateTemplateAliasOutput{} + output = &UpdateGroupOutput{} req = c.newRequest(op, input, output) return } -// UpdateTemplateAlias API operation for Amazon QuickSight. +// UpdateGroup API operation for Amazon QuickSight. // -// Updates the template alias of a template. +// Changes a group description. // // 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 QuickSight's -// API operation UpdateTemplateAlias for usage and error information. +// API operation UpdateGroup for usage and error information. // // Returned Error Types: -// * ThrottlingException -// Access is throttled. +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. // // * ResourceNotFoundException // One or more resources can't be found. // -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// * ThrottlingException +// Access is throttled. // -// * 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. -// Not every operation and capability is available in every edition. +// * PreconditionNotMetException +// One or more preconditions aren't met. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplateAlias -func (c *QuickSight) UpdateTemplateAlias(input *UpdateTemplateAliasInput) (*UpdateTemplateAliasOutput, error) { - req, out := c.UpdateTemplateAliasRequest(input) +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateGroup +func (c *QuickSight) UpdateGroup(input *UpdateGroupInput) (*UpdateGroupOutput, error) { + req, out := c.UpdateGroupRequest(input) return out, req.Send() } -// UpdateTemplateAliasWithContext is the same as UpdateTemplateAlias with the addition of +// UpdateGroupWithContext is the same as UpdateGroup with the addition of // the ability to pass a context and additional request options. // -// See UpdateTemplateAlias for details on how to use this API operation. +// See UpdateGroup 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 *QuickSight) UpdateTemplateAliasWithContext(ctx aws.Context, input *UpdateTemplateAliasInput, opts ...request.Option) (*UpdateTemplateAliasOutput, error) { - req, out := c.UpdateTemplateAliasRequest(input) +func (c *QuickSight) UpdateGroupWithContext(ctx aws.Context, input *UpdateGroupInput, opts ...request.Option) (*UpdateGroupOutput, error) { + req, out := c.UpdateGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateTemplatePermissions = "UpdateTemplatePermissions" +const opUpdateIAMPolicyAssignment = "UpdateIAMPolicyAssignment" -// UpdateTemplatePermissionsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateTemplatePermissions operation. The "output" return +// UpdateIAMPolicyAssignmentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateIAMPolicyAssignment 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 UpdateTemplatePermissions for more information on using the UpdateTemplatePermissions +// See UpdateIAMPolicyAssignment for more information on using the UpdateIAMPolicyAssignment // 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 UpdateTemplatePermissionsRequest method. -// req, resp := client.UpdateTemplatePermissionsRequest(params) +// // Example sending a request using the UpdateIAMPolicyAssignmentRequest method. +// req, resp := client.UpdateIAMPolicyAssignmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplatePermissions -func (c *QuickSight) UpdateTemplatePermissionsRequest(input *UpdateTemplatePermissionsInput) (req *request.Request, output *UpdateTemplatePermissionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateIAMPolicyAssignment +func (c *QuickSight) UpdateIAMPolicyAssignmentRequest(input *UpdateIAMPolicyAssignmentInput) (req *request.Request, output *UpdateIAMPolicyAssignmentOutput) { op := &request.Operation{ - Name: opUpdateTemplatePermissions, + Name: opUpdateIAMPolicyAssignment, HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/templates/{TemplateId}/permissions", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments/{AssignmentName}", } if input == nil { - input = &UpdateTemplatePermissionsInput{} + input = &UpdateIAMPolicyAssignmentInput{} } - output = &UpdateTemplatePermissionsOutput{} + output = &UpdateIAMPolicyAssignmentOutput{} req = c.newRequest(op, input, output) return } -// UpdateTemplatePermissions API operation for Amazon QuickSight. +// UpdateIAMPolicyAssignment API operation for Amazon QuickSight. // -// Updates the resource permissions for a template. +// Updates an existing IAM policy assignment. This operation updates only the +// optional parameter or parameters that are specified in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon QuickSight's -// API operation UpdateTemplatePermissions for usage and error information. +// API operation UpdateIAMPolicyAssignment for usage and error information. // // Returned Error Types: -// * ThrottlingException -// Access is throttled. +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. // // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // -// * ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// * ResourceExistsException +// The resource specified already exists. // // * ResourceNotFoundException // One or more resources can't be found. // -// * 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. -// Not every operation and capability is available in every edition. +// * ThrottlingException +// Access is throttled. +// +// * ConcurrentUpdatingException +// A resource is already in a state that indicates an action is happening that +// must complete before a new update can be applied. // // * InternalFailureException // An internal failure occurred. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplatePermissions -func (c *QuickSight) UpdateTemplatePermissions(input *UpdateTemplatePermissionsInput) (*UpdateTemplatePermissionsOutput, error) { - req, out := c.UpdateTemplatePermissionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateIAMPolicyAssignment +func (c *QuickSight) UpdateIAMPolicyAssignment(input *UpdateIAMPolicyAssignmentInput) (*UpdateIAMPolicyAssignmentOutput, error) { + req, out := c.UpdateIAMPolicyAssignmentRequest(input) return out, req.Send() } -// UpdateTemplatePermissionsWithContext is the same as UpdateTemplatePermissions with the addition of +// UpdateIAMPolicyAssignmentWithContext is the same as UpdateIAMPolicyAssignment with the addition of // the ability to pass a context and additional request options. // -// See UpdateTemplatePermissions for details on how to use this API operation. +// See UpdateIAMPolicyAssignment 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 *QuickSight) UpdateTemplatePermissionsWithContext(ctx aws.Context, input *UpdateTemplatePermissionsInput, opts ...request.Option) (*UpdateTemplatePermissionsOutput, error) { - req, out := c.UpdateTemplatePermissionsRequest(input) +func (c *QuickSight) UpdateIAMPolicyAssignmentWithContext(ctx aws.Context, input *UpdateIAMPolicyAssignmentInput, opts ...request.Option) (*UpdateIAMPolicyAssignmentOutput, error) { + req, out := c.UpdateIAMPolicyAssignmentRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateUser = "UpdateUser" +const opUpdateTemplate = "UpdateTemplate" -// UpdateUserRequest generates a "aws/request.Request" representing the -// client's request for the UpdateUser operation. The "output" return +// UpdateTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTemplate 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 UpdateUser for more information on using the UpdateUser +// See UpdateTemplate for more information on using the UpdateTemplate // 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 UpdateUserRequest method. -// req, resp := client.UpdateUserRequest(params) +// // Example sending a request using the UpdateTemplateRequest method. +// req, resp := client.UpdateTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateUser -func (c *QuickSight) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplate +func (c *QuickSight) UpdateTemplateRequest(input *UpdateTemplateInput) (req *request.Request, output *UpdateTemplateOutput) { op := &request.Operation{ - Name: opUpdateUser, + Name: opUpdateTemplate, HTTPMethod: "PUT", - HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}", + HTTPPath: "/accounts/{AwsAccountId}/templates/{TemplateId}", } if input == nil { - input = &UpdateUserInput{} + input = &UpdateTemplateInput{} } - output = &UpdateUserOutput{} + output = &UpdateTemplateOutput{} req = c.newRequest(op, input, output) return } -// UpdateUser API operation for Amazon QuickSight. +// UpdateTemplate API operation for Amazon QuickSight. // -// Updates an Amazon QuickSight user. +// Updates a template from an existing Amazon QuickSight analysis or another +// template. // // 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 QuickSight's -// API operation UpdateUser for usage and error information. +// API operation UpdateTemplate for usage and error information. // // Returned Error Types: -// * AccessDeniedException -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -// // * InvalidParameterValueException // One or more parameters has a value that isn't valid. // +// * ResourceExistsException +// The resource specified already exists. +// // * ResourceNotFoundException // One or more resources can't be found. // // * ThrottlingException // Access is throttled. // +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * LimitExceededException +// A limit is exceeded. +// +// * 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. +// Not every operation and capability is available in every edition. +// // * InternalFailureException // An internal failure occurred. // -// * ResourceUnavailableException -// This resource is currently unavailable. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateUser -func (c *QuickSight) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { - req, out := c.UpdateUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplate +func (c *QuickSight) UpdateTemplate(input *UpdateTemplateInput) (*UpdateTemplateOutput, error) { + req, out := c.UpdateTemplateRequest(input) return out, req.Send() } -// UpdateUserWithContext is the same as UpdateUser with the addition of +// UpdateTemplateWithContext is the same as UpdateTemplate with the addition of // the ability to pass a context and additional request options. // -// See UpdateUser for details on how to use this API operation. +// See UpdateTemplate 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 *QuickSight) UpdateUserWithContext(ctx aws.Context, input *UpdateUserInput, opts ...request.Option) (*UpdateUserOutput, error) { - req, out := c.UpdateUserRequest(input) +func (c *QuickSight) UpdateTemplateWithContext(ctx aws.Context, input *UpdateTemplateInput, opts ...request.Option) (*UpdateTemplateOutput, error) { + req, out := c.UpdateTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// You don't have access to this item. The provided credentials couldn't be -// validated. You might not be authorized to carry out the request. Make sure -// that your account is authorized to use the Amazon QuickSight service, that -// your policies have the correct permissions, and that you are using the correct -// access keys. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` +const opUpdateTemplateAlias = "UpdateTemplateAlias" + +// UpdateTemplateAliasRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTemplateAlias 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 UpdateTemplateAlias for more information on using the UpdateTemplateAlias +// 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 UpdateTemplateAliasRequest method. +// req, resp := client.UpdateTemplateAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplateAlias +func (c *QuickSight) UpdateTemplateAliasRequest(input *UpdateTemplateAliasInput) (req *request.Request, output *UpdateTemplateAliasOutput) { + op := &request.Operation{ + Name: opUpdateTemplateAlias, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/templates/{TemplateId}/aliases/{AliasName}", + } + + if input == nil { + input = &UpdateTemplateAliasInput{} + } + + output = &UpdateTemplateAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTemplateAlias API operation for Amazon QuickSight. +// +// Updates the template alias of a template. +// +// 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 QuickSight's +// API operation UpdateTemplateAlias for usage and error information. +// +// Returned Error Types: +// * ThrottlingException +// Access is throttled. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplateAlias +func (c *QuickSight) UpdateTemplateAlias(input *UpdateTemplateAliasInput) (*UpdateTemplateAliasOutput, error) { + req, out := c.UpdateTemplateAliasRequest(input) + return out, req.Send() +} + +// UpdateTemplateAliasWithContext is the same as UpdateTemplateAlias with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTemplateAlias 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 *QuickSight) UpdateTemplateAliasWithContext(ctx aws.Context, input *UpdateTemplateAliasInput, opts ...request.Option) (*UpdateTemplateAliasOutput, error) { + req, out := c.UpdateTemplateAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateTemplatePermissions = "UpdateTemplatePermissions" + +// UpdateTemplatePermissionsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTemplatePermissions 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 UpdateTemplatePermissions for more information on using the UpdateTemplatePermissions +// 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 UpdateTemplatePermissionsRequest method. +// req, resp := client.UpdateTemplatePermissionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplatePermissions +func (c *QuickSight) UpdateTemplatePermissionsRequest(input *UpdateTemplatePermissionsInput) (req *request.Request, output *UpdateTemplatePermissionsOutput) { + op := &request.Operation{ + Name: opUpdateTemplatePermissions, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/templates/{TemplateId}/permissions", + } + + if input == nil { + input = &UpdateTemplatePermissionsInput{} + } + + output = &UpdateTemplatePermissionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTemplatePermissions API operation for Amazon QuickSight. +// +// Updates the resource permissions for a template. +// +// 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 QuickSight's +// API operation UpdateTemplatePermissions for usage and error information. +// +// Returned Error Types: +// * ThrottlingException +// Access is throttled. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTemplatePermissions +func (c *QuickSight) UpdateTemplatePermissions(input *UpdateTemplatePermissionsInput) (*UpdateTemplatePermissionsOutput, error) { + req, out := c.UpdateTemplatePermissionsRequest(input) + return out, req.Send() +} + +// UpdateTemplatePermissionsWithContext is the same as UpdateTemplatePermissions with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTemplatePermissions 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 *QuickSight) UpdateTemplatePermissionsWithContext(ctx aws.Context, input *UpdateTemplatePermissionsInput, opts ...request.Option) (*UpdateTemplatePermissionsOutput, error) { + req, out := c.UpdateTemplatePermissionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateTheme = "UpdateTheme" + +// UpdateThemeRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTheme 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 UpdateTheme for more information on using the UpdateTheme +// 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 UpdateThemeRequest method. +// req, resp := client.UpdateThemeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTheme +func (c *QuickSight) UpdateThemeRequest(input *UpdateThemeInput) (req *request.Request, output *UpdateThemeOutput) { + op := &request.Operation{ + Name: opUpdateTheme, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}", + } + + if input == nil { + input = &UpdateThemeInput{} + } + + output = &UpdateThemeOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTheme API operation for Amazon QuickSight. +// +// Updates a theme. +// +// 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 QuickSight's +// API operation UpdateTheme for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * LimitExceededException +// A limit is exceeded. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateTheme +func (c *QuickSight) UpdateTheme(input *UpdateThemeInput) (*UpdateThemeOutput, error) { + req, out := c.UpdateThemeRequest(input) + return out, req.Send() +} + +// UpdateThemeWithContext is the same as UpdateTheme with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTheme 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 *QuickSight) UpdateThemeWithContext(ctx aws.Context, input *UpdateThemeInput, opts ...request.Option) (*UpdateThemeOutput, error) { + req, out := c.UpdateThemeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateThemeAlias = "UpdateThemeAlias" + +// UpdateThemeAliasRequest generates a "aws/request.Request" representing the +// client's request for the UpdateThemeAlias 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 UpdateThemeAlias for more information on using the UpdateThemeAlias +// 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 UpdateThemeAliasRequest method. +// req, resp := client.UpdateThemeAliasRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateThemeAlias +func (c *QuickSight) UpdateThemeAliasRequest(input *UpdateThemeAliasInput) (req *request.Request, output *UpdateThemeAliasOutput) { + op := &request.Operation{ + Name: opUpdateThemeAlias, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}", + } + + if input == nil { + input = &UpdateThemeAliasInput{} + } + + output = &UpdateThemeAliasOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateThemeAlias API operation for Amazon QuickSight. +// +// Updates an alias of a theme. +// +// 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 QuickSight's +// API operation UpdateThemeAlias for usage and error information. +// +// Returned Error Types: +// * ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceExistsException +// The resource specified already exists. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateThemeAlias +func (c *QuickSight) UpdateThemeAlias(input *UpdateThemeAliasInput) (*UpdateThemeAliasOutput, error) { + req, out := c.UpdateThemeAliasRequest(input) + return out, req.Send() +} + +// UpdateThemeAliasWithContext is the same as UpdateThemeAlias with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateThemeAlias 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 *QuickSight) UpdateThemeAliasWithContext(ctx aws.Context, input *UpdateThemeAliasInput, opts ...request.Option) (*UpdateThemeAliasOutput, error) { + req, out := c.UpdateThemeAliasRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateThemePermissions = "UpdateThemePermissions" + +// UpdateThemePermissionsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateThemePermissions 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 UpdateThemePermissions for more information on using the UpdateThemePermissions +// 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 UpdateThemePermissionsRequest method. +// req, resp := client.UpdateThemePermissionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateThemePermissions +func (c *QuickSight) UpdateThemePermissionsRequest(input *UpdateThemePermissionsInput) (req *request.Request, output *UpdateThemePermissionsOutput) { + op := &request.Operation{ + Name: opUpdateThemePermissions, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/themes/{ThemeId}/permissions", + } + + if input == nil { + input = &UpdateThemePermissionsInput{} + } + + output = &UpdateThemePermissionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateThemePermissions API operation for Amazon QuickSight. +// +// Updates the resource permissions for a theme. Permissions apply to the action +// to grant or revoke permissions on, for example "quicksight:DescribeTheme". +// +// Theme permissions apply in groupings. Valid groupings include the following +// for the three levels of permissions, which are user, owner, or no permissions: +// +// * User "quicksight:DescribeTheme" "quicksight:DescribeThemeAlias" "quicksight:ListThemeAliases" +// "quicksight:ListThemeVersions" +// +// * Owner "quicksight:DescribeTheme" "quicksight:DescribeThemeAlias" "quicksight:ListThemeAliases" +// "quicksight:ListThemeVersions" "quicksight:DeleteTheme" "quicksight:UpdateTheme" +// "quicksight:CreateThemeAlias" "quicksight:DeleteThemeAlias" "quicksight:UpdateThemeAlias" +// "quicksight:UpdateThemePermissions" "quicksight:DescribeThemePermissions" +// +// * To specify no permissions, omit the permissions list. +// +// 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 QuickSight's +// API operation UpdateThemePermissions for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * 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. +// Not every operation and capability is available in every edition. +// +// * InternalFailureException +// An internal failure occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateThemePermissions +func (c *QuickSight) UpdateThemePermissions(input *UpdateThemePermissionsInput) (*UpdateThemePermissionsOutput, error) { + req, out := c.UpdateThemePermissionsRequest(input) + return out, req.Send() +} + +// UpdateThemePermissionsWithContext is the same as UpdateThemePermissions with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateThemePermissions 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 *QuickSight) UpdateThemePermissionsWithContext(ctx aws.Context, input *UpdateThemePermissionsInput, opts ...request.Option) (*UpdateThemePermissionsOutput, error) { + req, out := c.UpdateThemePermissionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateUser = "UpdateUser" + +// UpdateUserRequest generates a "aws/request.Request" representing the +// client's request for the UpdateUser 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 UpdateUser for more information on using the UpdateUser +// 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 UpdateUserRequest method. +// req, resp := client.UpdateUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateUser +func (c *QuickSight) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { + op := &request.Operation{ + Name: opUpdateUser, + HTTPMethod: "PUT", + HTTPPath: "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}", + } + + if input == nil { + input = &UpdateUserInput{} + } + + output = &UpdateUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateUser API operation for Amazon QuickSight. +// +// Updates an Amazon QuickSight user. +// +// 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 QuickSight's +// API operation UpdateUser for usage and error information. +// +// Returned Error Types: +// * AccessDeniedException +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +// +// * InvalidParameterValueException +// One or more parameters has a value that isn't valid. +// +// * ResourceNotFoundException +// One or more resources can't be found. +// +// * ThrottlingException +// Access is throttled. +// +// * InternalFailureException +// An internal failure occurred. +// +// * ResourceUnavailableException +// This resource is currently unavailable. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateUser +func (c *QuickSight) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { + req, out := c.UpdateUserRequest(input) + return out, req.Send() +} + +// UpdateUserWithContext is the same as UpdateUser with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateUser 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 *QuickSight) UpdateUserWithContext(ctx aws.Context, input *UpdateUserInput, opts ...request.Option) (*UpdateUserOutput, error) { + req, out := c.UpdateUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You don't have access to this item. The provided credentials couldn't be +// validated. You might not be authorized to carry out the request. Make sure +// that your account is authorized to use the Amazon QuickSight service, that +// your policies have the correct permissions, and that you are using the correct +// access keys. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The AWS request ID for this request. + RequestId *string `type:"string"` +} + +// String returns the string representation +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The active AWS Identity and Access Management (IAM) policy assignment. +type ActiveIAMPolicyAssignment struct { + _ struct{} `type:"structure"` + + // A name for the IAM policy assignment. + AssignmentName *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the resource. + PolicyArn *string `type:"string"` +} + +// String returns the string representation +func (s ActiveIAMPolicyAssignment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ActiveIAMPolicyAssignment) GoString() string { + return s.String() +} + +// SetAssignmentName sets the AssignmentName field's value. +func (s *ActiveIAMPolicyAssignment) SetAssignmentName(v string) *ActiveIAMPolicyAssignment { + s.AssignmentName = &v + return s +} + +// SetPolicyArn sets the PolicyArn field's value. +func (s *ActiveIAMPolicyAssignment) SetPolicyArn(v string) *ActiveIAMPolicyAssignment { + s.PolicyArn = &v + return s +} + +// Ad hoc (one-time) filtering option. +type AdHocFilteringOption struct { + _ struct{} `type:"structure"` + + // Availability status. + AvailabilityStatus *string `type:"string" enum:"DashboardBehavior"` +} + +// String returns the string representation +func (s AdHocFilteringOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AdHocFilteringOption) GoString() string { + return s.String() +} + +// SetAvailabilityStatus sets the AvailabilityStatus field's value. +func (s *AdHocFilteringOption) SetAvailabilityStatus(v string) *AdHocFilteringOption { + s.AvailabilityStatus = &v + return s +} + +// Amazon Elasticsearch Service parameters. +type AmazonElasticsearchParameters struct { + _ struct{} `type:"structure"` + + // The Amazon Elasticsearch Service domain. + // + // Domain is a required field + Domain *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s AmazonElasticsearchParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AmazonElasticsearchParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AmazonElasticsearchParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AmazonElasticsearchParameters"} + if s.Domain == nil { + invalidParams.Add(request.NewErrParamRequired("Domain")) + } + if s.Domain != nil && len(*s.Domain) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomain sets the Domain field's value. +func (s *AmazonElasticsearchParameters) SetDomain(v string) *AmazonElasticsearchParameters { + s.Domain = &v + return s +} + +// Amazon Athena parameters. +type AthenaParameters struct { + _ struct{} `type:"structure"` + + // The workgroup that Amazon Athena uses. + WorkGroup *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s AthenaParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AthenaParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AthenaParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AthenaParameters"} + if s.WorkGroup != nil && len(*s.WorkGroup) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkGroup", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkGroup sets the WorkGroup field's value. +func (s *AthenaParameters) SetWorkGroup(v string) *AthenaParameters { + s.WorkGroup = &v + return s +} + +// Amazon Aurora parameters. +type AuroraParameters struct { + _ struct{} `type:"structure"` + + // Database. + // + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` + + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` + + // Port. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` +} + +// String returns the string representation +func (s AuroraParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AuroraParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuroraParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuroraParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) + } + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabase sets the Database field's value. +func (s *AuroraParameters) SetDatabase(v string) *AuroraParameters { + s.Database = &v + return s +} + +// SetHost sets the Host field's value. +func (s *AuroraParameters) SetHost(v string) *AuroraParameters { + s.Host = &v + return s +} + +// SetPort sets the Port field's value. +func (s *AuroraParameters) SetPort(v int64) *AuroraParameters { + s.Port = &v + return s +} + +// Amazon Aurora with PostgreSQL compatibility parameters. +type AuroraPostgreSqlParameters struct { + _ struct{} `type:"structure"` + + // Database. + // + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` + + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` + + // Port. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` +} + +// String returns the string representation +func (s AuroraPostgreSqlParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AuroraPostgreSqlParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuroraPostgreSqlParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuroraPostgreSqlParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) + } + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabase sets the Database field's value. +func (s *AuroraPostgreSqlParameters) SetDatabase(v string) *AuroraPostgreSqlParameters { + s.Database = &v + return s +} + +// SetHost sets the Host field's value. +func (s *AuroraPostgreSqlParameters) SetHost(v string) *AuroraPostgreSqlParameters { + s.Host = &v + return s +} + +// SetPort sets the Port field's value. +func (s *AuroraPostgreSqlParameters) SetPort(v int64) *AuroraPostgreSqlParameters { + s.Port = &v + return s +} + +// AWS IoT Analytics parameters. +type AwsIotAnalyticsParameters struct { + _ struct{} `type:"structure"` + + // Dataset name. + // + // DataSetName is a required field + DataSetName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s AwsIotAnalyticsParameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsIotAnalyticsParameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsIotAnalyticsParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsIotAnalyticsParameters"} + if s.DataSetName == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetName")) + } + if s.DataSetName != nil && len(*s.DataSetName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataSetName sets the DataSetName field's value. +func (s *AwsIotAnalyticsParameters) SetDataSetName(v string) *AwsIotAnalyticsParameters { + s.DataSetName = &v + return s +} + +// The display options for tile borders for visuals. +type BorderStyle struct { + _ struct{} `type:"structure"` + + // The option to enable display of borders for visuals. + Show *bool `type:"boolean"` +} + +// String returns the string representation +func (s BorderStyle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BorderStyle) GoString() string { + return s.String() +} + +// SetShow sets the Show field's value. +func (s *BorderStyle) SetShow(v bool) *BorderStyle { + s.Show = &v + return s +} + +// A calculated column for a dataset. +type CalculatedColumn struct { + _ struct{} `type:"structure"` + + // A unique ID to identify a calculated column. During a dataset update, if + // the column ID of a calculated column matches that of an existing calculated + // column, Amazon QuickSight preserves the existing calculated column. + // + // ColumnId is a required field + ColumnId *string `min:"1" type:"string" required:"true"` + + // Column name. + // + // ColumnName is a required field + ColumnName *string `min:"1" type:"string" required:"true"` + + // An expression that defines the calculated column. + // + // Expression is a required field + Expression *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CalculatedColumn) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CalculatedColumn) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CalculatedColumn) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CalculatedColumn"} + if s.ColumnId == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnId")) + } + if s.ColumnId != nil && len(*s.ColumnId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnId", 1)) + } + 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.Expression == nil { + invalidParams.Add(request.NewErrParamRequired("Expression")) + } + if s.Expression != nil && len(*s.Expression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Expression", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumnId sets the ColumnId field's value. +func (s *CalculatedColumn) SetColumnId(v string) *CalculatedColumn { + s.ColumnId = &v + return s +} + +// SetColumnName sets the ColumnName field's value. +func (s *CalculatedColumn) SetColumnName(v string) *CalculatedColumn { + s.ColumnName = &v + return s +} + +// SetExpression sets the Expression field's value. +func (s *CalculatedColumn) SetExpression(v string) *CalculatedColumn { + s.Expression = &v + return s +} + +type CancelIngestionInput struct { + _ struct{} `type:"structure"` + + // The AWS account ID. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The ID of the dataset used in the ingestion. + // + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + + // An ID for the ingestion. + // + // IngestionId is a required field + IngestionId *string `location:"uri" locationName:"IngestionId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CancelIngestionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelIngestionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelIngestionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelIngestionInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.IngestionId == nil { + invalidParams.Add(request.NewErrParamRequired("IngestionId")) + } + if s.IngestionId != nil && len(*s.IngestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IngestionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CancelIngestionInput) SetAwsAccountId(v string) *CancelIngestionInput { + s.AwsAccountId = &v + return s +} + +// SetDataSetId sets the DataSetId field's value. +func (s *CancelIngestionInput) SetDataSetId(v string) *CancelIngestionInput { + s.DataSetId = &v + return s +} + +// SetIngestionId sets the IngestionId field's value. +func (s *CancelIngestionInput) SetIngestionId(v string) *CancelIngestionInput { + s.IngestionId = &v + return s +} + +type CancelIngestionOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the data ingestion. + Arn *string `type:"string"` + + // An ID for the ingestion. + IngestionId *string `min:"1" type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s CancelIngestionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelIngestionOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CancelIngestionOutput) SetArn(v string) *CancelIngestionOutput { + s.Arn = &v + return s +} + +// SetIngestionId sets the IngestionId field's value. +func (s *CancelIngestionOutput) SetIngestionId(v string) *CancelIngestionOutput { + s.IngestionId = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *CancelIngestionOutput) SetRequestId(v string) *CancelIngestionOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CancelIngestionOutput) SetStatus(v int64) *CancelIngestionOutput { + s.Status = &v + return s +} + +// A transform operation that casts a column to a different type. +type CastColumnTypeOperation struct { + _ struct{} `type:"structure"` + + // Column name. + // + // ColumnName is a required field + ColumnName *string `min:"1" type:"string" required:"true"` + + // When casting a column from string to datetime type, you can supply a string + // in a format supported by Amazon QuickSight to denote the source data format. + Format *string `type:"string"` + + // New column data type. + // + // NewColumnType is a required field + NewColumnType *string `type:"string" required:"true" enum:"ColumnDataType"` +} + +// String returns the string representation +func (s CastColumnTypeOperation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CastColumnTypeOperation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CastColumnTypeOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CastColumnTypeOperation"} + 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.NewColumnType == nil { + invalidParams.Add(request.NewErrParamRequired("NewColumnType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumnName sets the ColumnName field's value. +func (s *CastColumnTypeOperation) SetColumnName(v string) *CastColumnTypeOperation { + s.ColumnName = &v + return s +} + +// SetFormat sets the Format field's value. +func (s *CastColumnTypeOperation) SetFormat(v string) *CastColumnTypeOperation { + s.Format = &v + return s +} + +// SetNewColumnType sets the NewColumnType field's value. +func (s *CastColumnTypeOperation) SetNewColumnType(v string) *CastColumnTypeOperation { + s.NewColumnType = &v + return s +} + +// Groupings of columns that work together in certain Amazon QuickSight features. +// This is a variant type structure. For this structure to be valid, only one +// of the attributes can be non-null. +type ColumnGroup struct { + _ struct{} `type:"structure"` + + // Geospatial column group that denotes a hierarchy. + GeoSpatialColumnGroup *GeoSpatialColumnGroup `type:"structure"` +} + +// String returns the string representation +func (s ColumnGroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ColumnGroup) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ColumnGroup) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ColumnGroup"} + if s.GeoSpatialColumnGroup != nil { + if err := s.GeoSpatialColumnGroup.Validate(); err != nil { + invalidParams.AddNested("GeoSpatialColumnGroup", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGeoSpatialColumnGroup sets the GeoSpatialColumnGroup field's value. +func (s *ColumnGroup) SetGeoSpatialColumnGroup(v *GeoSpatialColumnGroup) *ColumnGroup { + s.GeoSpatialColumnGroup = v + return s +} + +// A structure describing the name, data type, and geographic role of the columns. +type ColumnGroupColumnSchema struct { + _ struct{} `type:"structure"` + + // The name of the column group's column schema. + Name *string `type:"string"` +} + +// String returns the string representation +func (s ColumnGroupColumnSchema) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ColumnGroupColumnSchema) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ColumnGroupColumnSchema) SetName(v string) *ColumnGroupColumnSchema { + s.Name = &v + return s +} + +// The column group schema. +type ColumnGroupSchema struct { + _ struct{} `type:"structure"` + + // A structure containing the list of schemas for column group columns. + ColumnGroupColumnSchemaList []*ColumnGroupColumnSchema `type:"list"` + + // The name of the column group schema. + Name *string `type:"string"` +} + +// String returns the string representation +func (s ColumnGroupSchema) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ColumnGroupSchema) GoString() string { + return s.String() +} + +// SetColumnGroupColumnSchemaList sets the ColumnGroupColumnSchemaList field's value. +func (s *ColumnGroupSchema) SetColumnGroupColumnSchemaList(v []*ColumnGroupColumnSchema) *ColumnGroupSchema { + s.ColumnGroupColumnSchemaList = v + return s +} + +// SetName sets the Name field's value. +func (s *ColumnGroupSchema) SetName(v string) *ColumnGroupSchema { + s.Name = &v + return s +} + +// The column schema. +type ColumnSchema struct { + _ struct{} `type:"structure"` + + // The data type of the column schema. + DataType *string `type:"string"` + + // The geographic role of the column schema. + GeographicRole *string `type:"string"` + + // The name of the column schema. + Name *string `type:"string"` +} + +// String returns the string representation +func (s ColumnSchema) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ColumnSchema) GoString() string { + return s.String() +} + +// SetDataType sets the DataType field's value. +func (s *ColumnSchema) SetDataType(v string) *ColumnSchema { + s.DataType = &v + return s +} + +// SetGeographicRole sets the GeographicRole field's value. +func (s *ColumnSchema) SetGeographicRole(v string) *ColumnSchema { + s.GeographicRole = &v + return s +} + +// SetName sets the Name field's value. +func (s *ColumnSchema) SetName(v string) *ColumnSchema { + s.Name = &v + return s +} + +// A tag for a column in a TagColumnOperation structure. This is a variant type +// structure. For this structure to be valid, only one of the attributes can +// be non-null. +type ColumnTag struct { + _ struct{} `type:"structure"` + + // A geospatial role for a column. + ColumnGeographicRole *string `type:"string" enum:"GeoSpatialDataRole"` +} + +// String returns the string representation +func (s ColumnTag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ColumnTag) GoString() string { + return s.String() +} + +// SetColumnGeographicRole sets the ColumnGeographicRole field's value. +func (s *ColumnTag) SetColumnGeographicRole(v string) *ColumnTag { + s.ColumnGeographicRole = &v + return s +} + +// A resource is already in a state that indicates an action is happening that +// must complete before a new update can be applied. +type ConcurrentUpdatingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + RequestId *string `type:"string"` +} + +// String returns the string representation +func (s ConcurrentUpdatingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ConcurrentUpdatingException) GoString() string { + return s.String() +} + +func newErrorConcurrentUpdatingException(v protocol.ResponseMetadata) error { + return &ConcurrentUpdatingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConcurrentUpdatingException) Code() string { + return "ConcurrentUpdatingException" +} + +// Message returns the exception's message. +func (s *ConcurrentUpdatingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConcurrentUpdatingException) OrigErr() error { + return nil +} + +func (s *ConcurrentUpdatingException) 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 *ConcurrentUpdatingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConcurrentUpdatingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Updating or deleting a resource can cause an inconsistent state. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` // The AWS request ID for this request. RequestId *string `type:"string"` } // String returns the string representation -func (s AccessDeniedException) String() string { +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) 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 *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A transform operation that creates calculated columns. Columns created in +// one such operation form a lexical closure. +type CreateColumnsOperation struct { + _ struct{} `type:"structure"` + + // Calculated columns to create. + // + // Columns is a required field + Columns []*CalculatedColumn `min:"1" type:"list" required:"true"` +} + +// String returns the string representation +func (s CreateColumnsOperation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateColumnsOperation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateColumnsOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateColumnsOperation"} + if s.Columns == nil { + invalidParams.Add(request.NewErrParamRequired("Columns")) + } + if s.Columns != nil && len(s.Columns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) + } + if s.Columns != nil { + for i, v := range s.Columns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Columns", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetColumns sets the Columns field's value. +func (s *CreateColumnsOperation) SetColumns(v []*CalculatedColumn) *CreateColumnsOperation { + s.Columns = v + return s +} + +type CreateDashboardInput struct { + _ struct{} `type:"structure"` + + // The ID of the AWS 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. + // + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + + // 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. + DashboardPublishOptions *DashboardPublishOptions `type:"structure"` + + // The display name of the dashboard. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // 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. + Parameters *Parameters `type:"structure"` + + // A structure that contains the permissions of the dashboard. You can use this + // structure for granting permissions with principal and action information. + Permissions []*ResourcePermission `min:"1" type:"list"` + + // 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 SourceTemplateARN can contain any AWS Account and any QuickSight-supported + // AWS 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. + // + // SourceEntity is a required field + SourceEntity *DashboardSourceEntity `type:"structure" required:"true"` + + // Contains a map of the key-value pairs for the resource tag or tags assigned + // to the dashboard. + Tags []*Tag `min:"1" type:"list"` + + // 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 AWS account where + // you create the dashboard. + ThemeArn *string `type:"string"` + + // A description for the first version of the dashboard being created. + VersionDescription *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s CreateDashboardInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateDashboardInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDashboardInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDashboardInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) + } + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 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.Permissions != nil && len(s.Permissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) + } + if s.SourceEntity == nil { + invalidParams.Add(request.NewErrParamRequired("SourceEntity")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + } + if s.Parameters != nil { + if err := s.Parameters.Validate(); err != nil { + invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) + } + } + if s.Permissions != nil { + for i, v := range s.Permissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SourceEntity != nil { + if err := s.SourceEntity.Validate(); err != nil { + invalidParams.AddNested("SourceEntity", 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 +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateDashboardInput) SetAwsAccountId(v string) *CreateDashboardInput { + s.AwsAccountId = &v + return s +} + +// SetDashboardId sets the DashboardId field's value. +func (s *CreateDashboardInput) SetDashboardId(v string) *CreateDashboardInput { + s.DashboardId = &v + return s +} + +// SetDashboardPublishOptions sets the DashboardPublishOptions field's value. +func (s *CreateDashboardInput) SetDashboardPublishOptions(v *DashboardPublishOptions) *CreateDashboardInput { + s.DashboardPublishOptions = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDashboardInput) SetName(v string) *CreateDashboardInput { + s.Name = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreateDashboardInput) SetParameters(v *Parameters) *CreateDashboardInput { + s.Parameters = v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *CreateDashboardInput) SetPermissions(v []*ResourcePermission) *CreateDashboardInput { + s.Permissions = v + return s +} + +// SetSourceEntity sets the SourceEntity field's value. +func (s *CreateDashboardInput) SetSourceEntity(v *DashboardSourceEntity) *CreateDashboardInput { + s.SourceEntity = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDashboardInput) SetTags(v []*Tag) *CreateDashboardInput { + s.Tags = v + return s +} + +// SetThemeArn sets the ThemeArn field's value. +func (s *CreateDashboardInput) SetThemeArn(v string) *CreateDashboardInput { + s.ThemeArn = &v + return s +} + +// SetVersionDescription sets the VersionDescription field's value. +func (s *CreateDashboardInput) SetVersionDescription(v string) *CreateDashboardInput { + s.VersionDescription = &v + return s +} + +type CreateDashboardOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the dashboard. + Arn *string `type:"string"` + + // The status of the dashboard creation request. + CreationStatus *string `type:"string" enum:"ResourceStatus"` + + // The ID for the dashboard. + DashboardId *string `min:"1" type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` + + // The ARN of the dashboard, including the version number of the first version + // that is created. + VersionArn *string `type:"string"` +} + +// String returns the string representation +func (s CreateDashboardOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateDashboardOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateDashboardOutput) SetArn(v string) *CreateDashboardOutput { + s.Arn = &v + return s +} + +// SetCreationStatus sets the CreationStatus field's value. +func (s *CreateDashboardOutput) SetCreationStatus(v string) *CreateDashboardOutput { + s.CreationStatus = &v + return s +} + +// SetDashboardId sets the DashboardId field's value. +func (s *CreateDashboardOutput) SetDashboardId(v string) *CreateDashboardOutput { + s.DashboardId = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *CreateDashboardOutput) SetRequestId(v string) *CreateDashboardOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateDashboardOutput) SetStatus(v int64) *CreateDashboardOutput { + s.Status = &v + return s +} + +// SetVersionArn sets the VersionArn field's value. +func (s *CreateDashboardOutput) SetVersionArn(v string) *CreateDashboardOutput { + s.VersionArn = &v + return s +} + +type CreateDataSetInput struct { + _ struct{} `type:"structure"` + + // The AWS 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. + ColumnGroups []*ColumnGroup `min:"1" type:"list"` + + // An ID for the dataset that you want to create. This ID is unique per AWS + // Region for each AWS account. + // + // DataSetId is a required field + DataSetId *string `type:"string" required:"true"` + + // Indicates whether you want to import the data into SPICE. + // + // ImportMode is a required field + ImportMode *string `type:"string" required:"true" enum:"DataSetImportMode"` + + // Configures the combination and transformation of the data from the physical + // tables. + LogicalTableMap map[string]*LogicalTable `min:"1" type:"map"` + + // The display name for the dataset. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // A list of resource permissions on the dataset. + Permissions []*ResourcePermission `min:"1" type:"list"` + + // 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"` + + // The row-level security configuration for the data that you want to create. + RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` + + // Contains a map of the key-value pairs for the resource tag or tags assigned + // to the dataset. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s CreateDataSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateDataSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDataSetInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.ColumnGroups != nil && len(s.ColumnGroups) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnGroups", 1)) + } + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.ImportMode == nil { + invalidParams.Add(request.NewErrParamRequired("ImportMode")) + } + if s.LogicalTableMap != nil && len(s.LogicalTableMap) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogicalTableMap", 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.Permissions != nil && len(s.Permissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) + } + 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)) + } + if s.ColumnGroups != nil { + for i, v := range s.ColumnGroups { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ColumnGroups", i), err.(request.ErrInvalidParams)) + } + } + } + if s.LogicalTableMap != nil { + for i, v := range s.LogicalTableMap { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogicalTableMap", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Permissions != nil { + for i, v := range s.Permissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.PhysicalTableMap != nil { + for i, v := range s.PhysicalTableMap { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PhysicalTableMap", i), err.(request.ErrInvalidParams)) + } + } + } + if s.RowLevelPermissionDataSet != nil { + if err := s.RowLevelPermissionDataSet.Validate(); err != nil { + invalidParams.AddNested("RowLevelPermissionDataSet", 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 +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateDataSetInput) SetAwsAccountId(v string) *CreateDataSetInput { + s.AwsAccountId = &v + return s +} + +// SetColumnGroups sets the ColumnGroups field's value. +func (s *CreateDataSetInput) SetColumnGroups(v []*ColumnGroup) *CreateDataSetInput { + s.ColumnGroups = v + return s +} + +// SetDataSetId sets the DataSetId field's value. +func (s *CreateDataSetInput) SetDataSetId(v string) *CreateDataSetInput { + s.DataSetId = &v + return s +} + +// SetImportMode sets the ImportMode field's value. +func (s *CreateDataSetInput) SetImportMode(v string) *CreateDataSetInput { + s.ImportMode = &v + return s +} + +// SetLogicalTableMap sets the LogicalTableMap field's value. +func (s *CreateDataSetInput) SetLogicalTableMap(v map[string]*LogicalTable) *CreateDataSetInput { + s.LogicalTableMap = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDataSetInput) SetName(v string) *CreateDataSetInput { + s.Name = &v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *CreateDataSetInput) SetPermissions(v []*ResourcePermission) *CreateDataSetInput { + s.Permissions = v + return s +} + +// SetPhysicalTableMap sets the PhysicalTableMap field's value. +func (s *CreateDataSetInput) SetPhysicalTableMap(v map[string]*PhysicalTable) *CreateDataSetInput { + s.PhysicalTableMap = v + return s +} + +// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. +func (s *CreateDataSetInput) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *CreateDataSetInput { + s.RowLevelPermissionDataSet = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDataSetInput) SetTags(v []*Tag) *CreateDataSetInput { + s.Tags = v + return s +} + +type CreateDataSetOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the dataset. + Arn *string `type:"string"` + + // The ID for the dataset that you want to create. This ID is unique per AWS + // Region for each AWS account. + DataSetId *string `type:"string"` + + // The ARN for the ingestion, which is triggered as a result of dataset creation + // if the import mode is SPICE. + IngestionArn *string `type:"string"` + + // The ID of the ingestion, which is triggered as a result of dataset creation + // if the import mode is SPICE. + IngestionId *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s CreateDataSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateDataSetOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateDataSetOutput) SetArn(v string) *CreateDataSetOutput { + s.Arn = &v + return s +} + +// SetDataSetId sets the DataSetId field's value. +func (s *CreateDataSetOutput) SetDataSetId(v string) *CreateDataSetOutput { + s.DataSetId = &v + return s +} + +// SetIngestionArn sets the IngestionArn field's value. +func (s *CreateDataSetOutput) SetIngestionArn(v string) *CreateDataSetOutput { + s.IngestionArn = &v + return s +} + +// SetIngestionId sets the IngestionId field's value. +func (s *CreateDataSetOutput) SetIngestionId(v string) *CreateDataSetOutput { + s.IngestionId = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *CreateDataSetOutput) SetRequestId(v string) *CreateDataSetOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateDataSetOutput) SetStatus(v int64) *CreateDataSetOutput { + s.Status = &v + return s +} + +type CreateDataSourceInput struct { + _ struct{} `type:"structure"` + + // The AWS 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. + Credentials *DataSourceCredentials `type:"structure" sensitive:"true"` + + // An ID for the data source. This ID is unique per AWS Region for each AWS + // account. + // + // DataSourceId is a required field + DataSourceId *string `type:"string" required:"true"` + + // The parameters that QuickSight uses to connect to your underlying source. + DataSourceParameters *DataSourceParameters `type:"structure"` + + // A display name for the data source. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // 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 + // to your underlying source. + SslProperties *SslProperties `type:"structure"` + + // Contains a map of the key-value pairs for the resource tag or tags assigned + // 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, MARIADB, MYSQL, POSTGRESQL, PRESTO, + // REDSHIFT, S3, SNOWFLAKE, SPARK, SQLSERVER, TERADATA. Use ListDataSources + // to return a list of all data sources. + // + // 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 + // when connecting to your underlying source. + VpcConnectionProperties *VpcConnectionProperties `type:"structure"` +} + +// String returns the string representation +func (s CreateDataSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateDataSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + 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.Permissions != nil && len(s.Permissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Credentials != nil { + if err := s.Credentials.Validate(); err != nil { + invalidParams.AddNested("Credentials", err.(request.ErrInvalidParams)) + } + } + if s.DataSourceParameters != nil { + if err := s.DataSourceParameters.Validate(); err != nil { + invalidParams.AddNested("DataSourceParameters", err.(request.ErrInvalidParams)) + } + } + if s.Permissions != nil { + for i, v := range s.Permissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", 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 s.VpcConnectionProperties != nil { + if err := s.VpcConnectionProperties.Validate(); err != nil { + invalidParams.AddNested("VpcConnectionProperties", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateDataSourceInput) SetAwsAccountId(v string) *CreateDataSourceInput { + s.AwsAccountId = &v + return s +} + +// SetCredentials sets the Credentials field's value. +func (s *CreateDataSourceInput) SetCredentials(v *DataSourceCredentials) *CreateDataSourceInput { + s.Credentials = v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *CreateDataSourceInput) SetDataSourceId(v string) *CreateDataSourceInput { + s.DataSourceId = &v + return s +} + +// SetDataSourceParameters sets the DataSourceParameters field's value. +func (s *CreateDataSourceInput) SetDataSourceParameters(v *DataSourceParameters) *CreateDataSourceInput { + s.DataSourceParameters = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDataSourceInput) SetName(v string) *CreateDataSourceInput { + s.Name = &v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *CreateDataSourceInput) SetPermissions(v []*ResourcePermission) *CreateDataSourceInput { + s.Permissions = v + return s +} + +// SetSslProperties sets the SslProperties field's value. +func (s *CreateDataSourceInput) SetSslProperties(v *SslProperties) *CreateDataSourceInput { + s.SslProperties = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDataSourceInput) SetTags(v []*Tag) *CreateDataSourceInput { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateDataSourceInput) SetType(v string) *CreateDataSourceInput { + s.Type = &v + return s +} + +// SetVpcConnectionProperties sets the VpcConnectionProperties field's value. +func (s *CreateDataSourceInput) SetVpcConnectionProperties(v *VpcConnectionProperties) *CreateDataSourceInput { + s.VpcConnectionProperties = v + return s +} + +type CreateDataSourceOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the data source. + Arn *string `type:"string"` + + // The status of creating the data source. + CreationStatus *string `type:"string" enum:"ResourceStatus"` + + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + DataSourceId *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s CreateDataSourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateDataSourceOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateDataSourceOutput) SetArn(v string) *CreateDataSourceOutput { + s.Arn = &v + return s +} + +// SetCreationStatus sets the CreationStatus field's value. +func (s *CreateDataSourceOutput) SetCreationStatus(v string) *CreateDataSourceOutput { + s.CreationStatus = &v + return s +} + +// SetDataSourceId sets the DataSourceId field's value. +func (s *CreateDataSourceOutput) SetDataSourceId(v string) *CreateDataSourceOutput { + s.DataSourceId = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *CreateDataSourceOutput) SetRequestId(v string) *CreateDataSourceOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateDataSourceOutput) SetStatus(v int64) *CreateDataSourceOutput { + s.Status = &v + return s +} + +// The request object for this operation. +type CreateGroupInput struct { + _ struct{} `type:"structure"` + + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // A description for the group that you want to create. + Description *string `min:"1" type:"string"` + + // A name for the group that you want to create. + // + // GroupName is a required field + GroupName *string `min:"1" type:"string" required:"true"` + + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGroupInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateGroupInput) SetAwsAccountId(v string) *CreateGroupInput { + s.AwsAccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateGroupInput) SetDescription(v string) *CreateGroupInput { + s.Description = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *CreateGroupInput) SetGroupName(v string) *CreateGroupInput { + s.GroupName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *CreateGroupInput) SetNamespace(v string) *CreateGroupInput { + s.Namespace = &v + return s +} + +type CreateGroupMembershipInput struct { + _ struct{} `type:"structure"` + + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS 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 name of the group that you want to add the user to. + // + // GroupName is a required field + GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` + + // The name of the user that you want to add to the group membership. + // + // MemberName is a required field + MemberName *string `location:"uri" locationName:"MemberName" min:"1" type:"string" required:"true"` + + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateGroupMembershipInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AccessDeniedException) GoString() string { +func (s CreateGroupMembershipInput) GoString() string { return s.String() } -func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { - return &AccessDeniedException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGroupMembershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGroupMembershipInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.MemberName == nil { + invalidParams.Add(request.NewErrParamRequired("MemberName")) + } + if s.MemberName != nil && len(*s.MemberName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MemberName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams } + return nil } -// Code returns the exception type name. -func (s *AccessDeniedException) Code() string { - return "AccessDeniedException" +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateGroupMembershipInput) SetAwsAccountId(v string) *CreateGroupMembershipInput { + s.AwsAccountId = &v + return s } -// Message returns the exception's message. -func (s *AccessDeniedException) Message() string { - if s.Message_ != nil { - return *s.Message_ +// SetGroupName sets the GroupName field's value. +func (s *CreateGroupMembershipInput) SetGroupName(v string) *CreateGroupMembershipInput { + s.GroupName = &v + return s +} + +// SetMemberName sets the MemberName field's value. +func (s *CreateGroupMembershipInput) SetMemberName(v string) *CreateGroupMembershipInput { + s.MemberName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *CreateGroupMembershipInput) SetNamespace(v string) *CreateGroupMembershipInput { + s.Namespace = &v + return s +} + +type CreateGroupMembershipOutput struct { + _ struct{} `type:"structure"` + + // The group member. + GroupMember *GroupMember `type:"structure"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s CreateGroupMembershipOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGroupMembershipOutput) GoString() string { + return s.String() +} + +// SetGroupMember sets the GroupMember field's value. +func (s *CreateGroupMembershipOutput) SetGroupMember(v *GroupMember) *CreateGroupMembershipOutput { + s.GroupMember = v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *CreateGroupMembershipOutput) SetRequestId(v string) *CreateGroupMembershipOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGroupMembershipOutput) SetStatus(v int64) *CreateGroupMembershipOutput { + s.Status = &v + return s +} + +// The response object for this operation. +type CreateGroupOutput struct { + _ struct{} `type:"structure"` + + // The name of the group. + Group *Group `type:"structure"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s CreateGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGroupOutput) GoString() string { + return s.String() +} + +// SetGroup sets the Group field's value. +func (s *CreateGroupOutput) SetGroup(v *Group) *CreateGroupOutput { + s.Group = v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *CreateGroupOutput) SetRequestId(v string) *CreateGroupOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGroupOutput) SetStatus(v int64) *CreateGroupOutput { + s.Status = &v + return s +} + +type CreateIAMPolicyAssignmentInput struct { + _ struct{} `type:"structure"` + + // The name of the assignment. It must be unique within an AWS account. + // + // AssignmentName is a required field + AssignmentName *string `min:"1" type:"string" required:"true"` + + // The status of the assignment. Possible values are as follows: + // + // * ENABLED - Anything specified in this assignment is used when creating + // the data source. + // + // * DISABLED - This assignment isn't used when creating the data source. + // + // * DRAFT - This assignment is an unfinished draft and isn't used when creating + // the data source. + // + // AssignmentStatus is a required field + AssignmentStatus *string `type:"string" required:"true" enum:"AssignmentStatus"` + + // The ID of the AWS account where you want to assign an IAM policy to 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. + Identities map[string][]*string `type:"map"` + + // The namespace that contains the assignment. + // + // 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. + PolicyArn *string `type:"string"` +} + +// String returns the string representation +func (s CreateIAMPolicyAssignmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateIAMPolicyAssignmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateIAMPolicyAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateIAMPolicyAssignmentInput"} + if s.AssignmentName == nil { + invalidParams.Add(request.NewErrParamRequired("AssignmentName")) } - return "" + if s.AssignmentName != nil && len(*s.AssignmentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssignmentName", 1)) + } + if s.AssignmentStatus == nil { + invalidParams.Add(request.NewErrParamRequired("AssignmentStatus")) + } + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssignmentName sets the AssignmentName field's value. +func (s *CreateIAMPolicyAssignmentInput) SetAssignmentName(v string) *CreateIAMPolicyAssignmentInput { + s.AssignmentName = &v + return s +} + +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *CreateIAMPolicyAssignmentInput) SetAssignmentStatus(v string) *CreateIAMPolicyAssignmentInput { + s.AssignmentStatus = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateIAMPolicyAssignmentInput) SetAwsAccountId(v string) *CreateIAMPolicyAssignmentInput { + s.AwsAccountId = &v + return s } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetIdentities sets the Identities field's value. +func (s *CreateIAMPolicyAssignmentInput) SetIdentities(v map[string][]*string) *CreateIAMPolicyAssignmentInput { + s.Identities = v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetNamespace sets the Namespace field's value. +func (s *CreateIAMPolicyAssignmentInput) SetNamespace(v string) *CreateIAMPolicyAssignmentInput { + s.Namespace = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID +// SetPolicyArn sets the PolicyArn field's value. +func (s *CreateIAMPolicyAssignmentInput) SetPolicyArn(v string) *CreateIAMPolicyAssignmentInput { + s.PolicyArn = &v + return s } -// The active AWS Identity and Access Management (IAM) policy assignment. -type ActiveIAMPolicyAssignment struct { +type CreateIAMPolicyAssignmentOutput struct { _ struct{} `type:"structure"` - // A name for the IAM policy assignment. + // The ID for the assignment. + AssignmentId *string `type:"string"` + + // The name of the assignment. This name must be unique within the AWS account. AssignmentName *string `min:"1" type:"string"` - // The Amazon Resource Name (ARN) of the resource. + // The status of the assignment. Possible values are as follows: + // + // * ENABLED - Anything specified in this assignment is used when creating + // the data source. + // + // * DISABLED - This assignment isn't used when creating the data source. + // + // * DRAFT - This assignment is an unfinished draft and isn't used when creating + // the data source. + AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` + + // The QuickSight users, groups, or both that the IAM policy 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. PolicyArn *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s ActiveIAMPolicyAssignment) String() string { +func (s CreateIAMPolicyAssignmentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ActiveIAMPolicyAssignment) GoString() string { +func (s CreateIAMPolicyAssignmentOutput) GoString() string { return s.String() } +// SetAssignmentId sets the AssignmentId field's value. +func (s *CreateIAMPolicyAssignmentOutput) SetAssignmentId(v string) *CreateIAMPolicyAssignmentOutput { + s.AssignmentId = &v + return s +} + // SetAssignmentName sets the AssignmentName field's value. -func (s *ActiveIAMPolicyAssignment) SetAssignmentName(v string) *ActiveIAMPolicyAssignment { +func (s *CreateIAMPolicyAssignmentOutput) SetAssignmentName(v string) *CreateIAMPolicyAssignmentOutput { s.AssignmentName = &v return s } -// SetPolicyArn sets the PolicyArn field's value. -func (s *ActiveIAMPolicyAssignment) SetPolicyArn(v string) *ActiveIAMPolicyAssignment { - s.PolicyArn = &v +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *CreateIAMPolicyAssignmentOutput) SetAssignmentStatus(v string) *CreateIAMPolicyAssignmentOutput { + s.AssignmentStatus = &v return s } -// Ad hoc (one-time) filtering option. -type AdHocFilteringOption struct { - _ struct{} `type:"structure"` - - // Availability status. - AvailabilityStatus *string `type:"string" enum:"DashboardBehavior"` +// SetIdentities sets the Identities field's value. +func (s *CreateIAMPolicyAssignmentOutput) SetIdentities(v map[string][]*string) *CreateIAMPolicyAssignmentOutput { + s.Identities = v + return s } -// String returns the string representation -func (s AdHocFilteringOption) String() string { - return awsutil.Prettify(s) +// SetPolicyArn sets the PolicyArn field's value. +func (s *CreateIAMPolicyAssignmentOutput) SetPolicyArn(v string) *CreateIAMPolicyAssignmentOutput { + s.PolicyArn = &v + return s } -// GoString returns the string representation -func (s AdHocFilteringOption) GoString() string { - return s.String() +// SetRequestId sets the RequestId field's value. +func (s *CreateIAMPolicyAssignmentOutput) SetRequestId(v string) *CreateIAMPolicyAssignmentOutput { + s.RequestId = &v + return s } -// SetAvailabilityStatus sets the AvailabilityStatus field's value. -func (s *AdHocFilteringOption) SetAvailabilityStatus(v string) *AdHocFilteringOption { - s.AvailabilityStatus = &v +// SetStatus sets the Status field's value. +func (s *CreateIAMPolicyAssignmentOutput) SetStatus(v int64) *CreateIAMPolicyAssignmentOutput { + s.Status = &v return s } -// Amazon Elasticsearch Service parameters. -type AmazonElasticsearchParameters struct { +type CreateIngestionInput struct { _ struct{} `type:"structure"` - // The Amazon Elasticsearch Service domain. + // The AWS account ID. // - // Domain is a required field - Domain *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The ID of the dataset used in the ingestion. + // + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + + // An ID for the ingestion. + // + // IngestionId is a required field + IngestionId *string `location:"uri" locationName:"IngestionId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s AmazonElasticsearchParameters) String() string { +func (s CreateIngestionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AmazonElasticsearchParameters) GoString() string { +func (s CreateIngestionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AmazonElasticsearchParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AmazonElasticsearchParameters"} - if s.Domain == nil { - invalidParams.Add(request.NewErrParamRequired("Domain")) +func (s *CreateIngestionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateIngestionInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.Domain != nil && len(*s.Domain) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.IngestionId == nil { + invalidParams.Add(request.NewErrParamRequired("IngestionId")) + } + if s.IngestionId != nil && len(*s.IngestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IngestionId", 1)) } if invalidParams.Len() > 0 { @@ -7329,175 +10907,146 @@ func (s *AmazonElasticsearchParameters) Validate() error { return nil } -// SetDomain sets the Domain field's value. -func (s *AmazonElasticsearchParameters) SetDomain(v string) *AmazonElasticsearchParameters { - s.Domain = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateIngestionInput) SetAwsAccountId(v string) *CreateIngestionInput { + s.AwsAccountId = &v return s } -// Amazon Athena parameters. -type AthenaParameters struct { - _ struct{} `type:"structure"` - - // The workgroup that Amazon Athena uses. - WorkGroup *string `min:"1" type:"string"` -} - -// String returns the string representation -func (s AthenaParameters) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s AthenaParameters) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *AthenaParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AthenaParameters"} - if s.WorkGroup != nil && len(*s.WorkGroup) < 1 { - invalidParams.Add(request.NewErrParamMinLen("WorkGroup", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDataSetId sets the DataSetId field's value. +func (s *CreateIngestionInput) SetDataSetId(v string) *CreateIngestionInput { + s.DataSetId = &v + return s } -// SetWorkGroup sets the WorkGroup field's value. -func (s *AthenaParameters) SetWorkGroup(v string) *AthenaParameters { - s.WorkGroup = &v +// SetIngestionId sets the IngestionId field's value. +func (s *CreateIngestionInput) SetIngestionId(v string) *CreateIngestionInput { + s.IngestionId = &v return s } -// Amazon Aurora parameters. -type AuroraParameters struct { +type CreateIngestionOutput struct { _ struct{} `type:"structure"` - // Database. - // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // The Amazon Resource Name (ARN) for the data ingestion. + Arn *string `type:"string"` - // Host. - // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // An ID for the ingestion. + IngestionId *string `min:"1" type:"string"` - // Port. - // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // The ingestion status. + IngestionStatus *string `type:"string" enum:"IngestionStatus"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s AuroraParameters) String() string { +func (s CreateIngestionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AuroraParameters) GoString() string { +func (s CreateIngestionOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AuroraParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AuroraParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) - } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) - } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) - } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) - } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) - } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) - } +// SetArn sets the Arn field's value. +func (s *CreateIngestionOutput) SetArn(v string) *CreateIngestionOutput { + s.Arn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetIngestionId sets the IngestionId field's value. +func (s *CreateIngestionOutput) SetIngestionId(v string) *CreateIngestionOutput { + s.IngestionId = &v + return s } -// SetDatabase sets the Database field's value. -func (s *AuroraParameters) SetDatabase(v string) *AuroraParameters { - s.Database = &v +// SetIngestionStatus sets the IngestionStatus field's value. +func (s *CreateIngestionOutput) SetIngestionStatus(v string) *CreateIngestionOutput { + s.IngestionStatus = &v return s } -// SetHost sets the Host field's value. -func (s *AuroraParameters) SetHost(v string) *AuroraParameters { - s.Host = &v +// SetRequestId sets the RequestId field's value. +func (s *CreateIngestionOutput) SetRequestId(v string) *CreateIngestionOutput { + s.RequestId = &v return s } -// SetPort sets the Port field's value. -func (s *AuroraParameters) SetPort(v int64) *AuroraParameters { - s.Port = &v +// SetStatus sets the Status field's value. +func (s *CreateIngestionOutput) SetStatus(v int64) *CreateIngestionOutput { + s.Status = &v return s } -// Amazon Aurora with PostgreSQL compatibility parameters. -type AuroraPostgreSqlParameters struct { +type CreateTemplateAliasInput struct { _ struct{} `type:"structure"` - // Database. + // The name that you want to give to the template alias that you're creating. + // Don't start the alias name with the $ character. Alias names that start with + // $ are reserved by QuickSight. // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // Host. + // The ID of the AWS account that contains the template that you creating an + // alias for. // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Port. + // An ID for the template. // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + + // The version number of the template. + // + // TemplateVersionNumber is a required field + TemplateVersionNumber *int64 `min:"1" type:"long" required:"true"` } // String returns the string representation -func (s AuroraPostgreSqlParameters) String() string { +func (s CreateTemplateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AuroraPostgreSqlParameters) GoString() string { +func (s CreateTemplateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AuroraPostgreSqlParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AuroraPostgreSqlParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) +func (s *CreateTemplateAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTemplateAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } + if s.TemplateVersionNumber == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateVersionNumber")) + } + if s.TemplateVersionNumber != nil && *s.TemplateVersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("TemplateVersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -7506,193 +11055,182 @@ func (s *AuroraPostgreSqlParameters) Validate() error { return nil } -// SetDatabase sets the Database field's value. -func (s *AuroraPostgreSqlParameters) SetDatabase(v string) *AuroraPostgreSqlParameters { - s.Database = &v +// SetAliasName sets the AliasName field's value. +func (s *CreateTemplateAliasInput) SetAliasName(v string) *CreateTemplateAliasInput { + s.AliasName = &v return s } -// SetHost sets the Host field's value. -func (s *AuroraPostgreSqlParameters) SetHost(v string) *AuroraPostgreSqlParameters { - s.Host = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateTemplateAliasInput) SetAwsAccountId(v string) *CreateTemplateAliasInput { + s.AwsAccountId = &v return s } -// SetPort sets the Port field's value. -func (s *AuroraPostgreSqlParameters) SetPort(v int64) *AuroraPostgreSqlParameters { - s.Port = &v +// SetTemplateId sets the TemplateId field's value. +func (s *CreateTemplateAliasInput) SetTemplateId(v string) *CreateTemplateAliasInput { + s.TemplateId = &v return s } -// AWS IoT Analytics parameters. -type AwsIotAnalyticsParameters struct { - _ struct{} `type:"structure"` - - // Dataset name. - // - // DataSetName is a required field - DataSetName *string `min:"1" type:"string" required:"true"` -} - -// String returns the string representation -func (s AwsIotAnalyticsParameters) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s AwsIotAnalyticsParameters) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsIotAnalyticsParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsIotAnalyticsParameters"} - if s.DataSetName == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetName")) - } - if s.DataSetName != nil && len(*s.DataSetName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDataSetName sets the DataSetName field's value. -func (s *AwsIotAnalyticsParameters) SetDataSetName(v string) *AwsIotAnalyticsParameters { - s.DataSetName = &v +// SetTemplateVersionNumber sets the TemplateVersionNumber field's value. +func (s *CreateTemplateAliasInput) SetTemplateVersionNumber(v int64) *CreateTemplateAliasInput { + s.TemplateVersionNumber = &v return s } -// A calculated column for a dataset. -type CalculatedColumn struct { +type CreateTemplateAliasOutput struct { _ struct{} `type:"structure"` - // A unique ID to identify a calculated column. During a dataset update, if - // the column ID of a calculated column matches that of an existing calculated - // column, Amazon QuickSight preserves the existing calculated column. - // - // ColumnId is a required field - ColumnId *string `min:"1" type:"string" required:"true"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Column name. - // - // ColumnName is a required field - ColumnName *string `min:"1" type:"string" required:"true"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` - // An expression that defines the calculated column. - // - // Expression is a required field - Expression *string `min:"1" type:"string" required:"true"` + // Information about the template alias. + TemplateAlias *TemplateAlias `type:"structure"` } // String returns the string representation -func (s CalculatedColumn) String() string { +func (s CreateTemplateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CalculatedColumn) GoString() string { +func (s CreateTemplateAliasOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CalculatedColumn) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CalculatedColumn"} - if s.ColumnId == nil { - invalidParams.Add(request.NewErrParamRequired("ColumnId")) - } - if s.ColumnId != nil && len(*s.ColumnId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ColumnId", 1)) - } - 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.Expression == nil { - invalidParams.Add(request.NewErrParamRequired("Expression")) - } - if s.Expression != nil && len(*s.Expression) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Expression", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetColumnId sets the ColumnId field's value. -func (s *CalculatedColumn) SetColumnId(v string) *CalculatedColumn { - s.ColumnId = &v +// SetRequestId sets the RequestId field's value. +func (s *CreateTemplateAliasOutput) SetRequestId(v string) *CreateTemplateAliasOutput { + s.RequestId = &v return s } -// SetColumnName sets the ColumnName field's value. -func (s *CalculatedColumn) SetColumnName(v string) *CalculatedColumn { - s.ColumnName = &v +// SetStatus sets the Status field's value. +func (s *CreateTemplateAliasOutput) SetStatus(v int64) *CreateTemplateAliasOutput { + s.Status = &v return s } -// SetExpression sets the Expression field's value. -func (s *CalculatedColumn) SetExpression(v string) *CalculatedColumn { - s.Expression = &v +// SetTemplateAlias sets the TemplateAlias field's value. +func (s *CreateTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *CreateTemplateAliasOutput { + s.TemplateAlias = v return s } -type CancelIngestionInput struct { +type CreateTemplateInput struct { _ struct{} `type:"structure"` - // The AWS account ID. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // A display name for the template. + Name *string `min:"1" type:"string"` + + // A list of resource permissions to be set on the template. + Permissions []*ResourcePermission `min:"1" type:"list"` + + // 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 AWS Account and any QuickSight-supported + // AWS 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. + // + // SourceEntity is a required field + SourceEntity *TemplateSourceEntity `type:"structure" required:"true"` + + // Contains a map of the key-value pairs for the resource tag or tags assigned + // to the resource. + Tags []*Tag `min:"1" type:"list"` - // The ID of the dataset used in the ingestion. + // An ID for the template that you want to create. This template is unique per + // AWS Region in each AWS account. // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` - // An ID for the ingestion. - // - // IngestionId is a required field - IngestionId *string `location:"uri" locationName:"IngestionId" min:"1" type:"string" required:"true"` + // A description of the current template version being created. This API operation + // creates the first version of the template. Every time UpdateTemplate is called, + // a new version is created. Each version of the template maintains a description + // of the version in the VersionDescription field. + VersionDescription *string `min:"1" type:"string"` } // String returns the string representation -func (s CancelIngestionInput) String() string { +func (s CreateTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CancelIngestionInput) GoString() string { +func (s CreateTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CancelIngestionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CancelIngestionInput"} +func (s *CreateTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTemplateInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + if s.Permissions != nil && len(s.Permissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) } - if s.IngestionId == nil { - invalidParams.Add(request.NewErrParamRequired("IngestionId")) + if s.SourceEntity == nil { + invalidParams.Add(request.NewErrParamRequired("SourceEntity")) } - if s.IngestionId != nil && len(*s.IngestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("IngestionId", 1)) + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) + } + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } + if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + } + if s.Permissions != nil { + for i, v := range s.Permissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SourceEntity != nil { + if err := s.SourceEntity.Validate(); err != nil { + invalidParams.AddNested("SourceEntity", 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 { @@ -7702,460 +11240,549 @@ func (s *CancelIngestionInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *CancelIngestionInput) SetAwsAccountId(v string) *CancelIngestionInput { +func (s *CreateTemplateInput) SetAwsAccountId(v string) *CreateTemplateInput { s.AwsAccountId = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *CancelIngestionInput) SetDataSetId(v string) *CancelIngestionInput { - s.DataSetId = &v +// SetName sets the Name field's value. +func (s *CreateTemplateInput) SetName(v string) *CreateTemplateInput { + s.Name = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *CancelIngestionInput) SetIngestionId(v string) *CancelIngestionInput { - s.IngestionId = &v +// SetPermissions sets the Permissions field's value. +func (s *CreateTemplateInput) SetPermissions(v []*ResourcePermission) *CreateTemplateInput { + s.Permissions = v return s } -type CancelIngestionOutput struct { +// SetSourceEntity sets the SourceEntity field's value. +func (s *CreateTemplateInput) SetSourceEntity(v *TemplateSourceEntity) *CreateTemplateInput { + s.SourceEntity = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTemplateInput) SetTags(v []*Tag) *CreateTemplateInput { + s.Tags = v + return s +} + +// SetTemplateId sets the TemplateId field's value. +func (s *CreateTemplateInput) SetTemplateId(v string) *CreateTemplateInput { + s.TemplateId = &v + return s +} + +// SetVersionDescription sets the VersionDescription field's value. +func (s *CreateTemplateInput) SetVersionDescription(v string) *CreateTemplateInput { + s.VersionDescription = &v + return s +} + +type CreateTemplateOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the data ingestion. + // The ARN for the template. Arn *string `type:"string"` - // An ID for the ingestion. - IngestionId *string `min:"1" type:"string"` + // The template creation status. + CreationStatus *string `type:"string" enum:"ResourceStatus"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The ID of the template. + TemplateId *string `min:"1" type:"string"` + + // The ARN for the template, including the version information of the first + // version. + VersionArn *string `type:"string"` } // String returns the string representation -func (s CancelIngestionOutput) String() string { +func (s CreateTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CancelIngestionOutput) GoString() string { +func (s CreateTemplateOutput) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *CancelIngestionOutput) SetArn(v string) *CancelIngestionOutput { +func (s *CreateTemplateOutput) SetArn(v string) *CreateTemplateOutput { s.Arn = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *CancelIngestionOutput) SetIngestionId(v string) *CancelIngestionOutput { - s.IngestionId = &v +// SetCreationStatus sets the CreationStatus field's value. +func (s *CreateTemplateOutput) SetCreationStatus(v string) *CreateTemplateOutput { + s.CreationStatus = &v return s } // SetRequestId sets the RequestId field's value. -func (s *CancelIngestionOutput) SetRequestId(v string) *CancelIngestionOutput { +func (s *CreateTemplateOutput) SetRequestId(v string) *CreateTemplateOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *CancelIngestionOutput) SetStatus(v int64) *CancelIngestionOutput { +func (s *CreateTemplateOutput) SetStatus(v int64) *CreateTemplateOutput { s.Status = &v return s } -// A transform operation that casts a column to a different type. -type CastColumnTypeOperation struct { - _ struct{} `type:"structure"` - - // Column name. - // - // ColumnName is a required field - ColumnName *string `min:"1" type:"string" required:"true"` - - // When casting a column from string to datetime type, you can supply a string - // in a format supported by Amazon QuickSight to denote the source data format. - Format *string `type:"string"` - - // New column data type. - // - // NewColumnType is a required field - NewColumnType *string `type:"string" required:"true" enum:"ColumnDataType"` -} - -// String returns the string representation -func (s CastColumnTypeOperation) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s CastColumnTypeOperation) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *CastColumnTypeOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CastColumnTypeOperation"} - 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.NewColumnType == nil { - invalidParams.Add(request.NewErrParamRequired("NewColumnType")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetColumnName sets the ColumnName field's value. -func (s *CastColumnTypeOperation) SetColumnName(v string) *CastColumnTypeOperation { - s.ColumnName = &v - return s -} - -// SetFormat sets the Format field's value. -func (s *CastColumnTypeOperation) SetFormat(v string) *CastColumnTypeOperation { - s.Format = &v +// SetTemplateId sets the TemplateId field's value. +func (s *CreateTemplateOutput) SetTemplateId(v string) *CreateTemplateOutput { + s.TemplateId = &v return s } -// SetNewColumnType sets the NewColumnType field's value. -func (s *CastColumnTypeOperation) SetNewColumnType(v string) *CastColumnTypeOperation { - s.NewColumnType = &v +// SetVersionArn sets the VersionArn field's value. +func (s *CreateTemplateOutput) SetVersionArn(v string) *CreateTemplateOutput { + s.VersionArn = &v return s } -// Groupings of columns that work together in certain Amazon QuickSight features. -// This is a variant type structure. For this structure to be valid, only one -// of the attributes can be non-null. -type ColumnGroup struct { +type CreateThemeAliasInput struct { _ struct{} `type:"structure"` - // Geospatial column group that denotes a hierarchy. - GeoSpatialColumnGroup *GeoSpatialColumnGroup `type:"structure"` -} - -// String returns the string representation -func (s ColumnGroup) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s ColumnGroup) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ColumnGroup) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ColumnGroup"} - if s.GeoSpatialColumnGroup != nil { - if err := s.GeoSpatialColumnGroup.Validate(); err != nil { - invalidParams.AddNested("GeoSpatialColumnGroup", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} + // The name that you want to give to the theme alias that you are creating. + // The alias name can't begin with a $. Alias names that start with $ are reserved + // by Amazon QuickSight. + // + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` -// SetGeoSpatialColumnGroup sets the GeoSpatialColumnGroup field's value. -func (s *ColumnGroup) SetGeoSpatialColumnGroup(v *GeoSpatialColumnGroup) *ColumnGroup { - s.GeoSpatialColumnGroup = v - return s -} + // The ID of the AWS account that contains the theme for the new theme alias. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` -// A structure describing the name, data type, and geographic role of the columns. -type ColumnGroupColumnSchema struct { - _ struct{} `type:"structure"` + // An ID for the theme alias. + // + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` - // The name of the column group's column schema. - Name *string `type:"string"` + // The version number of the theme. + // + // ThemeVersionNumber is a required field + ThemeVersionNumber *int64 `min:"1" type:"long" required:"true"` } // String returns the string representation -func (s ColumnGroupColumnSchema) String() string { +func (s CreateThemeAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ColumnGroupColumnSchema) GoString() string { +func (s CreateThemeAliasInput) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *ColumnGroupColumnSchema) SetName(v string) *ColumnGroupColumnSchema { - s.Name = &v - return s -} - -// The column group schema. -type ColumnGroupSchema struct { - _ struct{} `type:"structure"` - - // A structure containing the list of schemas for column group columns. - ColumnGroupColumnSchemaList []*ColumnGroupColumnSchema `type:"list"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateThemeAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateThemeAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) + } + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) + } + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) + } + if s.ThemeVersionNumber == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeVersionNumber")) + } + if s.ThemeVersionNumber != nil && *s.ThemeVersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("ThemeVersionNumber", 1)) + } - // The name of the column group schema. - Name *string `type:"string"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// String returns the string representation -func (s ColumnGroupSchema) String() string { - return awsutil.Prettify(s) +// SetAliasName sets the AliasName field's value. +func (s *CreateThemeAliasInput) SetAliasName(v string) *CreateThemeAliasInput { + s.AliasName = &v + return s } -// GoString returns the string representation -func (s ColumnGroupSchema) GoString() string { - return s.String() +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateThemeAliasInput) SetAwsAccountId(v string) *CreateThemeAliasInput { + s.AwsAccountId = &v + return s } -// SetColumnGroupColumnSchemaList sets the ColumnGroupColumnSchemaList field's value. -func (s *ColumnGroupSchema) SetColumnGroupColumnSchemaList(v []*ColumnGroupColumnSchema) *ColumnGroupSchema { - s.ColumnGroupColumnSchemaList = v +// SetThemeId sets the ThemeId field's value. +func (s *CreateThemeAliasInput) SetThemeId(v string) *CreateThemeAliasInput { + s.ThemeId = &v return s } -// SetName sets the Name field's value. -func (s *ColumnGroupSchema) SetName(v string) *ColumnGroupSchema { - s.Name = &v +// SetThemeVersionNumber sets the ThemeVersionNumber field's value. +func (s *CreateThemeAliasInput) SetThemeVersionNumber(v int64) *CreateThemeAliasInput { + s.ThemeVersionNumber = &v return s } -// The column schema. -type ColumnSchema struct { +type CreateThemeAliasOutput struct { _ struct{} `type:"structure"` - // The data type of the column schema. - DataType *string `type:"string"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // The geographic role of the column schema. - GeographicRole *string `type:"string"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` - // The name of the column schema. - Name *string `type:"string"` + // Information about the theme alias. + ThemeAlias *ThemeAlias `type:"structure"` } // String returns the string representation -func (s ColumnSchema) String() string { +func (s CreateThemeAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ColumnSchema) GoString() string { +func (s CreateThemeAliasOutput) GoString() string { return s.String() } -// SetDataType sets the DataType field's value. -func (s *ColumnSchema) SetDataType(v string) *ColumnSchema { - s.DataType = &v +// SetRequestId sets the RequestId field's value. +func (s *CreateThemeAliasOutput) SetRequestId(v string) *CreateThemeAliasOutput { + s.RequestId = &v return s } -// SetGeographicRole sets the GeographicRole field's value. -func (s *ColumnSchema) SetGeographicRole(v string) *ColumnSchema { - s.GeographicRole = &v +// SetStatus sets the Status field's value. +func (s *CreateThemeAliasOutput) SetStatus(v int64) *CreateThemeAliasOutput { + s.Status = &v return s } -// SetName sets the Name field's value. -func (s *ColumnSchema) SetName(v string) *ColumnSchema { - s.Name = &v +// SetThemeAlias sets the ThemeAlias field's value. +func (s *CreateThemeAliasOutput) SetThemeAlias(v *ThemeAlias) *CreateThemeAliasOutput { + s.ThemeAlias = v return s } -// A tag for a column in a TagColumnOperation structure. This is a variant type -// structure. For this structure to be valid, only one of the attributes can -// be non-null. -type ColumnTag struct { +type CreateThemeInput struct { _ struct{} `type:"structure"` - // A geospatial role for a column. - ColumnGeographicRole *string `type:"string" enum:"GeoSpatialDataRole"` -} + // The ID of the AWS account where you want to store the new theme. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` -// String returns the string representation -func (s ColumnTag) String() string { - return awsutil.Prettify(s) -} + // 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. + // + // BaseThemeId is a required field + BaseThemeId *string `min:"1" type:"string" required:"true"` -// GoString returns the string representation -func (s ColumnTag) GoString() string { - return s.String() -} + // The theme configuration, which contains the theme display properties. + // + // Configuration is a required field + Configuration *ThemeConfiguration `type:"structure" required:"true"` -// SetColumnGeographicRole sets the ColumnGeographicRole field's value. -func (s *ColumnTag) SetColumnGeographicRole(v string) *ColumnTag { - s.ColumnGeographicRole = &v - return s -} + // A display name for the theme. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` -// A resource is already in a state that indicates an action is happening that -// must complete before a new update can be applied. -type ConcurrentUpdatingException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // A valid grouping of resource permissions to apply to the new theme. + Permissions []*ResourcePermission `min:"1" type:"list"` - Message_ *string `locationName:"Message" type:"string"` + // A map of the key-value pairs for the resource tag or tags that you want to + // add to the resource. + Tags []*Tag `min:"1" type:"list"` - RequestId *string `type:"string"` + // An ID for the theme that you want to create. The theme ID is unique per AWS + // Region in each AWS account. + // + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` + + // A description of the first version of the theme that you're creating. Every + // time UpdateTheme is called, a new version is created. Each version of the + // theme has a description of the version in the VersionDescription field. + VersionDescription *string `min:"1" type:"string"` } // String returns the string representation -func (s ConcurrentUpdatingException) String() string { +func (s CreateThemeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ConcurrentUpdatingException) GoString() string { +func (s CreateThemeInput) GoString() string { return s.String() } -func newErrorConcurrentUpdatingException(v protocol.ResponseMetadata) error { - return &ConcurrentUpdatingException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateThemeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateThemeInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.BaseThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("BaseThemeId")) + } + if s.BaseThemeId != nil && len(*s.BaseThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaseThemeId", 1)) + } + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + 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.Permissions != nil && len(s.Permissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) + } + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } + if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + } + if s.Permissions != nil { + for i, v := range s.Permissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", 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 } -// Code returns the exception type name. -func (s *ConcurrentUpdatingException) Code() string { - return "ConcurrentUpdatingException" +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *CreateThemeInput) SetAwsAccountId(v string) *CreateThemeInput { + s.AwsAccountId = &v + return s } -// Message returns the exception's message. -func (s *ConcurrentUpdatingException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetBaseThemeId sets the BaseThemeId field's value. +func (s *CreateThemeInput) SetBaseThemeId(v string) *CreateThemeInput { + s.BaseThemeId = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConcurrentUpdatingException) OrigErr() error { - return nil +// SetConfiguration sets the Configuration field's value. +func (s *CreateThemeInput) SetConfiguration(v *ThemeConfiguration) *CreateThemeInput { + s.Configuration = v + return s } -func (s *ConcurrentUpdatingException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetName sets the Name field's value. +func (s *CreateThemeInput) SetName(v string) *CreateThemeInput { + s.Name = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ConcurrentUpdatingException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetPermissions sets the Permissions field's value. +func (s *CreateThemeInput) SetPermissions(v []*ResourcePermission) *CreateThemeInput { + s.Permissions = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ConcurrentUpdatingException) RequestID() string { - return s.RespMetadata.RequestID +// SetTags sets the Tags field's value. +func (s *CreateThemeInput) SetTags(v []*Tag) *CreateThemeInput { + s.Tags = v + return s } -// Updating or deleting a resource can cause an inconsistent state. -type ConflictException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetThemeId sets the ThemeId field's value. +func (s *CreateThemeInput) SetThemeId(v string) *CreateThemeInput { + s.ThemeId = &v + return s +} - Message_ *string `locationName:"Message" type:"string"` +// SetVersionDescription sets the VersionDescription field's value. +func (s *CreateThemeInput) SetVersionDescription(v string) *CreateThemeInput { + s.VersionDescription = &v + return s +} - // The AWS request ID for this request. +type CreateThemeOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the theme. + Arn *string `type:"string"` + + // The theme creation status. + CreationStatus *string `type:"string" enum:"ResourceStatus"` + + // The AWS request ID for this operation. RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` + + // The ID of the theme. + ThemeId *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) for the new theme. + VersionArn *string `type:"string"` } // String returns the string representation -func (s ConflictException) String() string { +func (s CreateThemeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ConflictException) GoString() string { - return s.String() -} - -func newErrorConflictException(v protocol.ResponseMetadata) error { - return &ConflictException{ - RespMetadata: v, - } +func (s CreateThemeOutput) GoString() string { + return s.String() } -// Code returns the exception type name. -func (s *ConflictException) Code() string { - return "ConflictException" +// SetArn sets the Arn field's value. +func (s *CreateThemeOutput) SetArn(v string) *CreateThemeOutput { + s.Arn = &v + return s } -// Message returns the exception's message. -func (s *ConflictException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetCreationStatus sets the CreationStatus field's value. +func (s *CreateThemeOutput) SetCreationStatus(v string) *CreateThemeOutput { + s.CreationStatus = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConflictException) OrigErr() error { - return nil +// SetRequestId sets the RequestId field's value. +func (s *CreateThemeOutput) SetRequestId(v string) *CreateThemeOutput { + s.RequestId = &v + return s } -func (s *ConflictException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetStatus sets the Status field's value. +func (s *CreateThemeOutput) SetStatus(v int64) *CreateThemeOutput { + s.Status = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ConflictException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetThemeId sets the ThemeId field's value. +func (s *CreateThemeOutput) SetThemeId(v string) *CreateThemeOutput { + s.ThemeId = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ConflictException) RequestID() string { - return s.RespMetadata.RequestID +// SetVersionArn sets the VersionArn field's value. +func (s *CreateThemeOutput) SetVersionArn(v string) *CreateThemeOutput { + s.VersionArn = &v + return s } -// A transform operation that creates calculated columns. Columns created in -// one such operation form a lexical closure. -type CreateColumnsOperation struct { +// The combination of user name and password that are used as credentials. +type CredentialPair struct { _ struct{} `type:"structure"` - // Calculated columns to create. + // A set of alternate data source parameters that you want to share for these + // credentials. The credentials are applied in tandem with the data source parameters + // when you copy a data source by using a create or update request. The API + // compares the DataSourceParameters structure that's in the request with the + // structures in the AlternateDataSourceParameters allowlist. If the structures + // are an exact match, the request is allowed to use the new data source with + // the existing credentials. If the AlternateDataSourceParameters list is null, + // the DataSourceParameters originally used with these Credentials is automatically + // allowed. + AlternateDataSourceParameters []*DataSourceParameters `min:"1" type:"list"` + + // Password. // - // Columns is a required field - Columns []*CalculatedColumn `min:"1" type:"list" required:"true"` + // Password is a required field + Password *string `min:"1" type:"string" required:"true"` + + // User name. + // + // Username is a required field + Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s CreateColumnsOperation) String() string { +func (s CredentialPair) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateColumnsOperation) GoString() string { +func (s CredentialPair) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateColumnsOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateColumnsOperation"} - if s.Columns == nil { - invalidParams.Add(request.NewErrParamRequired("Columns")) +func (s *CredentialPair) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CredentialPair"} + if s.AlternateDataSourceParameters != nil && len(s.AlternateDataSourceParameters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AlternateDataSourceParameters", 1)) } - if s.Columns != nil && len(s.Columns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) + if s.Password == nil { + invalidParams.Add(request.NewErrParamRequired("Password")) } - if s.Columns != nil { - for i, v := range s.Columns { + 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 s.AlternateDataSourceParameters != nil { + for i, v := range s.AlternateDataSourceParameters { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Columns", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AlternateDataSourceParameters", i), err.(request.ErrInvalidParams)) } } } @@ -8166,102 +11793,65 @@ func (s *CreateColumnsOperation) Validate() error { return nil } -// SetColumns sets the Columns field's value. -func (s *CreateColumnsOperation) SetColumns(v []*CalculatedColumn) *CreateColumnsOperation { - s.Columns = v +// SetAlternateDataSourceParameters sets the AlternateDataSourceParameters field's value. +func (s *CredentialPair) SetAlternateDataSourceParameters(v []*DataSourceParameters) *CredentialPair { + s.AlternateDataSourceParameters = v return s } -type CreateDashboardInput struct { - _ struct{} `type:"structure"` +// SetPassword sets the Password field's value. +func (s *CredentialPair) SetPassword(v string) *CredentialPair { + s.Password = &v + return s +} - // The ID of the AWS 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"` +// SetUsername sets the Username field's value. +func (s *CredentialPair) SetUsername(v string) *CredentialPair { + s.Username = &v + return s +} - // The ID for the dashboard, also added to the IAM policy. - // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` +// A physical table type built from the results of the custom SQL query. +type CustomSql struct { + _ struct{} `type:"structure"` - // 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. + // The column schema from the SQL query result set. + Columns []*InputColumn `min:"1" type:"list"` + + // The Amazon Resource Name (ARN) of the data source. // - // * VisibilityState for SheetControlsOption - This visibility state can - // be either COLLAPSED or EXPANDED. This option is COLLAPSED by default. - DashboardPublishOptions *DashboardPublishOptions `type:"structure"` + // DataSourceArn is a required field + DataSourceArn *string `type:"string" required:"true"` - // The display name of the dashboard. + // A display name for the SQL query result. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // A structure that contains the parameters of the dashboard. These are parameter - // overrides for a dashboard. A dashboard can have any type of parameters, and - // some parameters might accept multiple values. - Parameters *Parameters `type:"structure"` - - // A structure that contains the permissions of the dashboard. You can use this - // structure for granting permissions with principal and action information. - Permissions []*ResourcePermission `min:"1" type:"list"` - - // 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 SourceTemplateARN can contain any AWS Account and any QuickSight-supported - // AWS 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 SQL query. // - // SourceEntity is a required field - SourceEntity *DashboardSourceEntity `type:"structure" required:"true"` - - // Contains a map of the key-value pairs for the resource tag or tags assigned - // to the dashboard. - Tags []*Tag `min:"1" type:"list"` - - // A description for the first version of the dashboard being created. - VersionDescription *string `min:"1" type:"string"` + // SqlQuery is a required field + SqlQuery *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s CreateDashboardInput) String() string { +func (s CustomSql) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDashboardInput) GoString() string { +func (s CustomSql) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDashboardInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDashboardInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) +func (s *CustomSql) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomSql"} + if s.Columns != nil && len(s.Columns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.DataSourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceArn")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) @@ -8269,327 +11859,349 @@ func (s *CreateDashboardInput) Validate() error { if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.Permissions != nil && len(s.Permissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) - } - if s.SourceEntity == nil { - invalidParams.Add(request.NewErrParamRequired("SourceEntity")) - } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) - } - if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + if s.SqlQuery == nil { + invalidParams.Add(request.NewErrParamRequired("SqlQuery")) } - if s.Parameters != nil { - if err := s.Parameters.Validate(); err != nil { - invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) - } + if s.SqlQuery != nil && len(*s.SqlQuery) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SqlQuery", 1)) } - if s.Permissions != nil { - for i, v := range s.Permissions { + if s.Columns != nil { + for i, v := range s.Columns { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Columns", i), err.(request.ErrInvalidParams)) } } } - if s.SourceEntity != nil { - if err := s.SourceEntity.Validate(); err != nil { - invalidParams.AddNested("SourceEntity", 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 +} + +// SetColumns sets the Columns field's value. +func (s *CustomSql) SetColumns(v []*InputColumn) *CustomSql { + s.Columns = v + return s +} + +// SetDataSourceArn sets the DataSourceArn field's value. +func (s *CustomSql) SetDataSourceArn(v string) *CustomSql { + s.DataSourceArn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetName sets the Name field's value. +func (s *CustomSql) SetName(v string) *CustomSql { + s.Name = &v + return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateDashboardInput) SetAwsAccountId(v string) *CreateDashboardInput { - s.AwsAccountId = &v +// SetSqlQuery sets the SqlQuery field's value. +func (s *CustomSql) SetSqlQuery(v string) *CustomSql { + s.SqlQuery = &v + return s +} + +// Dashboard. +type Dashboard struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` + + // The time that this dataset was created. + CreatedTime *time.Time `type:"timestamp"` + + // Dashboard ID. + DashboardId *string `min:"1" type:"string"` + + // The last time that this dataset was published. + LastPublishedTime *time.Time `type:"timestamp"` + + // The last time that this dataset was updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // A display name for the dashboard. + Name *string `min:"1" type:"string"` + + // Version. + Version *DashboardVersion `type:"structure"` +} + +// String returns the string representation +func (s Dashboard) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Dashboard) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Dashboard) SetArn(v string) *Dashboard { + s.Arn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *Dashboard) SetCreatedTime(v time.Time) *Dashboard { + s.CreatedTime = &v return s } // SetDashboardId sets the DashboardId field's value. -func (s *CreateDashboardInput) SetDashboardId(v string) *CreateDashboardInput { +func (s *Dashboard) SetDashboardId(v string) *Dashboard { s.DashboardId = &v return s } -// SetDashboardPublishOptions sets the DashboardPublishOptions field's value. -func (s *CreateDashboardInput) SetDashboardPublishOptions(v *DashboardPublishOptions) *CreateDashboardInput { - s.DashboardPublishOptions = v +// SetLastPublishedTime sets the LastPublishedTime field's value. +func (s *Dashboard) SetLastPublishedTime(v time.Time) *Dashboard { + s.LastPublishedTime = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *Dashboard) SetLastUpdatedTime(v time.Time) *Dashboard { + s.LastUpdatedTime = &v return s } // SetName sets the Name field's value. -func (s *CreateDashboardInput) SetName(v string) *CreateDashboardInput { +func (s *Dashboard) SetName(v string) *Dashboard { s.Name = &v return s } -// SetParameters sets the Parameters field's value. -func (s *CreateDashboardInput) SetParameters(v *Parameters) *CreateDashboardInput { - s.Parameters = v +// SetVersion sets the Version field's value. +func (s *Dashboard) SetVersion(v *DashboardVersion) *Dashboard { + s.Version = v return s } -// SetPermissions sets the Permissions field's value. -func (s *CreateDashboardInput) SetPermissions(v []*ResourcePermission) *CreateDashboardInput { - s.Permissions = v - return s +// Dashboard error. +type DashboardError struct { + _ struct{} `type:"structure"` + + // Message. + Message *string `type:"string"` + + // Type. + Type *string `type:"string" enum:"DashboardErrorType"` } -// SetSourceEntity sets the SourceEntity field's value. -func (s *CreateDashboardInput) SetSourceEntity(v *DashboardSourceEntity) *CreateDashboardInput { - s.SourceEntity = v - return s +// String returns the string representation +func (s DashboardError) String() string { + return awsutil.Prettify(s) } -// SetTags sets the Tags field's value. -func (s *CreateDashboardInput) SetTags(v []*Tag) *CreateDashboardInput { - s.Tags = v +// GoString returns the string representation +func (s DashboardError) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *DashboardError) SetMessage(v string) *DashboardError { + s.Message = &v return s } -// SetVersionDescription sets the VersionDescription field's value. -func (s *CreateDashboardInput) SetVersionDescription(v string) *CreateDashboardInput { - s.VersionDescription = &v +// SetType sets the Type field's value. +func (s *DashboardError) SetType(v string) *DashboardError { + s.Type = &v return s } -type CreateDashboardOutput struct { +// Dashboard publish options. +type DashboardPublishOptions struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dashboard. - Arn *string `type:"string"` + // Ad hoc (one-time) filtering option. + AdHocFilteringOption *AdHocFilteringOption `type:"structure"` - // The status of the dashboard creation request. - CreationStatus *string `type:"string" enum:"ResourceStatus"` + // Export to .csv option. + ExportToCSVOption *ExportToCSVOption `type:"structure"` - // The ID for the dashboard. - DashboardId *string `min:"1" type:"string"` + // Sheet controls option. + SheetControlsOption *SheetControlsOption `type:"structure"` +} - // The AWS request ID for this operation. - RequestId *string `type:"string"` +// String returns the string representation +func (s DashboardPublishOptions) String() string { + return awsutil.Prettify(s) +} - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` +// GoString returns the string representation +func (s DashboardPublishOptions) GoString() string { + return s.String() +} - // The ARN of the dashboard, including the version number of the first version - // that is created. - VersionArn *string `type:"string"` +// SetAdHocFilteringOption sets the AdHocFilteringOption field's value. +func (s *DashboardPublishOptions) SetAdHocFilteringOption(v *AdHocFilteringOption) *DashboardPublishOptions { + s.AdHocFilteringOption = v + return s +} + +// SetExportToCSVOption sets the ExportToCSVOption field's value. +func (s *DashboardPublishOptions) SetExportToCSVOption(v *ExportToCSVOption) *DashboardPublishOptions { + s.ExportToCSVOption = v + return s +} + +// SetSheetControlsOption sets the SheetControlsOption field's value. +func (s *DashboardPublishOptions) SetSheetControlsOption(v *SheetControlsOption) *DashboardPublishOptions { + s.SheetControlsOption = v + return s +} + +// A filter that you apply when searching for dashboards. +type DashboardSearchFilter struct { + _ struct{} `type:"structure"` + + // The name of the value that you want to use as a filter, for example, "Name": + // "QUICKSIGHT_USER". + Name *string `type:"string" enum:"DashboardFilterAttribute"` + + // The comparison operator that you want to use as a filter, for example, "Operator": + // "StringEquals". + // + // Operator is a required field + Operator *string `type:"string" required:"true" enum:"FilterOperator"` + + // The value of the named item, in this case QUICKSIGHT_USER, that you want + // to use as a filter, for example, "Value": "arn:aws:quicksight:us-east-1:1:user/default/UserName1". + Value *string `type:"string"` } // String returns the string representation -func (s CreateDashboardOutput) String() string { +func (s DashboardSearchFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDashboardOutput) GoString() string { +func (s DashboardSearchFilter) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *CreateDashboardOutput) SetArn(v string) *CreateDashboardOutput { - s.Arn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DashboardSearchFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DashboardSearchFilter"} + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCreationStatus sets the CreationStatus field's value. -func (s *CreateDashboardOutput) SetCreationStatus(v string) *CreateDashboardOutput { - s.CreationStatus = &v +// SetName sets the Name field's value. +func (s *DashboardSearchFilter) SetName(v string) *DashboardSearchFilter { + s.Name = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *CreateDashboardOutput) SetDashboardId(v string) *CreateDashboardOutput { - s.DashboardId = &v +// SetOperator sets the Operator field's value. +func (s *DashboardSearchFilter) SetOperator(v string) *DashboardSearchFilter { + s.Operator = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateDashboardOutput) SetRequestId(v string) *CreateDashboardOutput { - s.RequestId = &v +// SetValue sets the Value field's value. +func (s *DashboardSearchFilter) SetValue(v string) *DashboardSearchFilter { + s.Value = &v return s } -// SetStatus sets the Status field's value. -func (s *CreateDashboardOutput) SetStatus(v int64) *CreateDashboardOutput { - s.Status = &v - return s +// Dashboard source entity. +type DashboardSourceEntity struct { + _ struct{} `type:"structure"` + + // Source template. + SourceTemplate *DashboardSourceTemplate `type:"structure"` +} + +// String returns the string representation +func (s DashboardSourceEntity) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DashboardSourceEntity) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DashboardSourceEntity) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DashboardSourceEntity"} + if s.SourceTemplate != nil { + if err := s.SourceTemplate.Validate(); err != nil { + invalidParams.AddNested("SourceTemplate", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetVersionArn sets the VersionArn field's value. -func (s *CreateDashboardOutput) SetVersionArn(v string) *CreateDashboardOutput { - s.VersionArn = &v +// SetSourceTemplate sets the SourceTemplate field's value. +func (s *DashboardSourceEntity) SetSourceTemplate(v *DashboardSourceTemplate) *DashboardSourceEntity { + s.SourceTemplate = v return s } -type CreateDataSetInput struct { +// Dashboard source template. +type DashboardSourceTemplate struct { _ struct{} `type:"structure"` - // The AWS 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. - ColumnGroups []*ColumnGroup `min:"1" type:"list"` - - // An ID for the dataset that you want to create. This ID is unique per AWS - // Region for each AWS account. - // - // DataSetId is a required field - DataSetId *string `type:"string" required:"true"` - - // Indicates whether you want to import the data into SPICE. - // - // ImportMode is a required field - ImportMode *string `type:"string" required:"true" enum:"DataSetImportMode"` - - // Configures the combination and transformation of the data from the physical - // tables. - LogicalTableMap map[string]*LogicalTable `min:"1" type:"map"` - - // The display name for the dataset. + // The Amazon Resource Name (ARN) of the resource. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` - - // A list of resource permissions on the dataset. - Permissions []*ResourcePermission `min:"1" type:"list"` + // Arn is a required field + Arn *string `type:"string" required:"true"` - // Declares the physical tables that are available in the underlying data sources. + // Dataset references. // - // PhysicalTableMap is a required field - PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map" required:"true"` - - // The row-level security configuration for the data that you want to create. - RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` - - // Contains a map of the key-value pairs for the resource tag or tags assigned - // to the dataset. - Tags []*Tag `min:"1" type:"list"` + // DataSetReferences is a required field + DataSetReferences []*DataSetReference `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s CreateDataSetInput) String() string { +func (s DashboardSourceTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDataSetInput) GoString() string { +func (s DashboardSourceTemplate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDataSetInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDataSetInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.ColumnGroups != nil && len(s.ColumnGroups) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ColumnGroups", 1)) - } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) - } - if s.ImportMode == nil { - invalidParams.Add(request.NewErrParamRequired("ImportMode")) - } - if s.LogicalTableMap != nil && len(s.LogicalTableMap) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LogicalTableMap", 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.Permissions != nil && len(s.Permissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) - } - 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)) - } - if s.ColumnGroups != nil { - for i, v := range s.ColumnGroups { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ColumnGroups", i), err.(request.ErrInvalidParams)) - } - } - } - if s.LogicalTableMap != nil { - for i, v := range s.LogicalTableMap { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogicalTableMap", i), err.(request.ErrInvalidParams)) - } - } - } - if s.Permissions != nil { - for i, v := range s.Permissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) - } - } +func (s *DashboardSourceTemplate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DashboardSourceTemplate"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) } - if s.PhysicalTableMap != nil { - for i, v := range s.PhysicalTableMap { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PhysicalTableMap", i), err.(request.ErrInvalidParams)) - } - } + if s.DataSetReferences == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetReferences")) } - if s.RowLevelPermissionDataSet != nil { - if err := s.RowLevelPermissionDataSet.Validate(); err != nil { - invalidParams.AddNested("RowLevelPermissionDataSet", err.(request.ErrInvalidParams)) - } + if s.DataSetReferences != nil && len(s.DataSetReferences) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetReferences", 1)) } - if s.Tags != nil { - for i, v := range s.Tags { + if s.DataSetReferences != nil { + for i, v := range s.DataSetReferences { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSetReferences", i), err.(request.ErrInvalidParams)) } } } @@ -8600,725 +12212,500 @@ func (s *CreateDataSetInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateDataSetInput) SetAwsAccountId(v string) *CreateDataSetInput { - s.AwsAccountId = &v - return s -} - -// SetColumnGroups sets the ColumnGroups field's value. -func (s *CreateDataSetInput) SetColumnGroups(v []*ColumnGroup) *CreateDataSetInput { - s.ColumnGroups = v - return s -} - -// SetDataSetId sets the DataSetId field's value. -func (s *CreateDataSetInput) SetDataSetId(v string) *CreateDataSetInput { - s.DataSetId = &v - return s -} - -// SetImportMode sets the ImportMode field's value. -func (s *CreateDataSetInput) SetImportMode(v string) *CreateDataSetInput { - s.ImportMode = &v - return s -} - -// SetLogicalTableMap sets the LogicalTableMap field's value. -func (s *CreateDataSetInput) SetLogicalTableMap(v map[string]*LogicalTable) *CreateDataSetInput { - s.LogicalTableMap = v - return s -} - -// SetName sets the Name field's value. -func (s *CreateDataSetInput) SetName(v string) *CreateDataSetInput { - s.Name = &v - return s -} - -// SetPermissions sets the Permissions field's value. -func (s *CreateDataSetInput) SetPermissions(v []*ResourcePermission) *CreateDataSetInput { - s.Permissions = v - return s -} - -// SetPhysicalTableMap sets the PhysicalTableMap field's value. -func (s *CreateDataSetInput) SetPhysicalTableMap(v map[string]*PhysicalTable) *CreateDataSetInput { - s.PhysicalTableMap = v - return s -} - -// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. -func (s *CreateDataSetInput) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *CreateDataSetInput { - s.RowLevelPermissionDataSet = v +// SetArn sets the Arn field's value. +func (s *DashboardSourceTemplate) SetArn(v string) *DashboardSourceTemplate { + s.Arn = &v return s } -// SetTags sets the Tags field's value. -func (s *CreateDataSetInput) SetTags(v []*Tag) *CreateDataSetInput { - s.Tags = v +// SetDataSetReferences sets the DataSetReferences field's value. +func (s *DashboardSourceTemplate) SetDataSetReferences(v []*DataSetReference) *DashboardSourceTemplate { + s.DataSetReferences = v return s } -type CreateDataSetOutput struct { +// Dashboard summary. +type DashboardSummary struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dataset. + // The Amazon Resource Name (ARN) of the resource. Arn *string `type:"string"` - // The ID for the dataset that you want to create. This ID is unique per AWS - // Region for each AWS account. - DataSetId *string `type:"string"` + // The time that this dashboard was created. + CreatedTime *time.Time `type:"timestamp"` - // The ARN for the ingestion, which is triggered as a result of dataset creation - // if the import mode is SPICE. - IngestionArn *string `type:"string"` + // Dashboard ID. + DashboardId *string `min:"1" type:"string"` - // The ID of the ingestion, which is triggered as a result of dataset creation - // if the import mode is SPICE. - IngestionId *string `type:"string"` + // The last time that this dashboard was published. + LastPublishedTime *time.Time `type:"timestamp"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // The last time that this dashboard was updated. + LastUpdatedTime *time.Time `type:"timestamp"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // A display name for the dashboard. + Name *string `min:"1" type:"string"` + + // Published version number. + PublishedVersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s CreateDataSetOutput) String() string { +func (s DashboardSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDataSetOutput) GoString() string { +func (s DashboardSummary) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *CreateDataSetOutput) SetArn(v string) *CreateDataSetOutput { - s.Arn = &v +// SetArn sets the Arn field's value. +func (s *DashboardSummary) SetArn(v string) *DashboardSummary { + s.Arn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *DashboardSummary) SetCreatedTime(v time.Time) *DashboardSummary { + s.CreatedTime = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *CreateDataSetOutput) SetDataSetId(v string) *CreateDataSetOutput { - s.DataSetId = &v +// SetDashboardId sets the DashboardId field's value. +func (s *DashboardSummary) SetDashboardId(v string) *DashboardSummary { + s.DashboardId = &v return s } -// SetIngestionArn sets the IngestionArn field's value. -func (s *CreateDataSetOutput) SetIngestionArn(v string) *CreateDataSetOutput { - s.IngestionArn = &v +// SetLastPublishedTime sets the LastPublishedTime field's value. +func (s *DashboardSummary) SetLastPublishedTime(v time.Time) *DashboardSummary { + s.LastPublishedTime = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *CreateDataSetOutput) SetIngestionId(v string) *CreateDataSetOutput { - s.IngestionId = &v +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *DashboardSummary) SetLastUpdatedTime(v time.Time) *DashboardSummary { + s.LastUpdatedTime = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateDataSetOutput) SetRequestId(v string) *CreateDataSetOutput { - s.RequestId = &v +// SetName sets the Name field's value. +func (s *DashboardSummary) SetName(v string) *DashboardSummary { + s.Name = &v return s } -// SetStatus sets the Status field's value. -func (s *CreateDataSetOutput) SetStatus(v int64) *CreateDataSetOutput { - s.Status = &v +// SetPublishedVersionNumber sets the PublishedVersionNumber field's value. +func (s *DashboardSummary) SetPublishedVersionNumber(v int64) *DashboardSummary { + s.PublishedVersionNumber = &v return s } -type CreateDataSourceInput struct { +// Dashboard version. +type DashboardVersion struct { _ struct{} `type:"structure"` - // The AWS 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. - Credentials *DataSourceCredentials `type:"structure" sensitive:"true"` - - // An ID for the data source. This ID is unique per AWS Region for each AWS - // account. - // - // DataSourceId is a required field - DataSourceId *string `type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` - // The parameters that QuickSight uses to connect to your underlying source. - DataSourceParameters *DataSourceParameters `type:"structure"` + // The time that this dashboard version was created. + CreatedTime *time.Time `type:"timestamp"` - // A display name for the data source. - // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + // The Amazon Resource Numbers (ARNs) for the datasets that are associated with + // a version of the dashboard. + DataSetArns []*string `type:"list"` - // A list of resource permissions on the data source. - Permissions []*ResourcePermission `min:"1" type:"list"` + // Description. + Description *string `min:"1" type:"string"` - // Secure Socket Layer (SSL) properties that apply when QuickSight connects - // to your underlying source. - SslProperties *SslProperties `type:"structure"` + // Errors. + Errors []*DashboardError `min:"1" type:"list"` - // Contains a map of the key-value pairs for the resource tag or tags assigned - // to the data source. - Tags []*Tag `min:"1" type:"list"` + // Source entity ARN. + SourceEntityArn *string `type:"string"` - // The type of the data source. Currently, the supported types for this operation - // are: ATHENA, AURORA, AURORA_POSTGRESQL, MARIADB, MYSQL, POSTGRESQL, PRESTO, - // REDSHIFT, S3, SNOWFLAKE, SPARK, SQLSERVER, TERADATA. Use ListDataSources - // to return a list of all data sources. - // - // Type is a required field - Type *string `type:"string" required:"true" enum:"DataSourceType"` + // The HTTP status of the request. + Status *string `type:"string" enum:"ResourceStatus"` - // Use this parameter only when you want QuickSight to use a VPC connection - // when connecting to your underlying source. - VpcConnectionProperties *VpcConnectionProperties `type:"structure"` + // Version number. + VersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s CreateDataSourceInput) String() string { +func (s DashboardVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDataSourceInput) GoString() string { +func (s DashboardVersion) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDataSourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.DataSourceId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceId")) - } - 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.Permissions != nil && len(s.Permissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) - } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) - } - if s.Type == nil { - invalidParams.Add(request.NewErrParamRequired("Type")) - } - if s.Credentials != nil { - if err := s.Credentials.Validate(); err != nil { - invalidParams.AddNested("Credentials", err.(request.ErrInvalidParams)) - } - } - if s.DataSourceParameters != nil { - if err := s.DataSourceParameters.Validate(); err != nil { - invalidParams.AddNested("DataSourceParameters", err.(request.ErrInvalidParams)) - } - } - if s.Permissions != nil { - for i, v := range s.Permissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", 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 s.VpcConnectionProperties != nil { - if err := s.VpcConnectionProperties.Validate(); err != nil { - invalidParams.AddNested("VpcConnectionProperties", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateDataSourceInput) SetAwsAccountId(v string) *CreateDataSourceInput { - s.AwsAccountId = &v - return s -} - -// SetCredentials sets the Credentials field's value. -func (s *CreateDataSourceInput) SetCredentials(v *DataSourceCredentials) *CreateDataSourceInput { - s.Credentials = v - return s -} - -// SetDataSourceId sets the DataSourceId field's value. -func (s *CreateDataSourceInput) SetDataSourceId(v string) *CreateDataSourceInput { - s.DataSourceId = &v +// SetArn sets the Arn field's value. +func (s *DashboardVersion) SetArn(v string) *DashboardVersion { + s.Arn = &v return s } -// SetDataSourceParameters sets the DataSourceParameters field's value. -func (s *CreateDataSourceInput) SetDataSourceParameters(v *DataSourceParameters) *CreateDataSourceInput { - s.DataSourceParameters = v +// SetCreatedTime sets the CreatedTime field's value. +func (s *DashboardVersion) SetCreatedTime(v time.Time) *DashboardVersion { + s.CreatedTime = &v return s } -// SetName sets the Name field's value. -func (s *CreateDataSourceInput) SetName(v string) *CreateDataSourceInput { - s.Name = &v +// SetDataSetArns sets the DataSetArns field's value. +func (s *DashboardVersion) SetDataSetArns(v []*string) *DashboardVersion { + s.DataSetArns = v return s } -// SetPermissions sets the Permissions field's value. -func (s *CreateDataSourceInput) SetPermissions(v []*ResourcePermission) *CreateDataSourceInput { - s.Permissions = v +// SetDescription sets the Description field's value. +func (s *DashboardVersion) SetDescription(v string) *DashboardVersion { + s.Description = &v return s } -// SetSslProperties sets the SslProperties field's value. -func (s *CreateDataSourceInput) SetSslProperties(v *SslProperties) *CreateDataSourceInput { - s.SslProperties = v +// SetErrors sets the Errors field's value. +func (s *DashboardVersion) SetErrors(v []*DashboardError) *DashboardVersion { + s.Errors = v return s } -// SetTags sets the Tags field's value. -func (s *CreateDataSourceInput) SetTags(v []*Tag) *CreateDataSourceInput { - s.Tags = v +// SetSourceEntityArn sets the SourceEntityArn field's value. +func (s *DashboardVersion) SetSourceEntityArn(v string) *DashboardVersion { + s.SourceEntityArn = &v return s } -// SetType sets the Type field's value. -func (s *CreateDataSourceInput) SetType(v string) *CreateDataSourceInput { - s.Type = &v +// SetStatus sets the Status field's value. +func (s *DashboardVersion) SetStatus(v string) *DashboardVersion { + s.Status = &v return s } -// SetVpcConnectionProperties sets the VpcConnectionProperties field's value. -func (s *CreateDataSourceInput) SetVpcConnectionProperties(v *VpcConnectionProperties) *CreateDataSourceInput { - s.VpcConnectionProperties = v +// SetVersionNumber sets the VersionNumber field's value. +func (s *DashboardVersion) SetVersionNumber(v int64) *DashboardVersion { + s.VersionNumber = &v return s } -type CreateDataSourceOutput struct { +// Dashboard version summary. +type DashboardVersionSummary struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the data source. + // The Amazon Resource Name (ARN) of the resource. Arn *string `type:"string"` - // The status of creating the data source. - CreationStatus *string `type:"string" enum:"ResourceStatus"` + // The time that this dashboard version was created. + CreatedTime *time.Time `type:"timestamp"` - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - DataSourceId *string `type:"string"` + // Description. + Description *string `min:"1" type:"string"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // Source entity ARN. + SourceEntityArn *string `type:"string"` // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + Status *string `type:"string" enum:"ResourceStatus"` + + // Version number. + VersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s CreateDataSourceOutput) String() string { +func (s DashboardVersionSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDataSourceOutput) GoString() string { +func (s DashboardVersionSummary) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *CreateDataSourceOutput) SetArn(v string) *CreateDataSourceOutput { +func (s *DashboardVersionSummary) SetArn(v string) *DashboardVersionSummary { s.Arn = &v return s } -// SetCreationStatus sets the CreationStatus field's value. -func (s *CreateDataSourceOutput) SetCreationStatus(v string) *CreateDataSourceOutput { - s.CreationStatus = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *DashboardVersionSummary) SetCreatedTime(v time.Time) *DashboardVersionSummary { + s.CreatedTime = &v return s } -// SetDataSourceId sets the DataSourceId field's value. -func (s *CreateDataSourceOutput) SetDataSourceId(v string) *CreateDataSourceOutput { - s.DataSourceId = &v +// SetDescription sets the Description field's value. +func (s *DashboardVersionSummary) SetDescription(v string) *DashboardVersionSummary { + s.Description = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateDataSourceOutput) SetRequestId(v string) *CreateDataSourceOutput { - s.RequestId = &v +// SetSourceEntityArn sets the SourceEntityArn field's value. +func (s *DashboardVersionSummary) SetSourceEntityArn(v string) *DashboardVersionSummary { + s.SourceEntityArn = &v return s } // SetStatus sets the Status field's value. -func (s *CreateDataSourceOutput) SetStatus(v int64) *CreateDataSourceOutput { +func (s *DashboardVersionSummary) SetStatus(v string) *DashboardVersionSummary { s.Status = &v return s } -// The request object for this operation. -type CreateGroupInput struct { - _ struct{} `type:"structure"` +// SetVersionNumber sets the VersionNumber field's value. +func (s *DashboardVersionSummary) SetVersionNumber(v int64) *DashboardVersionSummary { + s.VersionNumber = &v + return s +} - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS 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 theme colors that are used for data colors in charts. The colors description +// is a hexidecimal color code that consists of six alphanumerical characters, +// prefixed with #, for example #37BFF5. +type DataColorPalette struct { + _ struct{} `type:"structure"` - // A description for the group that you want to create. - Description *string `min:"1" type:"string"` + // The hexadecimal codes for the colors. + Colors []*string `type:"list"` - // A name for the group that you want to create. - // - // GroupName is a required field - GroupName *string `min:"1" type:"string" required:"true"` + // The hexadecimal code of a color that applies to charts where a lack of data + // is highlighted. + EmptyFillColor *string `type:"string"` - // The namespace. Currently, you should set this to default. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // The minimum and maximum hexadecimal codes that describe a color gradient. + MinMaxGradient []*string `type:"list"` } // String returns the string representation -func (s CreateGroupInput) String() string { +func (s DataColorPalette) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateGroupInput) GoString() string { +func (s DataColorPalette) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateGroupInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateGroupInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.Description != nil && len(*s.Description) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Description", 1)) - } - if s.GroupName == nil { - invalidParams.Add(request.NewErrParamRequired("GroupName")) - } - if s.GroupName != nil && len(*s.GroupName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateGroupInput) SetAwsAccountId(v string) *CreateGroupInput { - s.AwsAccountId = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *CreateGroupInput) SetDescription(v string) *CreateGroupInput { - s.Description = &v +// SetColors sets the Colors field's value. +func (s *DataColorPalette) SetColors(v []*string) *DataColorPalette { + s.Colors = v return s } -// SetGroupName sets the GroupName field's value. -func (s *CreateGroupInput) SetGroupName(v string) *CreateGroupInput { - s.GroupName = &v +// SetEmptyFillColor sets the EmptyFillColor field's value. +func (s *DataColorPalette) SetEmptyFillColor(v string) *DataColorPalette { + s.EmptyFillColor = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *CreateGroupInput) SetNamespace(v string) *CreateGroupInput { - s.Namespace = &v +// SetMinMaxGradient sets the MinMaxGradient field's value. +func (s *DataColorPalette) SetMinMaxGradient(v []*string) *DataColorPalette { + s.MinMaxGradient = v return s } -type CreateGroupMembershipInput struct { +// Dataset. +type DataSet struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS 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 Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` - // The name of the group that you want to add the user to. - // - // GroupName is a required field - GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` + // Groupings of columns that work together in certain Amazon QuickSight features. + // Currently, only geospatial hierarchy is supported. + ColumnGroups []*ColumnGroup `min:"1" type:"list"` - // The name of the user that you want to add to the group membership. - // - // MemberName is a required field - MemberName *string `location:"uri" locationName:"MemberName" min:"1" type:"string" required:"true"` + // The amount of SPICE capacity used by this dataset. This is 0 if the dataset + // isn't imported into SPICE. + ConsumedSpiceCapacityInBytes *int64 `type:"long"` - // The namespace. Currently, you should set this to default. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // The time that this dataset was created. + CreatedTime *time.Time `type:"timestamp"` + + // The ID of the dataset. + DataSetId *string `type:"string"` + + // Indicates whether you want to import the data into SPICE. + ImportMode *string `type:"string" enum:"DataSetImportMode"` + + // The last time that this dataset was updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // Configures the combination and transformation of the data from the physical + // tables. + LogicalTableMap map[string]*LogicalTable `min:"1" type:"map"` + + // A display name for the dataset. + Name *string `min:"1" type:"string"` + + // The list of columns after all transforms. These columns are available in + // templates, analyses, and dashboards. + OutputColumns []*OutputColumn `type:"list"` + + // Declares the physical tables that are available in the underlying data sources. + PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map"` + + // The row-level security configuration for the dataset. + RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` } // String returns the string representation -func (s CreateGroupMembershipInput) String() string { +func (s DataSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateGroupMembershipInput) GoString() string { +func (s DataSet) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateGroupMembershipInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateGroupMembershipInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.GroupName == nil { - invalidParams.Add(request.NewErrParamRequired("GroupName")) - } - if s.GroupName != nil && len(*s.GroupName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) - } - if s.MemberName == nil { - invalidParams.Add(request.NewErrParamRequired("MemberName")) - } - if s.MemberName != nil && len(*s.MemberName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MemberName", 1)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetArn sets the Arn field's value. +func (s *DataSet) SetArn(v string) *DataSet { + s.Arn = &v + return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateGroupMembershipInput) SetAwsAccountId(v string) *CreateGroupMembershipInput { - s.AwsAccountId = &v +// SetColumnGroups sets the ColumnGroups field's value. +func (s *DataSet) SetColumnGroups(v []*ColumnGroup) *DataSet { + s.ColumnGroups = v return s } -// SetGroupName sets the GroupName field's value. -func (s *CreateGroupMembershipInput) SetGroupName(v string) *CreateGroupMembershipInput { - s.GroupName = &v +// SetConsumedSpiceCapacityInBytes sets the ConsumedSpiceCapacityInBytes field's value. +func (s *DataSet) SetConsumedSpiceCapacityInBytes(v int64) *DataSet { + s.ConsumedSpiceCapacityInBytes = &v return s } -// SetMemberName sets the MemberName field's value. -func (s *CreateGroupMembershipInput) SetMemberName(v string) *CreateGroupMembershipInput { - s.MemberName = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *DataSet) SetCreatedTime(v time.Time) *DataSet { + s.CreatedTime = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *CreateGroupMembershipInput) SetNamespace(v string) *CreateGroupMembershipInput { - s.Namespace = &v +// SetDataSetId sets the DataSetId field's value. +func (s *DataSet) SetDataSetId(v string) *DataSet { + s.DataSetId = &v return s } -type CreateGroupMembershipOutput struct { - _ struct{} `type:"structure"` - - // The group member. - GroupMember *GroupMember `type:"structure"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` +// SetImportMode sets the ImportMode field's value. +func (s *DataSet) SetImportMode(v string) *DataSet { + s.ImportMode = &v + return s } -// String returns the string representation -func (s CreateGroupMembershipOutput) String() string { - return awsutil.Prettify(s) +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *DataSet) SetLastUpdatedTime(v time.Time) *DataSet { + s.LastUpdatedTime = &v + return s } -// GoString returns the string representation -func (s CreateGroupMembershipOutput) GoString() string { - return s.String() +// SetLogicalTableMap sets the LogicalTableMap field's value. +func (s *DataSet) SetLogicalTableMap(v map[string]*LogicalTable) *DataSet { + s.LogicalTableMap = v + return s } -// SetGroupMember sets the GroupMember field's value. -func (s *CreateGroupMembershipOutput) SetGroupMember(v *GroupMember) *CreateGroupMembershipOutput { - s.GroupMember = v +// SetName sets the Name field's value. +func (s *DataSet) SetName(v string) *DataSet { + s.Name = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateGroupMembershipOutput) SetRequestId(v string) *CreateGroupMembershipOutput { - s.RequestId = &v +// SetOutputColumns sets the OutputColumns field's value. +func (s *DataSet) SetOutputColumns(v []*OutputColumn) *DataSet { + s.OutputColumns = v + return s +} + +// SetPhysicalTableMap sets the PhysicalTableMap field's value. +func (s *DataSet) SetPhysicalTableMap(v map[string]*PhysicalTable) *DataSet { + s.PhysicalTableMap = v return s } -// SetStatus sets the Status field's value. -func (s *CreateGroupMembershipOutput) SetStatus(v int64) *CreateGroupMembershipOutput { - s.Status = &v +// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. +func (s *DataSet) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *DataSet { + s.RowLevelPermissionDataSet = v return s } -// The response object for this operation. -type CreateGroupOutput struct { +// Dataset configuration. +type DataSetConfiguration struct { _ struct{} `type:"structure"` - // The name of the group. - Group *Group `type:"structure"` + // A structure containing the list of column group schemas. + ColumnGroupSchemaList []*ColumnGroupSchema `type:"list"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // Dataset schema. + DataSetSchema *DataSetSchema `type:"structure"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Placeholder. + Placeholder *string `type:"string"` } // String returns the string representation -func (s CreateGroupOutput) String() string { +func (s DataSetConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateGroupOutput) GoString() string { +func (s DataSetConfiguration) GoString() string { return s.String() } -// SetGroup sets the Group field's value. -func (s *CreateGroupOutput) SetGroup(v *Group) *CreateGroupOutput { - s.Group = v +// SetColumnGroupSchemaList sets the ColumnGroupSchemaList field's value. +func (s *DataSetConfiguration) SetColumnGroupSchemaList(v []*ColumnGroupSchema) *DataSetConfiguration { + s.ColumnGroupSchemaList = v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateGroupOutput) SetRequestId(v string) *CreateGroupOutput { - s.RequestId = &v +// SetDataSetSchema sets the DataSetSchema field's value. +func (s *DataSetConfiguration) SetDataSetSchema(v *DataSetSchema) *DataSetConfiguration { + s.DataSetSchema = v return s } -// SetStatus sets the Status field's value. -func (s *CreateGroupOutput) SetStatus(v int64) *CreateGroupOutput { - s.Status = &v +// SetPlaceholder sets the Placeholder field's value. +func (s *DataSetConfiguration) SetPlaceholder(v string) *DataSetConfiguration { + s.Placeholder = &v return s } -type CreateIAMPolicyAssignmentInput struct { +// Dataset reference. +type DataSetReference struct { _ struct{} `type:"structure"` - // The name of the assignment. It must be unique within an AWS account. - // - // AssignmentName is a required field - AssignmentName *string `min:"1" type:"string" required:"true"` - - // The status of the assignment. Possible values are as follows: - // - // * ENABLED - Anything specified in this assignment is used when creating - // the data source. - // - // * DISABLED - This assignment isn't used when creating the data source. - // - // * DRAFT - This assignment is an unfinished draft and isn't used when creating - // the data source. - // - // AssignmentStatus is a required field - AssignmentStatus *string `type:"string" required:"true" enum:"AssignmentStatus"` - - // The ID of the AWS account where you want to assign an IAM policy to QuickSight - // users or groups. + // Dataset Amazon Resource Name (ARN). // - // 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. - Identities map[string][]*string `type:"map"` + // DataSetArn is a required field + DataSetArn *string `type:"string" required:"true"` - // The namespace that contains the assignment. + // Dataset placeholder. // - // 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. - PolicyArn *string `type:"string"` + // DataSetPlaceholder is a required field + DataSetPlaceholder *string `type:"string" required:"true"` } // String returns the string representation -func (s CreateIAMPolicyAssignmentInput) String() string { +func (s DataSetReference) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateIAMPolicyAssignmentInput) GoString() string { +func (s DataSetReference) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateIAMPolicyAssignmentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateIAMPolicyAssignmentInput"} - if s.AssignmentName == nil { - invalidParams.Add(request.NewErrParamRequired("AssignmentName")) - } - if s.AssignmentName != nil && len(*s.AssignmentName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AssignmentName", 1)) - } - if s.AssignmentStatus == nil { - invalidParams.Add(request.NewErrParamRequired("AssignmentStatus")) - } - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) +func (s *DataSetReference) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSetReference"} + if s.DataSetArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetArn")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.DataSetPlaceholder == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetPlaceholder")) } if invalidParams.Len() > 0 { @@ -9327,325 +12714,290 @@ func (s *CreateIAMPolicyAssignmentInput) Validate() error { return nil } -// SetAssignmentName sets the AssignmentName field's value. -func (s *CreateIAMPolicyAssignmentInput) SetAssignmentName(v string) *CreateIAMPolicyAssignmentInput { - s.AssignmentName = &v - return s -} - -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *CreateIAMPolicyAssignmentInput) SetAssignmentStatus(v string) *CreateIAMPolicyAssignmentInput { - s.AssignmentStatus = &v - return s -} - -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateIAMPolicyAssignmentInput) SetAwsAccountId(v string) *CreateIAMPolicyAssignmentInput { - s.AwsAccountId = &v - return s -} - -// SetIdentities sets the Identities field's value. -func (s *CreateIAMPolicyAssignmentInput) SetIdentities(v map[string][]*string) *CreateIAMPolicyAssignmentInput { - s.Identities = v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *CreateIAMPolicyAssignmentInput) SetNamespace(v string) *CreateIAMPolicyAssignmentInput { - s.Namespace = &v +// SetDataSetArn sets the DataSetArn field's value. +func (s *DataSetReference) SetDataSetArn(v string) *DataSetReference { + s.DataSetArn = &v return s } -// SetPolicyArn sets the PolicyArn field's value. -func (s *CreateIAMPolicyAssignmentInput) SetPolicyArn(v string) *CreateIAMPolicyAssignmentInput { - s.PolicyArn = &v +// SetDataSetPlaceholder sets the DataSetPlaceholder field's value. +func (s *DataSetReference) SetDataSetPlaceholder(v string) *DataSetReference { + s.DataSetPlaceholder = &v return s } -type CreateIAMPolicyAssignmentOutput struct { +// Dataset schema. +type DataSetSchema struct { _ struct{} `type:"structure"` - // The ID for the assignment. - AssignmentId *string `type:"string"` - - // The name of the assignment. This name must be unique within the AWS account. - AssignmentName *string `min:"1" type:"string"` - - // The status of the assignment. Possible values are as follows: - // - // * ENABLED - Anything specified in this assignment is used when creating - // the data source. - // - // * DISABLED - This assignment isn't used when creating the data source. - // - // * DRAFT - This assignment is an unfinished draft and isn't used when creating - // the data source. - AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - - // The QuickSight users, groups, or both that the IAM policy 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. - PolicyArn *string `type:"string"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // A structure containing the list of column schemas. + ColumnSchemaList []*ColumnSchema `type:"list"` } // String returns the string representation -func (s CreateIAMPolicyAssignmentOutput) String() string { +func (s DataSetSchema) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateIAMPolicyAssignmentOutput) GoString() string { +func (s DataSetSchema) GoString() string { return s.String() } -// SetAssignmentId sets the AssignmentId field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetAssignmentId(v string) *CreateIAMPolicyAssignmentOutput { - s.AssignmentId = &v - return s -} - -// SetAssignmentName sets the AssignmentName field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetAssignmentName(v string) *CreateIAMPolicyAssignmentOutput { - s.AssignmentName = &v - return s -} - -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetAssignmentStatus(v string) *CreateIAMPolicyAssignmentOutput { - s.AssignmentStatus = &v +// SetColumnSchemaList sets the ColumnSchemaList field's value. +func (s *DataSetSchema) SetColumnSchemaList(v []*ColumnSchema) *DataSetSchema { + s.ColumnSchemaList = v return s } -// SetIdentities sets the Identities field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetIdentities(v map[string][]*string) *CreateIAMPolicyAssignmentOutput { - s.Identities = v - return s -} +// Dataset summary. +type DataSetSummary struct { + _ struct{} `type:"structure"` -// SetPolicyArn sets the PolicyArn field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetPolicyArn(v string) *CreateIAMPolicyAssignmentOutput { - s.PolicyArn = &v - return s -} + // The Amazon Resource Name (ARN) of the dataset. + Arn *string `type:"string"` -// SetRequestId sets the RequestId field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetRequestId(v string) *CreateIAMPolicyAssignmentOutput { - s.RequestId = &v - return s -} + // The time that this dataset was created. + CreatedTime *time.Time `type:"timestamp"` -// SetStatus sets the Status field's value. -func (s *CreateIAMPolicyAssignmentOutput) SetStatus(v int64) *CreateIAMPolicyAssignmentOutput { - s.Status = &v - return s -} + // The ID of the dataset. + DataSetId *string `type:"string"` -type CreateIngestionInput struct { - _ struct{} `type:"structure"` + // Indicates whether you want to import the data into SPICE. + ImportMode *string `type:"string" enum:"DataSetImportMode"` - // The AWS account ID. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // The last time that this dataset was updated. + LastUpdatedTime *time.Time `type:"timestamp"` - // The ID of the dataset used in the ingestion. - // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // A display name for the dataset. + Name *string `min:"1" type:"string"` - // An ID for the ingestion. - // - // IngestionId is a required field - IngestionId *string `location:"uri" locationName:"IngestionId" min:"1" type:"string" required:"true"` + // The row-level security configuration for the dataset. + RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` } // String returns the string representation -func (s CreateIngestionInput) String() string { +func (s DataSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateIngestionInput) GoString() string { +func (s DataSetSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateIngestionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateIngestionInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) - } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) - } - if s.IngestionId == nil { - invalidParams.Add(request.NewErrParamRequired("IngestionId")) - } - if s.IngestionId != nil && len(*s.IngestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("IngestionId", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetArn sets the Arn field's value. +func (s *DataSetSummary) SetArn(v string) *DataSetSummary { + s.Arn = &v + return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateIngestionInput) SetAwsAccountId(v string) *CreateIngestionInput { - s.AwsAccountId = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *DataSetSummary) SetCreatedTime(v time.Time) *DataSetSummary { + s.CreatedTime = &v return s } // SetDataSetId sets the DataSetId field's value. -func (s *CreateIngestionInput) SetDataSetId(v string) *CreateIngestionInput { +func (s *DataSetSummary) SetDataSetId(v string) *DataSetSummary { s.DataSetId = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *CreateIngestionInput) SetIngestionId(v string) *CreateIngestionInput { - s.IngestionId = &v +// SetImportMode sets the ImportMode field's value. +func (s *DataSetSummary) SetImportMode(v string) *DataSetSummary { + s.ImportMode = &v return s } -type CreateIngestionOutput struct { +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *DataSetSummary) SetLastUpdatedTime(v time.Time) *DataSetSummary { + s.LastUpdatedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSetSummary) SetName(v string) *DataSetSummary { + s.Name = &v + return s +} + +// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. +func (s *DataSetSummary) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *DataSetSummary { + s.RowLevelPermissionDataSet = v + return s +} + +// The structure of a data source. +type DataSource struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the data ingestion. + // A set of alternate data source parameters that you want to share for the + // credentials stored with this data source. The credentials are applied in + // tandem with the data source parameters when you copy a data source by using + // a create or update request. The API compares the DataSourceParameters structure + // that's in the request with the structures in the AlternateDataSourceParameters + // allowlist. If the structures are an exact match, the request is allowed to + // use the credentials from this existing data source. If the AlternateDataSourceParameters + // list is null, the Credentials originally used with this DataSourceParameters + // are automatically allowed. + AlternateDataSourceParameters []*DataSourceParameters `min:"1" type:"list"` + + // The Amazon Resource Name (ARN) of the data source. Arn *string `type:"string"` - // An ID for the ingestion. - IngestionId *string `min:"1" type:"string"` + // The time that this data source was created. + CreatedTime *time.Time `type:"timestamp"` - // The ingestion status. - IngestionStatus *string `type:"string" enum:"IngestionStatus"` + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + DataSourceId *string `type:"string"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // 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. + DataSourceParameters *DataSourceParameters `type:"structure"` + + // Error information from the last update or the creation of the data source. + ErrorInfo *DataSourceErrorInfo `type:"structure"` + + // The last time that this data source was updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // A display name for the data source. + Name *string `min:"1" type:"string"` + + // Secure Socket Layer (SSL) properties that apply when QuickSight connects + // to your underlying source. + SslProperties *SslProperties `type:"structure"` // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + Status *string `type:"string" enum:"ResourceStatus"` + + // The type of the data source. This type indicates which database engine the + // data source connects to. + 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. + VpcConnectionProperties *VpcConnectionProperties `type:"structure"` } // String returns the string representation -func (s CreateIngestionOutput) String() string { +func (s DataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateIngestionOutput) GoString() string { +func (s DataSource) GoString() string { return s.String() } +// SetAlternateDataSourceParameters sets the AlternateDataSourceParameters field's value. +func (s *DataSource) SetAlternateDataSourceParameters(v []*DataSourceParameters) *DataSource { + s.AlternateDataSourceParameters = v + return s +} + // SetArn sets the Arn field's value. -func (s *CreateIngestionOutput) SetArn(v string) *CreateIngestionOutput { +func (s *DataSource) SetArn(v string) *DataSource { s.Arn = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *CreateIngestionOutput) SetIngestionId(v string) *CreateIngestionOutput { - s.IngestionId = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *DataSource) SetCreatedTime(v time.Time) *DataSource { + s.CreatedTime = &v return s } -// SetIngestionStatus sets the IngestionStatus field's value. -func (s *CreateIngestionOutput) SetIngestionStatus(v string) *CreateIngestionOutput { - s.IngestionStatus = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *DataSource) SetDataSourceId(v string) *DataSource { + s.DataSourceId = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateIngestionOutput) SetRequestId(v string) *CreateIngestionOutput { - s.RequestId = &v +// SetDataSourceParameters sets the DataSourceParameters field's value. +func (s *DataSource) SetDataSourceParameters(v *DataSourceParameters) *DataSource { + s.DataSourceParameters = v return s } -// SetStatus sets the Status field's value. -func (s *CreateIngestionOutput) SetStatus(v int64) *CreateIngestionOutput { - s.Status = &v +// SetErrorInfo sets the ErrorInfo field's value. +func (s *DataSource) SetErrorInfo(v *DataSourceErrorInfo) *DataSource { + s.ErrorInfo = v return s } -type CreateTemplateAliasInput struct { - _ struct{} `type:"structure"` - - // The name that you want to give to the template alias that you're creating. - // Don't start the alias name with the $ character. Alias names that start with - // $ are reserved by QuickSight. - // - // AliasName is a required field - AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *DataSource) SetLastUpdatedTime(v time.Time) *DataSource { + s.LastUpdatedTime = &v + return s +} - // The ID of the AWS account that contains the template that you creating an - // alias for. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` +// SetName sets the Name field's value. +func (s *DataSource) SetName(v string) *DataSource { + s.Name = &v + return s +} - // An ID for the template. - // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` +// SetSslProperties sets the SslProperties field's value. +func (s *DataSource) SetSslProperties(v *SslProperties) *DataSource { + s.SslProperties = v + return s +} - // The version number of the template. - // - // TemplateVersionNumber is a required field - TemplateVersionNumber *int64 `min:"1" type:"long" required:"true"` +// SetStatus sets the Status field's value. +func (s *DataSource) SetStatus(v string) *DataSource { + s.Status = &v + return s } -// String returns the string representation -func (s CreateTemplateAliasInput) String() string { - return awsutil.Prettify(s) +// SetType sets the Type field's value. +func (s *DataSource) SetType(v string) *DataSource { + s.Type = &v + return s } -// GoString returns the string representation -func (s CreateTemplateAliasInput) GoString() string { - return s.String() +// SetVpcConnectionProperties sets the VpcConnectionProperties field's value. +func (s *DataSource) SetVpcConnectionProperties(v *VpcConnectionProperties) *DataSource { + s.VpcConnectionProperties = v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateTemplateAliasInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateTemplateAliasInput"} - if s.AliasName == nil { - invalidParams.Add(request.NewErrParamRequired("AliasName")) - } - if s.AliasName != nil && len(*s.AliasName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) - } - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) - } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) - } - if s.TemplateVersionNumber == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateVersionNumber")) - } - if s.TemplateVersionNumber != nil && *s.TemplateVersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("TemplateVersionNumber", 1)) +// Data source credentials. This is a variant type structure. For this structure +// to be valid, only one of the attributes can be non-null. +type DataSourceCredentials struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The Amazon Resource Name (ARN) of a data source that has the credential pair + // that you want to use. When CopySourceArn is not null, the credential pair + // from the data source in the ARN is used as the credentials for the DataSourceCredentials + // structure. + CopySourceArn *string `type:"string"` + + // Credential pair. For more information, see CredentialPair. + CredentialPair *CredentialPair `type:"structure"` +} + +// String returns the string representation +func (s DataSourceCredentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataSourceCredentials) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSourceCredentials) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceCredentials"} + if s.CredentialPair != nil { + if err := s.CredentialPair.Validate(); err != nil { + invalidParams.AddNested("CredentialPair", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -9654,181 +13006,221 @@ func (s *CreateTemplateAliasInput) Validate() error { return nil } -// SetAliasName sets the AliasName field's value. -func (s *CreateTemplateAliasInput) SetAliasName(v string) *CreateTemplateAliasInput { - s.AliasName = &v - return s -} - -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateTemplateAliasInput) SetAwsAccountId(v string) *CreateTemplateAliasInput { - s.AwsAccountId = &v - return s -} - -// SetTemplateId sets the TemplateId field's value. -func (s *CreateTemplateAliasInput) SetTemplateId(v string) *CreateTemplateAliasInput { - s.TemplateId = &v +// SetCopySourceArn sets the CopySourceArn field's value. +func (s *DataSourceCredentials) SetCopySourceArn(v string) *DataSourceCredentials { + s.CopySourceArn = &v return s } -// SetTemplateVersionNumber sets the TemplateVersionNumber field's value. -func (s *CreateTemplateAliasInput) SetTemplateVersionNumber(v int64) *CreateTemplateAliasInput { - s.TemplateVersionNumber = &v +// SetCredentialPair sets the CredentialPair field's value. +func (s *DataSourceCredentials) SetCredentialPair(v *CredentialPair) *DataSourceCredentials { + s.CredentialPair = v return s } -type CreateTemplateAliasOutput struct { +// Error information for the data source creation or update. +type DataSourceErrorInfo struct { _ struct{} `type:"structure"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Error message. + Message *string `type:"string"` - // Information about the template alias. - TemplateAlias *TemplateAlias `type:"structure"` + // Error type. + Type *string `type:"string" enum:"DataSourceErrorInfoType"` } // String returns the string representation -func (s CreateTemplateAliasOutput) String() string { +func (s DataSourceErrorInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateTemplateAliasOutput) GoString() string { +func (s DataSourceErrorInfo) GoString() string { return s.String() } -// SetRequestId sets the RequestId field's value. -func (s *CreateTemplateAliasOutput) SetRequestId(v string) *CreateTemplateAliasOutput { - s.RequestId = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *CreateTemplateAliasOutput) SetStatus(v int64) *CreateTemplateAliasOutput { - s.Status = &v +// SetMessage sets the Message field's value. +func (s *DataSourceErrorInfo) SetMessage(v string) *DataSourceErrorInfo { + s.Message = &v return s } -// SetTemplateAlias sets the TemplateAlias field's value. -func (s *CreateTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *CreateTemplateAliasOutput { - s.TemplateAlias = v +// SetType sets the Type field's value. +func (s *DataSourceErrorInfo) SetType(v string) *DataSourceErrorInfo { + s.Type = &v return s } -type CreateTemplateInput struct { +// 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. +type DataSourceParameters struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // Amazon Elasticsearch Service parameters. + AmazonElasticsearchParameters *AmazonElasticsearchParameters `type:"structure"` - // A display name for the template. - Name *string `min:"1" type:"string"` + // Amazon Athena parameters. + AthenaParameters *AthenaParameters `type:"structure"` - // A list of resource permissions to be set on the template. - Permissions []*ResourcePermission `min:"1" type:"list"` + // Amazon Aurora MySQL parameters. + AuroraParameters *AuroraParameters `type:"structure"` - // 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 AWS Account and any QuickSight-supported - // AWS 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. - // - // SourceEntity is a required field - SourceEntity *TemplateSourceEntity `type:"structure" required:"true"` + // Aurora PostgreSQL parameters. + AuroraPostgreSqlParameters *AuroraPostgreSqlParameters `type:"structure"` - // Contains a map of the key-value pairs for the resource tag or tags assigned - // to the resource. - Tags []*Tag `min:"1" type:"list"` + // AWS IoT Analytics parameters. + AwsIotAnalyticsParameters *AwsIotAnalyticsParameters `type:"structure"` - // An ID for the template that you want to create. This template is unique per - // AWS Region in each AWS account. - // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // Jira parameters. + JiraParameters *JiraParameters `type:"structure"` - // A description of the current template version being created. This API operation - // creates the first version of the template. Every time UpdateTemplate is called, - // a new version is created. Each version of the template maintains a description - // of the version in the VersionDescription field. - VersionDescription *string `min:"1" type:"string"` + // MariaDB parameters. + MariaDbParameters *MariaDbParameters `type:"structure"` + + // MySQL parameters. + MySqlParameters *MySqlParameters `type:"structure"` + + // PostgreSQL parameters. + PostgreSqlParameters *PostgreSqlParameters `type:"structure"` + + // Presto parameters. + PrestoParameters *PrestoParameters `type:"structure"` + + // Amazon RDS parameters. + RdsParameters *RdsParameters `type:"structure"` + + // Amazon Redshift parameters. + RedshiftParameters *RedshiftParameters `type:"structure"` + + // S3 parameters. + S3Parameters *S3Parameters `type:"structure"` + + // ServiceNow parameters. + ServiceNowParameters *ServiceNowParameters `type:"structure"` + + // Snowflake parameters. + SnowflakeParameters *SnowflakeParameters `type:"structure"` + + // Spark parameters. + SparkParameters *SparkParameters `type:"structure"` + + // SQL Server parameters. + SqlServerParameters *SqlServerParameters `type:"structure"` + + // Teradata parameters. + TeradataParameters *TeradataParameters `type:"structure"` + + // Twitter parameters. + TwitterParameters *TwitterParameters `type:"structure"` } // String returns the string representation -func (s CreateTemplateInput) String() string { +func (s DataSourceParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateTemplateInput) GoString() string { +func (s DataSourceParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateTemplateInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) +func (s *DataSourceParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceParameters"} + if s.AmazonElasticsearchParameters != nil { + if err := s.AmazonElasticsearchParameters.Validate(); err != nil { + invalidParams.AddNested("AmazonElasticsearchParameters", err.(request.ErrInvalidParams)) + } } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + if s.AthenaParameters != nil { + if err := s.AthenaParameters.Validate(); err != nil { + invalidParams.AddNested("AthenaParameters", err.(request.ErrInvalidParams)) + } } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + if s.AuroraParameters != nil { + if err := s.AuroraParameters.Validate(); err != nil { + invalidParams.AddNested("AuroraParameters", err.(request.ErrInvalidParams)) + } } - if s.Permissions != nil && len(s.Permissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Permissions", 1)) + if s.AuroraPostgreSqlParameters != nil { + if err := s.AuroraPostgreSqlParameters.Validate(); err != nil { + invalidParams.AddNested("AuroraPostgreSqlParameters", err.(request.ErrInvalidParams)) + } } - if s.SourceEntity == nil { - invalidParams.Add(request.NewErrParamRequired("SourceEntity")) + if s.AwsIotAnalyticsParameters != nil { + if err := s.AwsIotAnalyticsParameters.Validate(); err != nil { + invalidParams.AddNested("AwsIotAnalyticsParameters", err.(request.ErrInvalidParams)) + } } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + if s.JiraParameters != nil { + if err := s.JiraParameters.Validate(); err != nil { + invalidParams.AddNested("JiraParameters", err.(request.ErrInvalidParams)) + } } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.MariaDbParameters != nil { + if err := s.MariaDbParameters.Validate(); err != nil { + invalidParams.AddNested("MariaDbParameters", err.(request.ErrInvalidParams)) + } + } + if s.MySqlParameters != nil { + if err := s.MySqlParameters.Validate(); err != nil { + invalidParams.AddNested("MySqlParameters", err.(request.ErrInvalidParams)) + } + } + if s.PostgreSqlParameters != nil { + if err := s.PostgreSqlParameters.Validate(); err != nil { + invalidParams.AddNested("PostgreSqlParameters", err.(request.ErrInvalidParams)) + } + } + if s.PrestoParameters != nil { + if err := s.PrestoParameters.Validate(); err != nil { + invalidParams.AddNested("PrestoParameters", err.(request.ErrInvalidParams)) + } + } + if s.RdsParameters != nil { + if err := s.RdsParameters.Validate(); err != nil { + invalidParams.AddNested("RdsParameters", err.(request.ErrInvalidParams)) + } + } + if s.RedshiftParameters != nil { + if err := s.RedshiftParameters.Validate(); err != nil { + invalidParams.AddNested("RedshiftParameters", err.(request.ErrInvalidParams)) + } + } + if s.S3Parameters != nil { + if err := s.S3Parameters.Validate(); err != nil { + invalidParams.AddNested("S3Parameters", err.(request.ErrInvalidParams)) + } + } + if s.ServiceNowParameters != nil { + if err := s.ServiceNowParameters.Validate(); err != nil { + invalidParams.AddNested("ServiceNowParameters", err.(request.ErrInvalidParams)) + } } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.SnowflakeParameters != nil { + if err := s.SnowflakeParameters.Validate(); err != nil { + invalidParams.AddNested("SnowflakeParameters", err.(request.ErrInvalidParams)) + } } - if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + if s.SparkParameters != nil { + if err := s.SparkParameters.Validate(); err != nil { + invalidParams.AddNested("SparkParameters", err.(request.ErrInvalidParams)) + } } - if s.Permissions != nil { - for i, v := range s.Permissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) - } + if s.SqlServerParameters != nil { + if err := s.SqlServerParameters.Validate(); err != nil { + invalidParams.AddNested("SqlServerParameters", err.(request.ErrInvalidParams)) } } - if s.SourceEntity != nil { - if err := s.SourceEntity.Validate(); err != nil { - invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) + if s.TeradataParameters != nil { + if err := s.TeradataParameters.Validate(); err != nil { + invalidParams.AddNested("TeradataParameters", 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.TwitterParameters != nil { + if err := s.TwitterParameters.Validate(); err != nil { + invalidParams.AddNested("TwitterParameters", err.(request.ErrInvalidParams)) } } @@ -9838,180 +13230,271 @@ func (s *CreateTemplateInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *CreateTemplateInput) SetAwsAccountId(v string) *CreateTemplateInput { - s.AwsAccountId = &v +// SetAmazonElasticsearchParameters sets the AmazonElasticsearchParameters field's value. +func (s *DataSourceParameters) SetAmazonElasticsearchParameters(v *AmazonElasticsearchParameters) *DataSourceParameters { + s.AmazonElasticsearchParameters = v return s } -// SetName sets the Name field's value. -func (s *CreateTemplateInput) SetName(v string) *CreateTemplateInput { - s.Name = &v +// SetAthenaParameters sets the AthenaParameters field's value. +func (s *DataSourceParameters) SetAthenaParameters(v *AthenaParameters) *DataSourceParameters { + s.AthenaParameters = v return s } -// SetPermissions sets the Permissions field's value. -func (s *CreateTemplateInput) SetPermissions(v []*ResourcePermission) *CreateTemplateInput { - s.Permissions = v +// SetAuroraParameters sets the AuroraParameters field's value. +func (s *DataSourceParameters) SetAuroraParameters(v *AuroraParameters) *DataSourceParameters { + s.AuroraParameters = v return s } -// SetSourceEntity sets the SourceEntity field's value. -func (s *CreateTemplateInput) SetSourceEntity(v *TemplateSourceEntity) *CreateTemplateInput { - s.SourceEntity = v +// SetAuroraPostgreSqlParameters sets the AuroraPostgreSqlParameters field's value. +func (s *DataSourceParameters) SetAuroraPostgreSqlParameters(v *AuroraPostgreSqlParameters) *DataSourceParameters { + s.AuroraPostgreSqlParameters = v return s } -// SetTags sets the Tags field's value. -func (s *CreateTemplateInput) SetTags(v []*Tag) *CreateTemplateInput { - s.Tags = v +// SetAwsIotAnalyticsParameters sets the AwsIotAnalyticsParameters field's value. +func (s *DataSourceParameters) SetAwsIotAnalyticsParameters(v *AwsIotAnalyticsParameters) *DataSourceParameters { + s.AwsIotAnalyticsParameters = v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *CreateTemplateInput) SetTemplateId(v string) *CreateTemplateInput { - s.TemplateId = &v +// SetJiraParameters sets the JiraParameters field's value. +func (s *DataSourceParameters) SetJiraParameters(v *JiraParameters) *DataSourceParameters { + s.JiraParameters = v return s } -// SetVersionDescription sets the VersionDescription field's value. -func (s *CreateTemplateInput) SetVersionDescription(v string) *CreateTemplateInput { - s.VersionDescription = &v +// SetMariaDbParameters sets the MariaDbParameters field's value. +func (s *DataSourceParameters) SetMariaDbParameters(v *MariaDbParameters) *DataSourceParameters { + s.MariaDbParameters = v return s } -type CreateTemplateOutput struct { - _ struct{} `type:"structure"` +// SetMySqlParameters sets the MySqlParameters field's value. +func (s *DataSourceParameters) SetMySqlParameters(v *MySqlParameters) *DataSourceParameters { + s.MySqlParameters = v + return s +} - // The ARN for the template. - Arn *string `type:"string"` +// SetPostgreSqlParameters sets the PostgreSqlParameters field's value. +func (s *DataSourceParameters) SetPostgreSqlParameters(v *PostgreSqlParameters) *DataSourceParameters { + s.PostgreSqlParameters = v + return s +} - // The template creation status. - CreationStatus *string `type:"string" enum:"ResourceStatus"` +// SetPrestoParameters sets the PrestoParameters field's value. +func (s *DataSourceParameters) SetPrestoParameters(v *PrestoParameters) *DataSourceParameters { + s.PrestoParameters = v + return s +} - // The AWS request ID for this operation. - RequestId *string `type:"string"` +// SetRdsParameters sets the RdsParameters field's value. +func (s *DataSourceParameters) SetRdsParameters(v *RdsParameters) *DataSourceParameters { + s.RdsParameters = v + return s +} - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` +// SetRedshiftParameters sets the RedshiftParameters field's value. +func (s *DataSourceParameters) SetRedshiftParameters(v *RedshiftParameters) *DataSourceParameters { + s.RedshiftParameters = v + return s +} - // The ID of the template. - TemplateId *string `min:"1" type:"string"` +// SetS3Parameters sets the S3Parameters field's value. +func (s *DataSourceParameters) SetS3Parameters(v *S3Parameters) *DataSourceParameters { + s.S3Parameters = v + return s +} - // The ARN for the template, including the version information of the first - // version. - VersionArn *string `type:"string"` +// SetServiceNowParameters sets the ServiceNowParameters field's value. +func (s *DataSourceParameters) SetServiceNowParameters(v *ServiceNowParameters) *DataSourceParameters { + s.ServiceNowParameters = v + return s +} + +// SetSnowflakeParameters sets the SnowflakeParameters field's value. +func (s *DataSourceParameters) SetSnowflakeParameters(v *SnowflakeParameters) *DataSourceParameters { + s.SnowflakeParameters = v + return s +} + +// SetSparkParameters sets the SparkParameters field's value. +func (s *DataSourceParameters) SetSparkParameters(v *SparkParameters) *DataSourceParameters { + s.SparkParameters = v + return s +} + +// SetSqlServerParameters sets the SqlServerParameters field's value. +func (s *DataSourceParameters) SetSqlServerParameters(v *SqlServerParameters) *DataSourceParameters { + s.SqlServerParameters = v + return s +} + +// SetTeradataParameters sets the TeradataParameters field's value. +func (s *DataSourceParameters) SetTeradataParameters(v *TeradataParameters) *DataSourceParameters { + s.TeradataParameters = v + return s +} + +// SetTwitterParameters sets the TwitterParameters field's value. +func (s *DataSourceParameters) SetTwitterParameters(v *TwitterParameters) *DataSourceParameters { + s.TwitterParameters = v + return s +} + +// Date time parameter. +type DateTimeParameter struct { + _ struct{} `type:"structure"` + + // A display name for the dataset. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Values. + // + // Values is a required field + Values []*time.Time `type:"list" required:"true"` } // String returns the string representation -func (s CreateTemplateOutput) String() string { +func (s DateTimeParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateTemplateOutput) GoString() string { +func (s DateTimeParameter) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *CreateTemplateOutput) SetArn(v string) *CreateTemplateOutput { - s.Arn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DateTimeParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DateTimeParameter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCreationStatus sets the CreationStatus field's value. -func (s *CreateTemplateOutput) SetCreationStatus(v string) *CreateTemplateOutput { - s.CreationStatus = &v +// SetName sets the Name field's value. +func (s *DateTimeParameter) SetName(v string) *DateTimeParameter { + s.Name = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *CreateTemplateOutput) SetRequestId(v string) *CreateTemplateOutput { - s.RequestId = &v +// SetValues sets the Values field's value. +func (s *DateTimeParameter) SetValues(v []*time.Time) *DateTimeParameter { + s.Values = v return s } -// SetStatus sets the Status field's value. -func (s *CreateTemplateOutput) SetStatus(v int64) *CreateTemplateOutput { - s.Status = &v - return s +// Decimal parameter. +type DecimalParameter struct { + _ struct{} `type:"structure"` + + // A display name for the dataset. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Values. + // + // Values is a required field + Values []*float64 `type:"list" required:"true"` } -// SetTemplateId sets the TemplateId field's value. -func (s *CreateTemplateOutput) SetTemplateId(v string) *CreateTemplateOutput { - s.TemplateId = &v +// String returns the string representation +func (s DecimalParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DecimalParameter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DecimalParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DecimalParameter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DecimalParameter) SetName(v string) *DecimalParameter { + s.Name = &v return s } -// SetVersionArn sets the VersionArn field's value. -func (s *CreateTemplateOutput) SetVersionArn(v string) *CreateTemplateOutput { - s.VersionArn = &v +// SetValues sets the Values field's value. +func (s *DecimalParameter) SetValues(v []*float64) *DecimalParameter { + s.Values = v return s } -// The combination of user name and password that are used as credentials. -type CredentialPair struct { +type DeleteDashboardInput struct { _ struct{} `type:"structure"` - // A set of alternate data source parameters that you want to share for these - // credentials. The credentials are applied in tandem with the data source parameters - // when you copy a data source by using a create or update request. The API - // compares the DataSourceParameters structure that's in the request with the - // structures in the AlternateDataSourceParameters allowlist. If the structures - // are an exact match, the request is allowed to use the new data source with - // the existing credentials. If the AlternateDataSourceParameters list is null, - // the DataSourceParameters originally used with these Credentials is automatically - // allowed. - AlternateDataSourceParameters []*DataSourceParameters `min:"1" type:"list"` - - // Password. + // The ID of the AWS account that contains the dashboard that you're deleting. // - // Password is a required field - Password *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // User name. + // The ID for the dashboard. // - // Username is a required field - Username *string `min:"1" type:"string" required:"true"` + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + + // The version number of the dashboard. If the version number property is provided, + // only the specified version of the dashboard is deleted. + VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } // String returns the string representation -func (s CredentialPair) String() string { +func (s DeleteDashboardInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CredentialPair) GoString() string { +func (s DeleteDashboardInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CredentialPair) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CredentialPair"} - if s.AlternateDataSourceParameters != nil && len(s.AlternateDataSourceParameters) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AlternateDataSourceParameters", 1)) - } - if s.Password == nil { - invalidParams.Add(request.NewErrParamRequired("Password")) +func (s *DeleteDashboardInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDashboardInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.Password != nil && len(*s.Password) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Password", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Username == nil { - invalidParams.Add(request.NewErrParamRequired("Username")) + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) } - if s.Username != nil && len(*s.Username) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Username", 1)) + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) } - if s.AlternateDataSourceParameters != nil { - for i, v := range s.AlternateDataSourceParameters { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AlternateDataSourceParameters", i), err.(request.ErrInvalidParams)) - } - } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -10020,87 +13503,113 @@ func (s *CredentialPair) Validate() error { return nil } -// SetAlternateDataSourceParameters sets the AlternateDataSourceParameters field's value. -func (s *CredentialPair) SetAlternateDataSourceParameters(v []*DataSourceParameters) *CredentialPair { - s.AlternateDataSourceParameters = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteDashboardInput) SetAwsAccountId(v string) *DeleteDashboardInput { + s.AwsAccountId = &v return s } -// SetPassword sets the Password field's value. -func (s *CredentialPair) SetPassword(v string) *CredentialPair { - s.Password = &v +// SetDashboardId sets the DashboardId field's value. +func (s *DeleteDashboardInput) SetDashboardId(v string) *DeleteDashboardInput { + s.DashboardId = &v return s } -// SetUsername sets the Username field's value. -func (s *CredentialPair) SetUsername(v string) *CredentialPair { - s.Username = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *DeleteDashboardInput) SetVersionNumber(v int64) *DeleteDashboardInput { + s.VersionNumber = &v return s } -// A physical table type built from the results of the custom SQL query. -type CustomSql struct { +type DeleteDashboardOutput struct { _ struct{} `type:"structure"` - // The column schema from the SQL query result set. - Columns []*InputColumn `min:"1" type:"list"` + // The Secure Socket Layer (SSL) properties that apply for the resource. + Arn *string `type:"string"` - // The Amazon Resource Name (ARN) of the data source. - // - // DataSourceArn is a required field - DataSourceArn *string `type:"string" required:"true"` + // The ID of the dashboard. + DashboardId *string `min:"1" type:"string"` - // A display name for the SQL query result. + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s DeleteDashboardOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteDashboardOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteDashboardOutput) SetArn(v string) *DeleteDashboardOutput { + s.Arn = &v + return s +} + +// SetDashboardId sets the DashboardId field's value. +func (s *DeleteDashboardOutput) SetDashboardId(v string) *DeleteDashboardOutput { + s.DashboardId = &v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *DeleteDashboardOutput) SetRequestId(v string) *DeleteDashboardOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteDashboardOutput) SetStatus(v int64) *DeleteDashboardOutput { + s.Status = &v + return s +} + +type DeleteDataSetInput struct { + _ struct{} `type:"structure"` + + // The AWS account ID. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The SQL query. + // The ID for the dataset that you want to create. This ID is unique per AWS + // Region for each AWS account. // - // SqlQuery is a required field - SqlQuery *string `min:"1" type:"string" required:"true"` + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` } // String returns the string representation -func (s CustomSql) String() string { +func (s DeleteDataSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CustomSql) GoString() string { +func (s DeleteDataSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CustomSql) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CustomSql"} - if s.Columns != nil && len(s.Columns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) - } - if s.DataSourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceArn")) - } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) +func (s *DeleteDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDataSetInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.SqlQuery == nil { - invalidParams.Add(request.NewErrParamRequired("SqlQuery")) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.SqlQuery != nil && len(*s.SqlQuery) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SqlQuery", 1)) + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) } - if s.Columns != nil { - for i, v := range s.Columns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Columns", i), err.(request.ErrInvalidParams)) - } - } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) } if invalidParams.Len() > 0 { @@ -10109,217 +13618,229 @@ func (s *CustomSql) Validate() error { return nil } -// SetColumns sets the Columns field's value. -func (s *CustomSql) SetColumns(v []*InputColumn) *CustomSql { - s.Columns = v - return s -} - -// SetDataSourceArn sets the DataSourceArn field's value. -func (s *CustomSql) SetDataSourceArn(v string) *CustomSql { - s.DataSourceArn = &v - return s -} - -// SetName sets the Name field's value. -func (s *CustomSql) SetName(v string) *CustomSql { - s.Name = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteDataSetInput) SetAwsAccountId(v string) *DeleteDataSetInput { + s.AwsAccountId = &v return s } -// SetSqlQuery sets the SqlQuery field's value. -func (s *CustomSql) SetSqlQuery(v string) *CustomSql { - s.SqlQuery = &v +// SetDataSetId sets the DataSetId field's value. +func (s *DeleteDataSetInput) SetDataSetId(v string) *DeleteDataSetInput { + s.DataSetId = &v return s } -// Dashboard. -type Dashboard struct { +type DeleteDataSetOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. + // The Amazon Resource Name (ARN) of the dataset. Arn *string `type:"string"` - // The time that this dataset was created. - CreatedTime *time.Time `type:"timestamp"` - - // Dashboard ID. - DashboardId *string `min:"1" type:"string"` - - // The last time that this dataset was published. - LastPublishedTime *time.Time `type:"timestamp"` - - // The last time that this dataset was updated. - LastUpdatedTime *time.Time `type:"timestamp"` + // The ID for the dataset that you want to create. This ID is unique per AWS + // Region for each AWS account. + DataSetId *string `type:"string"` - // A display name for the dashboard. - Name *string `min:"1" type:"string"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Version. - Version *DashboardVersion `type:"structure"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s Dashboard) String() string { +func (s DeleteDataSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Dashboard) GoString() string { +func (s DeleteDataSetOutput) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *Dashboard) SetArn(v string) *Dashboard { +func (s *DeleteDataSetOutput) SetArn(v string) *DeleteDataSetOutput { s.Arn = &v return s } -// SetCreatedTime sets the CreatedTime field's value. -func (s *Dashboard) SetCreatedTime(v time.Time) *Dashboard { - s.CreatedTime = &v - return s -} - -// SetDashboardId sets the DashboardId field's value. -func (s *Dashboard) SetDashboardId(v string) *Dashboard { - s.DashboardId = &v - return s -} - -// SetLastPublishedTime sets the LastPublishedTime field's value. -func (s *Dashboard) SetLastPublishedTime(v time.Time) *Dashboard { - s.LastPublishedTime = &v - return s -} - -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *Dashboard) SetLastUpdatedTime(v time.Time) *Dashboard { - s.LastUpdatedTime = &v +// SetDataSetId sets the DataSetId field's value. +func (s *DeleteDataSetOutput) SetDataSetId(v string) *DeleteDataSetOutput { + s.DataSetId = &v return s } -// SetName sets the Name field's value. -func (s *Dashboard) SetName(v string) *Dashboard { - s.Name = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteDataSetOutput) SetRequestId(v string) *DeleteDataSetOutput { + s.RequestId = &v return s } -// SetVersion sets the Version field's value. -func (s *Dashboard) SetVersion(v *DashboardVersion) *Dashboard { - s.Version = v +// SetStatus sets the Status field's value. +func (s *DeleteDataSetOutput) SetStatus(v int64) *DeleteDataSetOutput { + s.Status = &v return s } -// Dashboard error. -type DashboardError struct { +type DeleteDataSourceInput struct { _ struct{} `type:"structure"` - // Message. - Message *string `type:"string"` + // The AWS account ID. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Type. - Type *string `type:"string" enum:"DashboardErrorType"` + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + // + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` } // String returns the string representation -func (s DashboardError) String() string { +func (s DeleteDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardError) GoString() string { +func (s DeleteDataSourceInput) GoString() string { return s.String() } -// SetMessage sets the Message field's value. -func (s *DashboardError) SetMessage(v string) *DashboardError { - s.Message = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteDataSourceInput) SetAwsAccountId(v string) *DeleteDataSourceInput { + s.AwsAccountId = &v return s } -// SetType sets the Type field's value. -func (s *DashboardError) SetType(v string) *DashboardError { - s.Type = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *DeleteDataSourceInput) SetDataSourceId(v string) *DeleteDataSourceInput { + s.DataSourceId = &v return s } -// Dashboard publish options. -type DashboardPublishOptions struct { +type DeleteDataSourceOutput struct { _ struct{} `type:"structure"` - // Ad hoc (one-time) filtering option. - AdHocFilteringOption *AdHocFilteringOption `type:"structure"` + // The Amazon Resource Name (ARN) of the data source that you deleted. + Arn *string `type:"string"` - // Export to .csv option. - ExportToCSVOption *ExportToCSVOption `type:"structure"` + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + DataSourceId *string `type:"string"` - // Sheet controls option. - SheetControlsOption *SheetControlsOption `type:"structure"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s DashboardPublishOptions) String() string { +func (s DeleteDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardPublishOptions) GoString() string { +func (s DeleteDataSourceOutput) GoString() string { return s.String() } -// SetAdHocFilteringOption sets the AdHocFilteringOption field's value. -func (s *DashboardPublishOptions) SetAdHocFilteringOption(v *AdHocFilteringOption) *DashboardPublishOptions { - s.AdHocFilteringOption = v +// SetArn sets the Arn field's value. +func (s *DeleteDataSourceOutput) SetArn(v string) *DeleteDataSourceOutput { + s.Arn = &v return s } -// SetExportToCSVOption sets the ExportToCSVOption field's value. -func (s *DashboardPublishOptions) SetExportToCSVOption(v *ExportToCSVOption) *DashboardPublishOptions { - s.ExportToCSVOption = v +// SetDataSourceId sets the DataSourceId field's value. +func (s *DeleteDataSourceOutput) SetDataSourceId(v string) *DeleteDataSourceOutput { + s.DataSourceId = &v return s } -// SetSheetControlsOption sets the SheetControlsOption field's value. -func (s *DashboardPublishOptions) SetSheetControlsOption(v *SheetControlsOption) *DashboardPublishOptions { - s.SheetControlsOption = v +// SetRequestId sets the RequestId field's value. +func (s *DeleteDataSourceOutput) SetRequestId(v string) *DeleteDataSourceOutput { + s.RequestId = &v return s } -// A filter that you apply when searching for dashboards. -type DashboardSearchFilter struct { +// SetStatus sets the Status field's value. +func (s *DeleteDataSourceOutput) SetStatus(v int64) *DeleteDataSourceOutput { + s.Status = &v + return s +} + +type DeleteGroupInput struct { _ struct{} `type:"structure"` - // The name of the value that you want to use as a filter, for example, "Name": - // "QUICKSIGHT_USER". - Name *string `type:"string" enum:"DashboardFilterAttribute"` + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS 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 comparison operator that you want to use as a filter, for example, "Operator": - // "StringEquals". + // The name of the group that you want to delete. // - // Operator is a required field - Operator *string `type:"string" required:"true" enum:"FilterOperator"` + // GroupName is a required field + GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` - // The value of the named item, in this case QUICKSIGHT_USER, that you want - // to use as a filter, for example, "Value": "arn:aws:quicksight:us-east-1:1:user/default/UserName1". - Value *string `type:"string"` + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` } // String returns the string representation -func (s DashboardSearchFilter) String() string { +func (s DeleteGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardSearchFilter) GoString() string { +func (s DeleteGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DashboardSearchFilter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DashboardSearchFilter"} - if s.Operator == nil { - invalidParams.Add(request.NewErrParamRequired("Operator")) +func (s *DeleteGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGroupInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if invalidParams.Len() > 0 { @@ -10328,109 +13849,85 @@ func (s *DashboardSearchFilter) Validate() error { return nil } -// SetName sets the Name field's value. -func (s *DashboardSearchFilter) SetName(v string) *DashboardSearchFilter { - s.Name = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteGroupInput) SetAwsAccountId(v string) *DeleteGroupInput { + s.AwsAccountId = &v return s } -// SetOperator sets the Operator field's value. -func (s *DashboardSearchFilter) SetOperator(v string) *DashboardSearchFilter { - s.Operator = &v +// SetGroupName sets the GroupName field's value. +func (s *DeleteGroupInput) SetGroupName(v string) *DeleteGroupInput { + s.GroupName = &v return s } -// SetValue sets the Value field's value. -func (s *DashboardSearchFilter) SetValue(v string) *DashboardSearchFilter { - s.Value = &v +// SetNamespace sets the Namespace field's value. +func (s *DeleteGroupInput) SetNamespace(v string) *DeleteGroupInput { + s.Namespace = &v return s } -// Dashboard source entity. -type DashboardSourceEntity struct { +type DeleteGroupMembershipInput struct { _ struct{} `type:"structure"` - // Source template. - SourceTemplate *DashboardSourceTemplate `type:"structure"` -} - -// String returns the string representation -func (s DashboardSourceEntity) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DashboardSourceEntity) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DashboardSourceEntity) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DashboardSourceEntity"} - if s.SourceTemplate != nil { - if err := s.SourceTemplate.Validate(); err != nil { - invalidParams.AddNested("SourceTemplate", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetSourceTemplate sets the SourceTemplate field's value. -func (s *DashboardSourceEntity) SetSourceTemplate(v *DashboardSourceTemplate) *DashboardSourceEntity { - s.SourceTemplate = v - return s -} + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` -// Dashboard source template. -type DashboardSourceTemplate struct { - _ struct{} `type:"structure"` + // The name of the group that you want to delete the user from. + // + // GroupName is a required field + GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` - // The Amazon Resource Name (ARN) of the resource. + // The name of the user that you want to delete from the group membership. // - // Arn is a required field - Arn *string `type:"string" required:"true"` + // MemberName is a required field + MemberName *string `location:"uri" locationName:"MemberName" min:"1" type:"string" required:"true"` - // Dataset references. + // The namespace. Currently, you should set this to default. // - // DataSetReferences is a required field - DataSetReferences []*DataSetReference `min:"1" type:"list" required:"true"` + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` } // String returns the string representation -func (s DashboardSourceTemplate) String() string { +func (s DeleteGroupMembershipInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardSourceTemplate) GoString() string { +func (s DeleteGroupMembershipInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DashboardSourceTemplate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DashboardSourceTemplate"} - if s.Arn == nil { - invalidParams.Add(request.NewErrParamRequired("Arn")) +func (s *DeleteGroupMembershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGroupMembershipInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.DataSetReferences == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetReferences")) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSetReferences != nil && len(s.DataSetReferences) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetReferences", 1)) + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) } - if s.DataSetReferences != nil { - for i, v := range s.DataSetReferences { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSetReferences", i), err.(request.ErrInvalidParams)) - } - } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.MemberName == nil { + invalidParams.Add(request.NewErrParamRequired("MemberName")) + } + if s.MemberName != nil && len(*s.MemberName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MemberName", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if invalidParams.Len() > 0 { @@ -10439,455 +13936,517 @@ func (s *DashboardSourceTemplate) Validate() error { return nil } -// SetArn sets the Arn field's value. -func (s *DashboardSourceTemplate) SetArn(v string) *DashboardSourceTemplate { - s.Arn = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteGroupMembershipInput) SetAwsAccountId(v string) *DeleteGroupMembershipInput { + s.AwsAccountId = &v return s } -// SetDataSetReferences sets the DataSetReferences field's value. -func (s *DashboardSourceTemplate) SetDataSetReferences(v []*DataSetReference) *DashboardSourceTemplate { - s.DataSetReferences = v +// SetGroupName sets the GroupName field's value. +func (s *DeleteGroupMembershipInput) SetGroupName(v string) *DeleteGroupMembershipInput { + s.GroupName = &v return s } -// Dashboard summary. -type DashboardSummary struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the resource. - Arn *string `type:"string"` - - // The time that this dashboard was created. - CreatedTime *time.Time `type:"timestamp"` - - // Dashboard ID. - DashboardId *string `min:"1" type:"string"` +// SetMemberName sets the MemberName field's value. +func (s *DeleteGroupMembershipInput) SetMemberName(v string) *DeleteGroupMembershipInput { + s.MemberName = &v + return s +} - // The last time that this dashboard was published. - LastPublishedTime *time.Time `type:"timestamp"` +// SetNamespace sets the Namespace field's value. +func (s *DeleteGroupMembershipInput) SetNamespace(v string) *DeleteGroupMembershipInput { + s.Namespace = &v + return s +} - // The last time that this dashboard was updated. - LastUpdatedTime *time.Time `type:"timestamp"` +type DeleteGroupMembershipOutput struct { + _ struct{} `type:"structure"` - // A display name for the dashboard. - Name *string `min:"1" type:"string"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Published version number. - PublishedVersionNumber *int64 `min:"1" type:"long"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s DashboardSummary) String() string { +func (s DeleteGroupMembershipOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardSummary) GoString() string { +func (s DeleteGroupMembershipOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DashboardSummary) SetArn(v string) *DashboardSummary { - s.Arn = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteGroupMembershipOutput) SetRequestId(v string) *DeleteGroupMembershipOutput { + s.RequestId = &v return s } -// SetCreatedTime sets the CreatedTime field's value. -func (s *DashboardSummary) SetCreatedTime(v time.Time) *DashboardSummary { - s.CreatedTime = &v +// SetStatus sets the Status field's value. +func (s *DeleteGroupMembershipOutput) SetStatus(v int64) *DeleteGroupMembershipOutput { + s.Status = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *DashboardSummary) SetDashboardId(v string) *DashboardSummary { - s.DashboardId = &v - return s +type DeleteGroupOutput struct { + _ struct{} `type:"structure"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } -// SetLastPublishedTime sets the LastPublishedTime field's value. -func (s *DashboardSummary) SetLastPublishedTime(v time.Time) *DashboardSummary { - s.LastPublishedTime = &v - return s +// String returns the string representation +func (s DeleteGroupOutput) String() string { + return awsutil.Prettify(s) } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *DashboardSummary) SetLastUpdatedTime(v time.Time) *DashboardSummary { - s.LastUpdatedTime = &v - return s +// GoString returns the string representation +func (s DeleteGroupOutput) GoString() string { + return s.String() } -// SetName sets the Name field's value. -func (s *DashboardSummary) SetName(v string) *DashboardSummary { - s.Name = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteGroupOutput) SetRequestId(v string) *DeleteGroupOutput { + s.RequestId = &v return s } -// SetPublishedVersionNumber sets the PublishedVersionNumber field's value. -func (s *DashboardSummary) SetPublishedVersionNumber(v int64) *DashboardSummary { - s.PublishedVersionNumber = &v +// SetStatus sets the Status field's value. +func (s *DeleteGroupOutput) SetStatus(v int64) *DeleteGroupOutput { + s.Status = &v return s } -// Dashboard version. -type DashboardVersion struct { +type DeleteIAMPolicyAssignmentInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. - Arn *string `type:"string"` - - // The time that this dashboard version was created. - CreatedTime *time.Time `type:"timestamp"` - - // The Amazon Resource Numbers (ARNs) for the datasets that are associated with - // a version of the dashboard. - DataSetArns []*string `type:"list"` - - // Description. - Description *string `min:"1" type:"string"` - - // Errors. - Errors []*DashboardError `min:"1" type:"list"` - - // Source entity ARN. - SourceEntityArn *string `type:"string"` + // The name of the assignment. + // + // AssignmentName is a required field + AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` - // The HTTP status of the request. - Status *string `type:"string" enum:"ResourceStatus"` + // The AWS account ID where you want to delete the IAM policy assignment. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Version number. - VersionNumber *int64 `min:"1" type:"long"` + // The namespace that contains the assignment. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` } // String returns the string representation -func (s DashboardVersion) String() string { +func (s DeleteIAMPolicyAssignmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardVersion) GoString() string { +func (s DeleteIAMPolicyAssignmentInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DashboardVersion) SetArn(v string) *DashboardVersion { - s.Arn = &v - return s -} - -// SetCreatedTime sets the CreatedTime field's value. -func (s *DashboardVersion) SetCreatedTime(v time.Time) *DashboardVersion { - s.CreatedTime = &v - return s -} - -// SetDataSetArns sets the DataSetArns field's value. -func (s *DashboardVersion) SetDataSetArns(v []*string) *DashboardVersion { - s.DataSetArns = v - return s -} - -// SetDescription sets the Description field's value. -func (s *DashboardVersion) SetDescription(v string) *DashboardVersion { - s.Description = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteIAMPolicyAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteIAMPolicyAssignmentInput"} + if s.AssignmentName == nil { + invalidParams.Add(request.NewErrParamRequired("AssignmentName")) + } + if s.AssignmentName != nil && len(*s.AssignmentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssignmentName", 1)) + } + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } -// SetErrors sets the Errors field's value. -func (s *DashboardVersion) SetErrors(v []*DashboardError) *DashboardVersion { - s.Errors = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetSourceEntityArn sets the SourceEntityArn field's value. -func (s *DashboardVersion) SetSourceEntityArn(v string) *DashboardVersion { - s.SourceEntityArn = &v +// SetAssignmentName sets the AssignmentName field's value. +func (s *DeleteIAMPolicyAssignmentInput) SetAssignmentName(v string) *DeleteIAMPolicyAssignmentInput { + s.AssignmentName = &v return s } -// SetStatus sets the Status field's value. -func (s *DashboardVersion) SetStatus(v string) *DashboardVersion { - s.Status = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteIAMPolicyAssignmentInput) SetAwsAccountId(v string) *DeleteIAMPolicyAssignmentInput { + s.AwsAccountId = &v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *DashboardVersion) SetVersionNumber(v int64) *DashboardVersion { - s.VersionNumber = &v +// SetNamespace sets the Namespace field's value. +func (s *DeleteIAMPolicyAssignmentInput) SetNamespace(v string) *DeleteIAMPolicyAssignmentInput { + s.Namespace = &v return s } -// Dashboard version summary. -type DashboardVersionSummary struct { +type DeleteIAMPolicyAssignmentOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. - Arn *string `type:"string"` - - // The time that this dashboard version was created. - CreatedTime *time.Time `type:"timestamp"` - - // Description. - Description *string `min:"1" type:"string"` + // The name of the assignment. + AssignmentName *string `min:"1" type:"string"` - // Source entity ARN. - SourceEntityArn *string `type:"string"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` // The HTTP status of the request. - Status *string `type:"string" enum:"ResourceStatus"` - - // Version number. - VersionNumber *int64 `min:"1" type:"long"` + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s DashboardVersionSummary) String() string { +func (s DeleteIAMPolicyAssignmentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DashboardVersionSummary) GoString() string { +func (s DeleteIAMPolicyAssignmentOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DashboardVersionSummary) SetArn(v string) *DashboardVersionSummary { - s.Arn = &v - return s -} - -// SetCreatedTime sets the CreatedTime field's value. -func (s *DashboardVersionSummary) SetCreatedTime(v time.Time) *DashboardVersionSummary { - s.CreatedTime = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *DashboardVersionSummary) SetDescription(v string) *DashboardVersionSummary { - s.Description = &v +// SetAssignmentName sets the AssignmentName field's value. +func (s *DeleteIAMPolicyAssignmentOutput) SetAssignmentName(v string) *DeleteIAMPolicyAssignmentOutput { + s.AssignmentName = &v return s } -// SetSourceEntityArn sets the SourceEntityArn field's value. -func (s *DashboardVersionSummary) SetSourceEntityArn(v string) *DashboardVersionSummary { - s.SourceEntityArn = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteIAMPolicyAssignmentOutput) SetRequestId(v string) *DeleteIAMPolicyAssignmentOutput { + s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DashboardVersionSummary) SetStatus(v string) *DashboardVersionSummary { +func (s *DeleteIAMPolicyAssignmentOutput) SetStatus(v int64) *DeleteIAMPolicyAssignmentOutput { s.Status = &v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *DashboardVersionSummary) SetVersionNumber(v int64) *DashboardVersionSummary { - s.VersionNumber = &v - return s +type DeleteTemplateAliasInput struct { + _ struct{} `type:"structure"` + + // The name for the template alias. To delete a specific alias, you delete the + // version that the alias points to. You can specify the alias name, or specify + // the latest version of the template by providing the keyword $LATEST in the + // AliasName parameter. + // + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` + + // The ID of the AWS account that contains the item to delete. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The ID for the template that the specified alias is for. + // + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` } -// Dataset. -type DataSet struct { - _ struct{} `type:"structure"` +// String returns the string representation +func (s DeleteTemplateAliasInput) String() string { + return awsutil.Prettify(s) +} - // The Amazon Resource Name (ARN) of the resource. - Arn *string `type:"string"` +// GoString returns the string representation +func (s DeleteTemplateAliasInput) GoString() string { + return s.String() +} - // Groupings of columns that work together in certain Amazon QuickSight features. - // Currently, only geospatial hierarchy is supported. - ColumnGroups []*ColumnGroup `min:"1" type:"list"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTemplateAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) + } + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) + } + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } - // The amount of SPICE capacity used by this dataset. This is 0 if the dataset - // isn't imported into SPICE. - ConsumedSpiceCapacityInBytes *int64 `type:"long"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // The time that this dataset was created. - CreatedTime *time.Time `type:"timestamp"` +// SetAliasName sets the AliasName field's value. +func (s *DeleteTemplateAliasInput) SetAliasName(v string) *DeleteTemplateAliasInput { + s.AliasName = &v + return s +} - // The ID of the dataset. - DataSetId *string `type:"string"` +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteTemplateAliasInput) SetAwsAccountId(v string) *DeleteTemplateAliasInput { + s.AwsAccountId = &v + return s +} - // Indicates whether you want to import the data into SPICE. - ImportMode *string `type:"string" enum:"DataSetImportMode"` +// SetTemplateId sets the TemplateId field's value. +func (s *DeleteTemplateAliasInput) SetTemplateId(v string) *DeleteTemplateAliasInput { + s.TemplateId = &v + return s +} - // The last time that this dataset was updated. - LastUpdatedTime *time.Time `type:"timestamp"` +type DeleteTemplateAliasOutput struct { + _ struct{} `type:"structure"` - // Configures the combination and transformation of the data from the physical - // tables. - LogicalTableMap map[string]*LogicalTable `min:"1" type:"map"` + // The name for the template alias. + AliasName *string `min:"1" type:"string"` - // A display name for the dataset. - Name *string `min:"1" type:"string"` + // The Amazon Resource Name (ARN) of the template you want to delete. + Arn *string `type:"string"` - // The list of columns after all transforms. These columns are available in - // templates, analyses, and dashboards. - OutputColumns []*OutputColumn `type:"list"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Declares the physical tables that are available in the underlying data sources. - PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` - // The row-level security configuration for the dataset. - RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` + // An ID for the template associated with the deletion. + TemplateId *string `min:"1" type:"string"` } // String returns the string representation -func (s DataSet) String() string { +func (s DeleteTemplateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSet) GoString() string { +func (s DeleteTemplateAliasOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DataSet) SetArn(v string) *DataSet { - s.Arn = &v +// SetAliasName sets the AliasName field's value. +func (s *DeleteTemplateAliasOutput) SetAliasName(v string) *DeleteTemplateAliasOutput { + s.AliasName = &v return s } -// SetColumnGroups sets the ColumnGroups field's value. -func (s *DataSet) SetColumnGroups(v []*ColumnGroup) *DataSet { - s.ColumnGroups = v +// SetArn sets the Arn field's value. +func (s *DeleteTemplateAliasOutput) SetArn(v string) *DeleteTemplateAliasOutput { + s.Arn = &v return s } -// SetConsumedSpiceCapacityInBytes sets the ConsumedSpiceCapacityInBytes field's value. -func (s *DataSet) SetConsumedSpiceCapacityInBytes(v int64) *DataSet { - s.ConsumedSpiceCapacityInBytes = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteTemplateAliasOutput) SetRequestId(v string) *DeleteTemplateAliasOutput { + s.RequestId = &v return s } -// SetCreatedTime sets the CreatedTime field's value. -func (s *DataSet) SetCreatedTime(v time.Time) *DataSet { - s.CreatedTime = &v +// SetStatus sets the Status field's value. +func (s *DeleteTemplateAliasOutput) SetStatus(v int64) *DeleteTemplateAliasOutput { + s.Status = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *DataSet) SetDataSetId(v string) *DataSet { - s.DataSetId = &v +// SetTemplateId sets the TemplateId field's value. +func (s *DeleteTemplateAliasOutput) SetTemplateId(v string) *DeleteTemplateAliasOutput { + s.TemplateId = &v return s } -// SetImportMode sets the ImportMode field's value. -func (s *DataSet) SetImportMode(v string) *DataSet { - s.ImportMode = &v - return s +type DeleteTemplateInput struct { + _ struct{} `type:"structure"` + + // The ID of the AWS account that contains the template that you're deleting. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // An ID for the template you want to delete. + // + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + + // Specifies the version of the template that you want to delete. If you don't + // provide a version number, DeleteTemplate deletes all versions of the template. + VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *DataSet) SetLastUpdatedTime(v time.Time) *DataSet { - s.LastUpdatedTime = &v - return s +// String returns the string representation +func (s DeleteTemplateInput) String() string { + return awsutil.Prettify(s) } -// SetLogicalTableMap sets the LogicalTableMap field's value. -func (s *DataSet) SetLogicalTableMap(v map[string]*LogicalTable) *DataSet { - s.LogicalTableMap = v - return s +// GoString returns the string representation +func (s DeleteTemplateInput) GoString() string { + return s.String() } -// SetName sets the Name field's value. -func (s *DataSet) SetName(v string) *DataSet { - s.Name = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) + } + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetOutputColumns sets the OutputColumns field's value. -func (s *DataSet) SetOutputColumns(v []*OutputColumn) *DataSet { - s.OutputColumns = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteTemplateInput) SetAwsAccountId(v string) *DeleteTemplateInput { + s.AwsAccountId = &v return s } -// SetPhysicalTableMap sets the PhysicalTableMap field's value. -func (s *DataSet) SetPhysicalTableMap(v map[string]*PhysicalTable) *DataSet { - s.PhysicalTableMap = v +// SetTemplateId sets the TemplateId field's value. +func (s *DeleteTemplateInput) SetTemplateId(v string) *DeleteTemplateInput { + s.TemplateId = &v return s } -// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. -func (s *DataSet) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *DataSet { - s.RowLevelPermissionDataSet = v +// SetVersionNumber sets the VersionNumber field's value. +func (s *DeleteTemplateInput) SetVersionNumber(v int64) *DeleteTemplateInput { + s.VersionNumber = &v return s } -// Dataset configuration. -type DataSetConfiguration struct { +type DeleteTemplateOutput struct { _ struct{} `type:"structure"` - // A structure containing the list of column group schemas. - ColumnGroupSchemaList []*ColumnGroupSchema `type:"list"` + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` - // Dataset schema. - DataSetSchema *DataSetSchema `type:"structure"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Placeholder. - Placeholder *string `type:"string"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` + + // An ID for the template. + TemplateId *string `min:"1" type:"string"` } // String returns the string representation -func (s DataSetConfiguration) String() string { +func (s DeleteTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSetConfiguration) GoString() string { +func (s DeleteTemplateOutput) GoString() string { return s.String() } -// SetColumnGroupSchemaList sets the ColumnGroupSchemaList field's value. -func (s *DataSetConfiguration) SetColumnGroupSchemaList(v []*ColumnGroupSchema) *DataSetConfiguration { - s.ColumnGroupSchemaList = v +// SetArn sets the Arn field's value. +func (s *DeleteTemplateOutput) SetArn(v string) *DeleteTemplateOutput { + s.Arn = &v return s } -// SetDataSetSchema sets the DataSetSchema field's value. -func (s *DataSetConfiguration) SetDataSetSchema(v *DataSetSchema) *DataSetConfiguration { - s.DataSetSchema = v +// SetRequestId sets the RequestId field's value. +func (s *DeleteTemplateOutput) SetRequestId(v string) *DeleteTemplateOutput { + s.RequestId = &v return s } -// SetPlaceholder sets the Placeholder field's value. -func (s *DataSetConfiguration) SetPlaceholder(v string) *DataSetConfiguration { - s.Placeholder = &v +// SetStatus sets the Status field's value. +func (s *DeleteTemplateOutput) SetStatus(v int64) *DeleteTemplateOutput { + s.Status = &v return s } -// Dataset reference. -type DataSetReference struct { +// SetTemplateId sets the TemplateId field's value. +func (s *DeleteTemplateOutput) SetTemplateId(v string) *DeleteTemplateOutput { + s.TemplateId = &v + return s +} + +type DeleteThemeAliasInput struct { _ struct{} `type:"structure"` - // Dataset Amazon Resource Name (ARN). + // The unique name for the theme alias to delete. // - // DataSetArn is a required field - DataSetArn *string `type:"string" required:"true"` + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // Dataset placeholder. + // The ID of the AWS account that contains the theme alias to delete. // - // DataSetPlaceholder is a required field - DataSetPlaceholder *string `type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The ID for the theme that the specified alias is for. + // + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DataSetReference) String() string { +func (s DeleteThemeAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSetReference) GoString() string { +func (s DeleteThemeAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DataSetReference) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DataSetReference"} - if s.DataSetArn == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetArn")) +func (s *DeleteThemeAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteThemeAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) } - if s.DataSetPlaceholder == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetPlaceholder")) + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) + } + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if invalidParams.Len() > 0 { @@ -10896,290 +14455,256 @@ func (s *DataSetReference) Validate() error { return nil } -// SetDataSetArn sets the DataSetArn field's value. -func (s *DataSetReference) SetDataSetArn(v string) *DataSetReference { - s.DataSetArn = &v +// SetAliasName sets the AliasName field's value. +func (s *DeleteThemeAliasInput) SetAliasName(v string) *DeleteThemeAliasInput { + s.AliasName = &v return s } -// SetDataSetPlaceholder sets the DataSetPlaceholder field's value. -func (s *DataSetReference) SetDataSetPlaceholder(v string) *DataSetReference { - s.DataSetPlaceholder = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteThemeAliasInput) SetAwsAccountId(v string) *DeleteThemeAliasInput { + s.AwsAccountId = &v return s } -// Dataset schema. -type DataSetSchema struct { - _ struct{} `type:"structure"` - - // A structure containing the list of column schemas. - ColumnSchemaList []*ColumnSchema `type:"list"` -} - -// String returns the string representation -func (s DataSetSchema) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DataSetSchema) GoString() string { - return s.String() -} - -// SetColumnSchemaList sets the ColumnSchemaList field's value. -func (s *DataSetSchema) SetColumnSchemaList(v []*ColumnSchema) *DataSetSchema { - s.ColumnSchemaList = v +// SetThemeId sets the ThemeId field's value. +func (s *DeleteThemeAliasInput) SetThemeId(v string) *DeleteThemeAliasInput { + s.ThemeId = &v return s } -// Dataset summary. -type DataSetSummary struct { +type DeleteThemeAliasOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dataset. - Arn *string `type:"string"` - - // The time that this dataset was created. - CreatedTime *time.Time `type:"timestamp"` - - // The ID of the dataset. - DataSetId *string `type:"string"` + // The name for the theme alias. + AliasName *string `min:"1" type:"string"` - // Indicates whether you want to import the data into SPICE. - ImportMode *string `type:"string" enum:"DataSetImportMode"` + // The Amazon Resource Name (ARN) of the theme resource using the deleted alias. + Arn *string `type:"string"` - // The last time that this dataset was updated. - LastUpdatedTime *time.Time `type:"timestamp"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // A display name for the dataset. - Name *string `min:"1" type:"string"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` - // The row-level security configuration for the dataset. - RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` + // An ID for the theme associated with the deletion. + ThemeId *string `min:"1" type:"string"` } // String returns the string representation -func (s DataSetSummary) String() string { +func (s DeleteThemeAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSetSummary) GoString() string { +func (s DeleteThemeAliasOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DataSetSummary) SetArn(v string) *DataSetSummary { - s.Arn = &v - return s -} - -// SetCreatedTime sets the CreatedTime field's value. -func (s *DataSetSummary) SetCreatedTime(v time.Time) *DataSetSummary { - s.CreatedTime = &v - return s -} - -// SetDataSetId sets the DataSetId field's value. -func (s *DataSetSummary) SetDataSetId(v string) *DataSetSummary { - s.DataSetId = &v +// SetAliasName sets the AliasName field's value. +func (s *DeleteThemeAliasOutput) SetAliasName(v string) *DeleteThemeAliasOutput { + s.AliasName = &v return s } -// SetImportMode sets the ImportMode field's value. -func (s *DataSetSummary) SetImportMode(v string) *DataSetSummary { - s.ImportMode = &v +// SetArn sets the Arn field's value. +func (s *DeleteThemeAliasOutput) SetArn(v string) *DeleteThemeAliasOutput { + s.Arn = &v return s } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *DataSetSummary) SetLastUpdatedTime(v time.Time) *DataSetSummary { - s.LastUpdatedTime = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteThemeAliasOutput) SetRequestId(v string) *DeleteThemeAliasOutput { + s.RequestId = &v return s } -// SetName sets the Name field's value. -func (s *DataSetSummary) SetName(v string) *DataSetSummary { - s.Name = &v +// SetStatus sets the Status field's value. +func (s *DeleteThemeAliasOutput) SetStatus(v int64) *DeleteThemeAliasOutput { + s.Status = &v return s } -// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. -func (s *DataSetSummary) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *DataSetSummary { - s.RowLevelPermissionDataSet = v +// SetThemeId sets the ThemeId field's value. +func (s *DeleteThemeAliasOutput) SetThemeId(v string) *DeleteThemeAliasOutput { + s.ThemeId = &v return s } -// The structure of a data source. -type DataSource struct { - _ struct{} `type:"structure"` - - // A set of alternate data source parameters that you want to share for the - // credentials stored with this data source. The credentials are applied in - // tandem with the data source parameters when you copy a data source by using - // a create or update request. The API compares the DataSourceParameters structure - // that's in the request with the structures in the AlternateDataSourceParameters - // allowlist. If the structures are an exact match, the request is allowed to - // use the credentials from this existing data source. If the AlternateDataSourceParameters - // list is null, the Credentials originally used with this DataSourceParameters - // are automatically allowed. - AlternateDataSourceParameters []*DataSourceParameters `min:"1" type:"list"` - - // The Amazon Resource Name (ARN) of the data source. - Arn *string `type:"string"` - - // The time that this data source was created. - CreatedTime *time.Time `type:"timestamp"` - - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - DataSourceId *string `type:"string"` - - // 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. - DataSourceParameters *DataSourceParameters `type:"structure"` - - // Error information from the last update or the creation of the data source. - ErrorInfo *DataSourceErrorInfo `type:"structure"` - - // The last time that this data source was updated. - LastUpdatedTime *time.Time `type:"timestamp"` - - // A display name for the data source. - Name *string `min:"1" type:"string"` - - // Secure Socket Layer (SSL) properties that apply when QuickSight connects - // to your underlying source. - SslProperties *SslProperties `type:"structure"` +type DeleteThemeInput struct { + _ struct{} `type:"structure"` - // The HTTP status of the request. - Status *string `type:"string" enum:"ResourceStatus"` + // The ID of the AWS account that contains the theme that you're deleting. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The type of the data source. This type indicates which database engine the - // data source connects to. - Type *string `type:"string" enum:"DataSourceType"` + // An ID for the theme that you want to delete. + // + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` - // 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. - VpcConnectionProperties *VpcConnectionProperties `type:"structure"` + // The version of the theme that you want to delete. + // + // Note: If you don't provide a version number, you're using this call to DeleteTheme + // to delete all versions of the theme. + VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } // String returns the string representation -func (s DataSource) String() string { +func (s DeleteThemeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSource) GoString() string { +func (s DeleteThemeInput) GoString() string { return s.String() } -// SetAlternateDataSourceParameters sets the AlternateDataSourceParameters field's value. -func (s *DataSource) SetAlternateDataSourceParameters(v []*DataSourceParameters) *DataSource { - s.AlternateDataSourceParameters = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteThemeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteThemeInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) + } + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) + } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetArn sets the Arn field's value. -func (s *DataSource) SetArn(v string) *DataSource { - s.Arn = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteThemeInput) SetAwsAccountId(v string) *DeleteThemeInput { + s.AwsAccountId = &v return s } -// SetCreatedTime sets the CreatedTime field's value. -func (s *DataSource) SetCreatedTime(v time.Time) *DataSource { - s.CreatedTime = &v +// SetThemeId sets the ThemeId field's value. +func (s *DeleteThemeInput) SetThemeId(v string) *DeleteThemeInput { + s.ThemeId = &v return s } -// SetDataSourceId sets the DataSourceId field's value. -func (s *DataSource) SetDataSourceId(v string) *DataSource { - s.DataSourceId = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *DeleteThemeInput) SetVersionNumber(v int64) *DeleteThemeInput { + s.VersionNumber = &v return s } -// SetDataSourceParameters sets the DataSourceParameters field's value. -func (s *DataSource) SetDataSourceParameters(v *DataSourceParameters) *DataSource { - s.DataSourceParameters = v - return s +type DeleteThemeOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` + + // An ID for the theme. + ThemeId *string `min:"1" type:"string"` } -// SetErrorInfo sets the ErrorInfo field's value. -func (s *DataSource) SetErrorInfo(v *DataSourceErrorInfo) *DataSource { - s.ErrorInfo = v - return s +// String returns the string representation +func (s DeleteThemeOutput) String() string { + return awsutil.Prettify(s) } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *DataSource) SetLastUpdatedTime(v time.Time) *DataSource { - s.LastUpdatedTime = &v - return s +// GoString returns the string representation +func (s DeleteThemeOutput) GoString() string { + return s.String() } -// SetName sets the Name field's value. -func (s *DataSource) SetName(v string) *DataSource { - s.Name = &v +// SetArn sets the Arn field's value. +func (s *DeleteThemeOutput) SetArn(v string) *DeleteThemeOutput { + s.Arn = &v return s } -// SetSslProperties sets the SslProperties field's value. -func (s *DataSource) SetSslProperties(v *SslProperties) *DataSource { - s.SslProperties = v +// SetRequestId sets the RequestId field's value. +func (s *DeleteThemeOutput) SetRequestId(v string) *DeleteThemeOutput { + s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DataSource) SetStatus(v string) *DataSource { +func (s *DeleteThemeOutput) SetStatus(v int64) *DeleteThemeOutput { s.Status = &v return s } -// SetType sets the Type field's value. -func (s *DataSource) SetType(v string) *DataSource { - s.Type = &v +// SetThemeId sets the ThemeId field's value. +func (s *DeleteThemeOutput) SetThemeId(v string) *DeleteThemeOutput { + s.ThemeId = &v return s } -// SetVpcConnectionProperties sets the VpcConnectionProperties field's value. -func (s *DataSource) SetVpcConnectionProperties(v *VpcConnectionProperties) *DataSource { - s.VpcConnectionProperties = v - return s -} +type DeleteUserByPrincipalIdInput struct { + _ struct{} `type:"structure"` -// Data source credentials. This is a variant type structure. For this structure -// to be valid, only one of the attributes can be non-null. -type DataSourceCredentials struct { - _ struct{} `type:"structure" sensitive:"true"` + // The ID for the AWS account that the user is in. Currently, you use the ID + // for the AWS 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 Amazon Resource Name (ARN) of a data source that has the credential pair - // that you want to use. When CopySourceArn is not null, the credential pair - // from the data source in the ARN is used as the credentials for the DataSourceCredentials - // structure. - CopySourceArn *string `type:"string"` + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // Credential pair. For more information, see CredentialPair. - CredentialPair *CredentialPair `type:"structure"` + // The principal ID of the user. + // + // PrincipalId is a required field + PrincipalId *string `location:"uri" locationName:"PrincipalId" type:"string" required:"true"` } // String returns the string representation -func (s DataSourceCredentials) String() string { +func (s DeleteUserByPrincipalIdInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSourceCredentials) GoString() string { +func (s DeleteUserByPrincipalIdInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DataSourceCredentials) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DataSourceCredentials"} - if s.CredentialPair != nil { - if err := s.CredentialPair.Validate(); err != nil { - invalidParams.AddNested("CredentialPair", err.(request.ErrInvalidParams)) - } +func (s *DeleteUserByPrincipalIdInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteUserByPrincipalIdInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.PrincipalId == nil { + invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + } + if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) } if invalidParams.Len() > 0 { @@ -11188,222 +14713,106 @@ func (s *DataSourceCredentials) Validate() error { return nil } -// SetCopySourceArn sets the CopySourceArn field's value. -func (s *DataSourceCredentials) SetCopySourceArn(v string) *DataSourceCredentials { - s.CopySourceArn = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteUserByPrincipalIdInput) SetAwsAccountId(v string) *DeleteUserByPrincipalIdInput { + s.AwsAccountId = &v return s } -// SetCredentialPair sets the CredentialPair field's value. -func (s *DataSourceCredentials) SetCredentialPair(v *CredentialPair) *DataSourceCredentials { - s.CredentialPair = v +// SetNamespace sets the Namespace field's value. +func (s *DeleteUserByPrincipalIdInput) SetNamespace(v string) *DeleteUserByPrincipalIdInput { + s.Namespace = &v return s } -// Error information for the data source creation or update. -type DataSourceErrorInfo struct { +// SetPrincipalId sets the PrincipalId field's value. +func (s *DeleteUserByPrincipalIdInput) SetPrincipalId(v string) *DeleteUserByPrincipalIdInput { + s.PrincipalId = &v + return s +} + +type DeleteUserByPrincipalIdOutput struct { _ struct{} `type:"structure"` - // Error message. - Message *string `type:"string"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Error type. - Type *string `type:"string" enum:"DataSourceErrorInfoType"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s DataSourceErrorInfo) String() string { +func (s DeleteUserByPrincipalIdOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSourceErrorInfo) GoString() string { +func (s DeleteUserByPrincipalIdOutput) GoString() string { return s.String() } -// SetMessage sets the Message field's value. -func (s *DataSourceErrorInfo) SetMessage(v string) *DataSourceErrorInfo { - s.Message = &v +// SetRequestId sets the RequestId field's value. +func (s *DeleteUserByPrincipalIdOutput) SetRequestId(v string) *DeleteUserByPrincipalIdOutput { + s.RequestId = &v return s } -// SetType sets the Type field's value. -func (s *DataSourceErrorInfo) SetType(v string) *DataSourceErrorInfo { - s.Type = &v +// SetStatus sets the Status field's value. +func (s *DeleteUserByPrincipalIdOutput) SetStatus(v int64) *DeleteUserByPrincipalIdOutput { + s.Status = &v return s } -// 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. -type DataSourceParameters struct { +type DeleteUserInput struct { _ struct{} `type:"structure"` - // Amazon Elasticsearch Service parameters. - AmazonElasticsearchParameters *AmazonElasticsearchParameters `type:"structure"` - - // Amazon Athena parameters. - AthenaParameters *AthenaParameters `type:"structure"` - - // Amazon Aurora MySQL parameters. - AuroraParameters *AuroraParameters `type:"structure"` - - // Aurora PostgreSQL parameters. - AuroraPostgreSqlParameters *AuroraPostgreSqlParameters `type:"structure"` - - // AWS IoT Analytics parameters. - AwsIotAnalyticsParameters *AwsIotAnalyticsParameters `type:"structure"` - - // Jira parameters. - JiraParameters *JiraParameters `type:"structure"` - - // MariaDB parameters. - MariaDbParameters *MariaDbParameters `type:"structure"` - - // MySQL parameters. - MySqlParameters *MySqlParameters `type:"structure"` - - // PostgreSQL parameters. - PostgreSqlParameters *PostgreSqlParameters `type:"structure"` - - // Presto parameters. - PrestoParameters *PrestoParameters `type:"structure"` - - // Amazon RDS parameters. - RdsParameters *RdsParameters `type:"structure"` - - // Amazon Redshift parameters. - RedshiftParameters *RedshiftParameters `type:"structure"` - - // S3 parameters. - S3Parameters *S3Parameters `type:"structure"` - - // ServiceNow parameters. - ServiceNowParameters *ServiceNowParameters `type:"structure"` - - // Snowflake parameters. - SnowflakeParameters *SnowflakeParameters `type:"structure"` - - // Spark parameters. - SparkParameters *SparkParameters `type:"structure"` - - // SQL Server parameters. - SqlServerParameters *SqlServerParameters `type:"structure"` + // The ID for the AWS account that the user is in. Currently, you use the ID + // for the AWS account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Teradata parameters. - TeradataParameters *TeradataParameters `type:"structure"` + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // Twitter parameters. - TwitterParameters *TwitterParameters `type:"structure"` + // The name of the user that you want to delete. + // + // UserName is a required field + UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DataSourceParameters) String() string { +func (s DeleteUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DataSourceParameters) GoString() string { +func (s DeleteUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DataSourceParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DataSourceParameters"} - if s.AmazonElasticsearchParameters != nil { - if err := s.AmazonElasticsearchParameters.Validate(); err != nil { - invalidParams.AddNested("AmazonElasticsearchParameters", err.(request.ErrInvalidParams)) - } - } - if s.AthenaParameters != nil { - if err := s.AthenaParameters.Validate(); err != nil { - invalidParams.AddNested("AthenaParameters", err.(request.ErrInvalidParams)) - } - } - if s.AuroraParameters != nil { - if err := s.AuroraParameters.Validate(); err != nil { - invalidParams.AddNested("AuroraParameters", err.(request.ErrInvalidParams)) - } - } - if s.AuroraPostgreSqlParameters != nil { - if err := s.AuroraPostgreSqlParameters.Validate(); err != nil { - invalidParams.AddNested("AuroraPostgreSqlParameters", err.(request.ErrInvalidParams)) - } - } - if s.AwsIotAnalyticsParameters != nil { - if err := s.AwsIotAnalyticsParameters.Validate(); err != nil { - invalidParams.AddNested("AwsIotAnalyticsParameters", err.(request.ErrInvalidParams)) - } - } - if s.JiraParameters != nil { - if err := s.JiraParameters.Validate(); err != nil { - invalidParams.AddNested("JiraParameters", err.(request.ErrInvalidParams)) - } - } - if s.MariaDbParameters != nil { - if err := s.MariaDbParameters.Validate(); err != nil { - invalidParams.AddNested("MariaDbParameters", err.(request.ErrInvalidParams)) - } - } - if s.MySqlParameters != nil { - if err := s.MySqlParameters.Validate(); err != nil { - invalidParams.AddNested("MySqlParameters", err.(request.ErrInvalidParams)) - } - } - if s.PostgreSqlParameters != nil { - if err := s.PostgreSqlParameters.Validate(); err != nil { - invalidParams.AddNested("PostgreSqlParameters", err.(request.ErrInvalidParams)) - } - } - if s.PrestoParameters != nil { - if err := s.PrestoParameters.Validate(); err != nil { - invalidParams.AddNested("PrestoParameters", err.(request.ErrInvalidParams)) - } - } - if s.RdsParameters != nil { - if err := s.RdsParameters.Validate(); err != nil { - invalidParams.AddNested("RdsParameters", err.(request.ErrInvalidParams)) - } - } - if s.RedshiftParameters != nil { - if err := s.RedshiftParameters.Validate(); err != nil { - invalidParams.AddNested("RedshiftParameters", err.(request.ErrInvalidParams)) - } - } - if s.S3Parameters != nil { - if err := s.S3Parameters.Validate(); err != nil { - invalidParams.AddNested("S3Parameters", err.(request.ErrInvalidParams)) - } - } - if s.ServiceNowParameters != nil { - if err := s.ServiceNowParameters.Validate(); err != nil { - invalidParams.AddNested("ServiceNowParameters", err.(request.ErrInvalidParams)) - } +func (s *DeleteUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.SnowflakeParameters != nil { - if err := s.SnowflakeParameters.Validate(); err != nil { - invalidParams.AddNested("SnowflakeParameters", err.(request.ErrInvalidParams)) - } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.SparkParameters != nil { - if err := s.SparkParameters.Validate(); err != nil { - invalidParams.AddNested("SparkParameters", err.(request.ErrInvalidParams)) - } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) } - if s.SqlServerParameters != nil { - if err := s.SqlServerParameters.Validate(); err != nil { - invalidParams.AddNested("SqlServerParameters", err.(request.ErrInvalidParams)) - } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } - if s.TeradataParameters != nil { - if err := s.TeradataParameters.Validate(); err != nil { - invalidParams.AddNested("TeradataParameters", err.(request.ErrInvalidParams)) - } + if s.UserName == nil { + invalidParams.Add(request.NewErrParamRequired("UserName")) } - if s.TwitterParameters != nil { - if err := s.TwitterParameters.Validate(); err != nil { - invalidParams.AddNested("TwitterParameters", err.(request.ErrInvalidParams)) - } + if s.UserName != nil && len(*s.UserName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { @@ -11412,153 +14821,219 @@ func (s *DataSourceParameters) Validate() error { return nil } -// SetAmazonElasticsearchParameters sets the AmazonElasticsearchParameters field's value. -func (s *DataSourceParameters) SetAmazonElasticsearchParameters(v *AmazonElasticsearchParameters) *DataSourceParameters { - s.AmazonElasticsearchParameters = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DeleteUserInput) SetAwsAccountId(v string) *DeleteUserInput { + s.AwsAccountId = &v return s } -// SetAthenaParameters sets the AthenaParameters field's value. -func (s *DataSourceParameters) SetAthenaParameters(v *AthenaParameters) *DataSourceParameters { - s.AthenaParameters = v +// SetNamespace sets the Namespace field's value. +func (s *DeleteUserInput) SetNamespace(v string) *DeleteUserInput { + s.Namespace = &v return s } -// SetAuroraParameters sets the AuroraParameters field's value. -func (s *DataSourceParameters) SetAuroraParameters(v *AuroraParameters) *DataSourceParameters { - s.AuroraParameters = v +// SetUserName sets the UserName field's value. +func (s *DeleteUserInput) SetUserName(v string) *DeleteUserInput { + s.UserName = &v return s } -// SetAuroraPostgreSqlParameters sets the AuroraPostgreSqlParameters field's value. -func (s *DataSourceParameters) SetAuroraPostgreSqlParameters(v *AuroraPostgreSqlParameters) *DataSourceParameters { - s.AuroraPostgreSqlParameters = v - return s +type DeleteUserOutput struct { + _ struct{} `type:"structure"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } -// SetAwsIotAnalyticsParameters sets the AwsIotAnalyticsParameters field's value. -func (s *DataSourceParameters) SetAwsIotAnalyticsParameters(v *AwsIotAnalyticsParameters) *DataSourceParameters { - s.AwsIotAnalyticsParameters = v - return s +// String returns the string representation +func (s DeleteUserOutput) String() string { + return awsutil.Prettify(s) } -// SetJiraParameters sets the JiraParameters field's value. -func (s *DataSourceParameters) SetJiraParameters(v *JiraParameters) *DataSourceParameters { - s.JiraParameters = v - return s +// GoString returns the string representation +func (s DeleteUserOutput) GoString() string { + return s.String() } -// SetMariaDbParameters sets the MariaDbParameters field's value. -func (s *DataSourceParameters) SetMariaDbParameters(v *MariaDbParameters) *DataSourceParameters { - s.MariaDbParameters = v +// SetRequestId sets the RequestId field's value. +func (s *DeleteUserOutput) SetRequestId(v string) *DeleteUserOutput { + s.RequestId = &v return s } -// SetMySqlParameters sets the MySqlParameters field's value. -func (s *DataSourceParameters) SetMySqlParameters(v *MySqlParameters) *DataSourceParameters { - s.MySqlParameters = v +// SetStatus sets the Status field's value. +func (s *DeleteUserOutput) SetStatus(v int64) *DeleteUserOutput { + s.Status = &v return s } -// SetPostgreSqlParameters sets the PostgreSqlParameters field's value. -func (s *DataSourceParameters) SetPostgreSqlParameters(v *PostgreSqlParameters) *DataSourceParameters { - s.PostgreSqlParameters = v - return s +type DescribeDashboardInput struct { + _ struct{} `type:"structure"` + + // The alias name. + AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` + + // The ID of the AWS account that contains the dashboard that you're describing. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The ID for the dashboard. + // + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + + // The version number for the dashboard. If a version number isn't passed, the + // latest published dashboard version is described. + VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } -// SetPrestoParameters sets the PrestoParameters field's value. -func (s *DataSourceParameters) SetPrestoParameters(v *PrestoParameters) *DataSourceParameters { - s.PrestoParameters = v - return s +// String returns the string representation +func (s DescribeDashboardInput) String() string { + return awsutil.Prettify(s) } -// SetRdsParameters sets the RdsParameters field's value. -func (s *DataSourceParameters) SetRdsParameters(v *RdsParameters) *DataSourceParameters { - s.RdsParameters = v +// GoString returns the string representation +func (s DescribeDashboardInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDashboardInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDashboardInput"} + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) + } + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAliasName sets the AliasName field's value. +func (s *DescribeDashboardInput) SetAliasName(v string) *DescribeDashboardInput { + s.AliasName = &v return s } -// SetRedshiftParameters sets the RedshiftParameters field's value. -func (s *DataSourceParameters) SetRedshiftParameters(v *RedshiftParameters) *DataSourceParameters { - s.RedshiftParameters = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DescribeDashboardInput) SetAwsAccountId(v string) *DescribeDashboardInput { + s.AwsAccountId = &v return s } -// SetS3Parameters sets the S3Parameters field's value. -func (s *DataSourceParameters) SetS3Parameters(v *S3Parameters) *DataSourceParameters { - s.S3Parameters = v +// SetDashboardId sets the DashboardId field's value. +func (s *DescribeDashboardInput) SetDashboardId(v string) *DescribeDashboardInput { + s.DashboardId = &v return s } -// SetServiceNowParameters sets the ServiceNowParameters field's value. -func (s *DataSourceParameters) SetServiceNowParameters(v *ServiceNowParameters) *DataSourceParameters { - s.ServiceNowParameters = v +// SetVersionNumber sets the VersionNumber field's value. +func (s *DescribeDashboardInput) SetVersionNumber(v int64) *DescribeDashboardInput { + s.VersionNumber = &v return s } -// SetSnowflakeParameters sets the SnowflakeParameters field's value. -func (s *DataSourceParameters) SetSnowflakeParameters(v *SnowflakeParameters) *DataSourceParameters { - s.SnowflakeParameters = v - return s +type DescribeDashboardOutput struct { + _ struct{} `type:"structure"` + + // Information about the dashboard. + Dashboard *Dashboard `type:"structure"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of this request. + Status *int64 `location:"statusCode" type:"integer"` } -// SetSparkParameters sets the SparkParameters field's value. -func (s *DataSourceParameters) SetSparkParameters(v *SparkParameters) *DataSourceParameters { - s.SparkParameters = v - return s +// String returns the string representation +func (s DescribeDashboardOutput) String() string { + return awsutil.Prettify(s) } -// SetSqlServerParameters sets the SqlServerParameters field's value. -func (s *DataSourceParameters) SetSqlServerParameters(v *SqlServerParameters) *DataSourceParameters { - s.SqlServerParameters = v +// GoString returns the string representation +func (s DescribeDashboardOutput) GoString() string { + return s.String() +} + +// SetDashboard sets the Dashboard field's value. +func (s *DescribeDashboardOutput) SetDashboard(v *Dashboard) *DescribeDashboardOutput { + s.Dashboard = v return s } -// SetTeradataParameters sets the TeradataParameters field's value. -func (s *DataSourceParameters) SetTeradataParameters(v *TeradataParameters) *DataSourceParameters { - s.TeradataParameters = v +// SetRequestId sets the RequestId field's value. +func (s *DescribeDashboardOutput) SetRequestId(v string) *DescribeDashboardOutput { + s.RequestId = &v return s } -// SetTwitterParameters sets the TwitterParameters field's value. -func (s *DataSourceParameters) SetTwitterParameters(v *TwitterParameters) *DataSourceParameters { - s.TwitterParameters = v +// SetStatus sets the Status field's value. +func (s *DescribeDashboardOutput) SetStatus(v int64) *DescribeDashboardOutput { + s.Status = &v return s } -// Date time parameter. -type DateTimeParameter struct { +type DescribeDashboardPermissionsInput struct { _ struct{} `type:"structure"` - // A display name for the dataset. + // The ID of the AWS account that contains the dashboard that you're describing + // permissions for. // - // Name is a required field - Name *string `type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Values. + // The ID for the dashboard, also added to the IAM policy. // - // Values is a required field - Values []*time.Time `type:"list" required:"true"` + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DateTimeParameter) String() string { +func (s DescribeDashboardPermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DateTimeParameter) GoString() string { +func (s DescribeDashboardPermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DateTimeParameter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DateTimeParameter"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) +func (s *DescribeDashboardPermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDashboardPermissionsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.Values == nil { - invalidParams.Add(request.NewErrParamRequired("Values")) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) + } + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) } if invalidParams.Len() > 0 { @@ -11567,116 +15042,116 @@ func (s *DateTimeParameter) Validate() error { return nil } -// SetName sets the Name field's value. -func (s *DateTimeParameter) SetName(v string) *DateTimeParameter { - s.Name = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DescribeDashboardPermissionsInput) SetAwsAccountId(v string) *DescribeDashboardPermissionsInput { + s.AwsAccountId = &v return s } -// SetValues sets the Values field's value. -func (s *DateTimeParameter) SetValues(v []*time.Time) *DateTimeParameter { - s.Values = v +// SetDashboardId sets the DashboardId field's value. +func (s *DescribeDashboardPermissionsInput) SetDashboardId(v string) *DescribeDashboardPermissionsInput { + s.DashboardId = &v return s } -// Decimal parameter. -type DecimalParameter struct { +type DescribeDashboardPermissionsOutput struct { _ struct{} `type:"structure"` - // A display name for the dataset. - // - // Name is a required field - Name *string `type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the dashboard. + DashboardArn *string `type:"string"` - // Values. - // - // Values is a required field - Values []*float64 `type:"list" required:"true"` + // The ID for the dashboard. + DashboardId *string `min:"1" type:"string"` + + // A structure that contains the permissions for the dashboard. + Permissions []*ResourcePermission `min:"1" type:"list"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s DecimalParameter) String() string { +func (s DescribeDashboardPermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DecimalParameter) GoString() string { +func (s DescribeDashboardPermissionsOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DecimalParameter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DecimalParameter"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Values == nil { - invalidParams.Add(request.NewErrParamRequired("Values")) - } +// SetDashboardArn sets the DashboardArn field's value. +func (s *DescribeDashboardPermissionsOutput) SetDashboardArn(v string) *DescribeDashboardPermissionsOutput { + s.DashboardArn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDashboardId sets the DashboardId field's value. +func (s *DescribeDashboardPermissionsOutput) SetDashboardId(v string) *DescribeDashboardPermissionsOutput { + s.DashboardId = &v + return s } -// SetName sets the Name field's value. -func (s *DecimalParameter) SetName(v string) *DecimalParameter { - s.Name = &v +// SetPermissions sets the Permissions field's value. +func (s *DescribeDashboardPermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeDashboardPermissionsOutput { + s.Permissions = v return s } -// SetValues sets the Values field's value. -func (s *DecimalParameter) SetValues(v []*float64) *DecimalParameter { - s.Values = v +// SetRequestId sets the RequestId field's value. +func (s *DescribeDashboardPermissionsOutput) SetRequestId(v string) *DescribeDashboardPermissionsOutput { + s.RequestId = &v return s } -type DeleteDashboardInput struct { +// SetStatus sets the Status field's value. +func (s *DescribeDashboardPermissionsOutput) SetStatus(v int64) *DescribeDashboardPermissionsOutput { + s.Status = &v + return s +} + +type DescribeDataSetInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboard that you're deleting. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard. + // The ID for the dataset that you want to create. This ID is unique per AWS + // Region for each AWS account. // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` - - // The version number of the dashboard. If the version number property is provided, - // only the specified version of the dashboard is deleted. - VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` } // String returns the string representation -func (s DeleteDashboardInput) String() string { +func (s DescribeDataSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDashboardInput) GoString() string { +func (s DescribeDataSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDashboardInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDashboardInput"} +func (s *DescribeDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDataSetInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) - } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) } - if s.VersionNumber != nil && *s.VersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) } if invalidParams.Len() > 0 { @@ -11686,31 +15161,22 @@ func (s *DeleteDashboardInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteDashboardInput) SetAwsAccountId(v string) *DeleteDashboardInput { +func (s *DescribeDataSetInput) SetAwsAccountId(v string) *DescribeDataSetInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *DeleteDashboardInput) SetDashboardId(v string) *DeleteDashboardInput { - s.DashboardId = &v - return s -} - -// SetVersionNumber sets the VersionNumber field's value. -func (s *DeleteDashboardInput) SetVersionNumber(v int64) *DeleteDashboardInput { - s.VersionNumber = &v +// SetDataSetId sets the DataSetId field's value. +func (s *DescribeDataSetInput) SetDataSetId(v string) *DescribeDataSetInput { + s.DataSetId = &v return s } -type DeleteDashboardOutput struct { +type DescribeDataSetOutput struct { _ struct{} `type:"structure"` - // The Secure Socket Layer (SSL) properties that apply for the resource. - Arn *string `type:"string"` - - // The ID of the dashboard. - DashboardId *string `min:"1" type:"string"` + // Information on the dataset. + DataSet *DataSet `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -11720,40 +15186,34 @@ type DeleteDashboardOutput struct { } // String returns the string representation -func (s DeleteDashboardOutput) String() string { +func (s DescribeDataSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDashboardOutput) GoString() string { +func (s DescribeDataSetOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DeleteDashboardOutput) SetArn(v string) *DeleteDashboardOutput { - s.Arn = &v - return s -} - -// SetDashboardId sets the DashboardId field's value. -func (s *DeleteDashboardOutput) SetDashboardId(v string) *DeleteDashboardOutput { - s.DashboardId = &v +// SetDataSet sets the DataSet field's value. +func (s *DescribeDataSetOutput) SetDataSet(v *DataSet) *DescribeDataSetOutput { + s.DataSet = v return s } // SetRequestId sets the RequestId field's value. -func (s *DeleteDashboardOutput) SetRequestId(v string) *DeleteDashboardOutput { +func (s *DescribeDataSetOutput) SetRequestId(v string) *DescribeDataSetOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteDashboardOutput) SetStatus(v int64) *DeleteDashboardOutput { +func (s *DescribeDataSetOutput) SetStatus(v int64) *DescribeDataSetOutput { s.Status = &v return s } -type DeleteDataSetInput struct { +type DescribeDataSetPermissionsInput struct { _ struct{} `type:"structure"` // The AWS account ID. @@ -11769,18 +15229,18 @@ type DeleteDataSetInput struct { } // String returns the string representation -func (s DeleteDataSetInput) String() string { +func (s DescribeDataSetPermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDataSetInput) GoString() string { +func (s DescribeDataSetPermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDataSetInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDataSetInput"} +func (s *DescribeDataSetPermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDataSetPermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -11801,27 +15261,30 @@ func (s *DeleteDataSetInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteDataSetInput) SetAwsAccountId(v string) *DeleteDataSetInput { +func (s *DescribeDataSetPermissionsInput) SetAwsAccountId(v string) *DescribeDataSetPermissionsInput { s.AwsAccountId = &v return s } // SetDataSetId sets the DataSetId field's value. -func (s *DeleteDataSetInput) SetDataSetId(v string) *DeleteDataSetInput { +func (s *DescribeDataSetPermissionsInput) SetDataSetId(v string) *DescribeDataSetPermissionsInput { s.DataSetId = &v return s } -type DeleteDataSetOutput struct { +type DescribeDataSetPermissionsOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the dataset. - Arn *string `type:"string"` + DataSetArn *string `type:"string"` // The ID for the dataset that you want to create. This ID is unique per AWS // Region for each AWS account. DataSetId *string `type:"string"` + // A list of resource permissions on the dataset. + Permissions []*ResourcePermission `min:"1" type:"list"` + // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -11830,40 +15293,46 @@ type DeleteDataSetOutput struct { } // String returns the string representation -func (s DeleteDataSetOutput) String() string { +func (s DescribeDataSetPermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDataSetOutput) GoString() string { +func (s DescribeDataSetPermissionsOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DeleteDataSetOutput) SetArn(v string) *DeleteDataSetOutput { - s.Arn = &v +// SetDataSetArn sets the DataSetArn field's value. +func (s *DescribeDataSetPermissionsOutput) SetDataSetArn(v string) *DescribeDataSetPermissionsOutput { + s.DataSetArn = &v return s } // SetDataSetId sets the DataSetId field's value. -func (s *DeleteDataSetOutput) SetDataSetId(v string) *DeleteDataSetOutput { +func (s *DescribeDataSetPermissionsOutput) SetDataSetId(v string) *DescribeDataSetPermissionsOutput { s.DataSetId = &v return s } +// SetPermissions sets the Permissions field's value. +func (s *DescribeDataSetPermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeDataSetPermissionsOutput { + s.Permissions = v + return s +} + // SetRequestId sets the RequestId field's value. -func (s *DeleteDataSetOutput) SetRequestId(v string) *DeleteDataSetOutput { +func (s *DescribeDataSetPermissionsOutput) SetRequestId(v string) *DescribeDataSetPermissionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteDataSetOutput) SetStatus(v int64) *DeleteDataSetOutput { +func (s *DescribeDataSetPermissionsOutput) SetStatus(v int64) *DescribeDataSetPermissionsOutput { s.Status = &v return s } -type DeleteDataSourceInput struct { +type DescribeDataSourceInput struct { _ struct{} `type:"structure"` // The AWS account ID. @@ -11879,18 +15348,18 @@ type DeleteDataSourceInput struct { } // String returns the string representation -func (s DeleteDataSourceInput) String() string { +func (s DescribeDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDataSourceInput) GoString() string { +func (s DescribeDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDataSourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} +func (s *DescribeDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDataSourceInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -11911,26 +15380,22 @@ func (s *DeleteDataSourceInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteDataSourceInput) SetAwsAccountId(v string) *DeleteDataSourceInput { +func (s *DescribeDataSourceInput) SetAwsAccountId(v string) *DescribeDataSourceInput { s.AwsAccountId = &v return s } // SetDataSourceId sets the DataSourceId field's value. -func (s *DeleteDataSourceInput) SetDataSourceId(v string) *DeleteDataSourceInput { +func (s *DescribeDataSourceInput) SetDataSourceId(v string) *DescribeDataSourceInput { s.DataSourceId = &v return s } -type DeleteDataSourceOutput struct { +type DescribeDataSourceOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the data source that you deleted. - Arn *string `type:"string"` - - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - DataSourceId *string `type:"string"` + // The information on the data source. + DataSource *DataSource `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -11940,89 +15405,72 @@ type DeleteDataSourceOutput struct { } // String returns the string representation -func (s DeleteDataSourceOutput) String() string { +func (s DescribeDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDataSourceOutput) GoString() string { +func (s DescribeDataSourceOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DeleteDataSourceOutput) SetArn(v string) *DeleteDataSourceOutput { - s.Arn = &v - return s -} - -// SetDataSourceId sets the DataSourceId field's value. -func (s *DeleteDataSourceOutput) SetDataSourceId(v string) *DeleteDataSourceOutput { - s.DataSourceId = &v +// SetDataSource sets the DataSource field's value. +func (s *DescribeDataSourceOutput) SetDataSource(v *DataSource) *DescribeDataSourceOutput { + s.DataSource = v return s } // SetRequestId sets the RequestId field's value. -func (s *DeleteDataSourceOutput) SetRequestId(v string) *DeleteDataSourceOutput { +func (s *DescribeDataSourceOutput) SetRequestId(v string) *DescribeDataSourceOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteDataSourceOutput) SetStatus(v int64) *DeleteDataSourceOutput { +func (s *DescribeDataSourceOutput) SetStatus(v int64) *DescribeDataSourceOutput { s.Status = &v return s } -type DeleteGroupInput struct { +type DescribeDataSourcePermissionsInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The name of the group that you want to delete. - // - // GroupName is a required field - GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` - - // The namespace. Currently, you should set this to default. + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` } // String returns the string representation -func (s DeleteGroupInput) String() string { +func (s DescribeDataSourcePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteGroupInput) GoString() string { +func (s DescribeDataSourcePermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteGroupInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteGroupInput"} +func (s *DescribeDataSourcePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDataSourcePermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.GroupName == nil { - invalidParams.Add(request.NewErrParamRequired("GroupName")) - } - if s.GroupName != nil && len(*s.GroupName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if invalidParams.Len() > 0 { @@ -12032,24 +15480,78 @@ func (s *DeleteGroupInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteGroupInput) SetAwsAccountId(v string) *DeleteGroupInput { +func (s *DescribeDataSourcePermissionsInput) SetAwsAccountId(v string) *DescribeDataSourcePermissionsInput { s.AwsAccountId = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *DeleteGroupInput) SetGroupName(v string) *DeleteGroupInput { - s.GroupName = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *DescribeDataSourcePermissionsInput) SetDataSourceId(v string) *DescribeDataSourcePermissionsInput { + s.DataSourceId = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *DeleteGroupInput) SetNamespace(v string) *DeleteGroupInput { - s.Namespace = &v +type DescribeDataSourcePermissionsOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the data source. + DataSourceArn *string `type:"string"` + + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + DataSourceId *string `type:"string"` + + // A list of resource permissions on the data source. + Permissions []*ResourcePermission `min:"1" type:"list"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` +} + +// String returns the string representation +func (s DescribeDataSourcePermissionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeDataSourcePermissionsOutput) GoString() string { + return s.String() +} + +// SetDataSourceArn sets the DataSourceArn field's value. +func (s *DescribeDataSourcePermissionsOutput) SetDataSourceArn(v string) *DescribeDataSourcePermissionsOutput { + s.DataSourceArn = &v return s } -type DeleteGroupMembershipInput struct { +// SetDataSourceId sets the DataSourceId field's value. +func (s *DescribeDataSourcePermissionsOutput) SetDataSourceId(v string) *DescribeDataSourcePermissionsOutput { + s.DataSourceId = &v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *DescribeDataSourcePermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeDataSourcePermissionsOutput { + s.Permissions = v + return s +} + +// SetRequestId sets the RequestId field's value. +func (s *DescribeDataSourcePermissionsOutput) SetRequestId(v string) *DescribeDataSourcePermissionsOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribeDataSourcePermissionsOutput) SetStatus(v int64) *DescribeDataSourcePermissionsOutput { + s.Status = &v + return s +} + +type DescribeGroupInput struct { _ struct{} `type:"structure"` // The ID for the AWS account that the group is in. Currently, you use the ID @@ -12058,16 +15560,11 @@ type DeleteGroupMembershipInput struct { // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The name of the group that you want to delete the user from. + // The name of the group that you want to describe. // // GroupName is a required field GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` - // The name of the user that you want to delete from the group membership. - // - // MemberName is a required field - MemberName *string `location:"uri" locationName:"MemberName" min:"1" type:"string" required:"true"` - // The namespace. Currently, you should set this to default. // // Namespace is a required field @@ -12075,18 +15572,18 @@ type DeleteGroupMembershipInput struct { } // String returns the string representation -func (s DeleteGroupMembershipInput) String() string { +func (s DescribeGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteGroupMembershipInput) GoString() string { +func (s DescribeGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteGroupMembershipInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteGroupMembershipInput"} +func (s *DescribeGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeGroupInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -12099,12 +15596,6 @@ func (s *DeleteGroupMembershipInput) Validate() error { if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } - if s.MemberName == nil { - invalidParams.Add(request.NewErrParamRequired("MemberName")) - } - if s.MemberName != nil && len(*s.MemberName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MemberName", 1)) - } if s.Namespace == nil { invalidParams.Add(request.NewErrParamRequired("Namespace")) } @@ -12119,64 +15610,29 @@ func (s *DeleteGroupMembershipInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteGroupMembershipInput) SetAwsAccountId(v string) *DeleteGroupMembershipInput { +func (s *DescribeGroupInput) SetAwsAccountId(v string) *DescribeGroupInput { s.AwsAccountId = &v return s } // SetGroupName sets the GroupName field's value. -func (s *DeleteGroupMembershipInput) SetGroupName(v string) *DeleteGroupMembershipInput { +func (s *DescribeGroupInput) SetGroupName(v string) *DescribeGroupInput { s.GroupName = &v return s } -// SetMemberName sets the MemberName field's value. -func (s *DeleteGroupMembershipInput) SetMemberName(v string) *DeleteGroupMembershipInput { - s.MemberName = &v - return s -} - -// SetNamespace sets the Namespace field's value. -func (s *DeleteGroupMembershipInput) SetNamespace(v string) *DeleteGroupMembershipInput { - s.Namespace = &v - return s -} - -type DeleteGroupMembershipOutput struct { - _ struct{} `type:"structure"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` -} - -// String returns the string representation -func (s DeleteGroupMembershipOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DeleteGroupMembershipOutput) GoString() string { - return s.String() -} - -// SetRequestId sets the RequestId field's value. -func (s *DeleteGroupMembershipOutput) SetRequestId(v string) *DeleteGroupMembershipOutput { - s.RequestId = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *DeleteGroupMembershipOutput) SetStatus(v int64) *DeleteGroupMembershipOutput { - s.Status = &v +// SetNamespace sets the Namespace field's value. +func (s *DescribeGroupInput) SetNamespace(v string) *DescribeGroupInput { + s.Namespace = &v return s } -type DeleteGroupOutput struct { +type DescribeGroupOutput struct { _ struct{} `type:"structure"` + // The name of the group. + Group *Group `type:"structure"` + // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -12185,28 +15641,34 @@ type DeleteGroupOutput struct { } // String returns the string representation -func (s DeleteGroupOutput) String() string { +func (s DescribeGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteGroupOutput) GoString() string { +func (s DescribeGroupOutput) GoString() string { return s.String() } +// SetGroup sets the Group field's value. +func (s *DescribeGroupOutput) SetGroup(v *Group) *DescribeGroupOutput { + s.Group = v + return s +} + // SetRequestId sets the RequestId field's value. -func (s *DeleteGroupOutput) SetRequestId(v string) *DeleteGroupOutput { +func (s *DescribeGroupOutput) SetRequestId(v string) *DescribeGroupOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteGroupOutput) SetStatus(v int64) *DeleteGroupOutput { +func (s *DescribeGroupOutput) SetStatus(v int64) *DescribeGroupOutput { s.Status = &v return s } -type DeleteIAMPolicyAssignmentInput struct { +type DescribeIAMPolicyAssignmentInput struct { _ struct{} `type:"structure"` // The name of the assignment. @@ -12214,7 +15676,7 @@ type DeleteIAMPolicyAssignmentInput struct { // AssignmentName is a required field AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` - // The AWS account ID where you want to delete the IAM policy assignment. + // The ID of the AWS account that contains the assignment that you want to describe. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -12226,18 +15688,18 @@ type DeleteIAMPolicyAssignmentInput struct { } // String returns the string representation -func (s DeleteIAMPolicyAssignmentInput) String() string { +func (s DescribeIAMPolicyAssignmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteIAMPolicyAssignmentInput) GoString() string { +func (s DescribeIAMPolicyAssignmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteIAMPolicyAssignmentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteIAMPolicyAssignmentInput"} +func (s *DescribeIAMPolicyAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeIAMPolicyAssignmentInput"} if s.AssignmentName == nil { invalidParams.Add(request.NewErrParamRequired("AssignmentName")) } @@ -12264,28 +15726,28 @@ func (s *DeleteIAMPolicyAssignmentInput) Validate() error { } // SetAssignmentName sets the AssignmentName field's value. -func (s *DeleteIAMPolicyAssignmentInput) SetAssignmentName(v string) *DeleteIAMPolicyAssignmentInput { +func (s *DescribeIAMPolicyAssignmentInput) SetAssignmentName(v string) *DescribeIAMPolicyAssignmentInput { s.AssignmentName = &v return s } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteIAMPolicyAssignmentInput) SetAwsAccountId(v string) *DeleteIAMPolicyAssignmentInput { +func (s *DescribeIAMPolicyAssignmentInput) SetAwsAccountId(v string) *DescribeIAMPolicyAssignmentInput { s.AwsAccountId = &v return s } // SetNamespace sets the Namespace field's value. -func (s *DeleteIAMPolicyAssignmentInput) SetNamespace(v string) *DeleteIAMPolicyAssignmentInput { +func (s *DescribeIAMPolicyAssignmentInput) SetNamespace(v string) *DescribeIAMPolicyAssignmentInput { s.Namespace = &v return s } -type DeleteIAMPolicyAssignmentOutput struct { +type DescribeIAMPolicyAssignmentOutput struct { _ struct{} `type:"structure"` - // The name of the assignment. - AssignmentName *string `min:"1" type:"string"` + // Information describing the IAM policy assignment. + IAMPolicyAssignment *IAMPolicyAssignment `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -12295,85 +15757,82 @@ type DeleteIAMPolicyAssignmentOutput struct { } // String returns the string representation -func (s DeleteIAMPolicyAssignmentOutput) String() string { +func (s DescribeIAMPolicyAssignmentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteIAMPolicyAssignmentOutput) GoString() string { +func (s DescribeIAMPolicyAssignmentOutput) GoString() string { return s.String() } -// SetAssignmentName sets the AssignmentName field's value. -func (s *DeleteIAMPolicyAssignmentOutput) SetAssignmentName(v string) *DeleteIAMPolicyAssignmentOutput { - s.AssignmentName = &v +// SetIAMPolicyAssignment sets the IAMPolicyAssignment field's value. +func (s *DescribeIAMPolicyAssignmentOutput) SetIAMPolicyAssignment(v *IAMPolicyAssignment) *DescribeIAMPolicyAssignmentOutput { + s.IAMPolicyAssignment = v return s } // SetRequestId sets the RequestId field's value. -func (s *DeleteIAMPolicyAssignmentOutput) SetRequestId(v string) *DeleteIAMPolicyAssignmentOutput { +func (s *DescribeIAMPolicyAssignmentOutput) SetRequestId(v string) *DescribeIAMPolicyAssignmentOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteIAMPolicyAssignmentOutput) SetStatus(v int64) *DeleteIAMPolicyAssignmentOutput { +func (s *DescribeIAMPolicyAssignmentOutput) SetStatus(v int64) *DescribeIAMPolicyAssignmentOutput { s.Status = &v return s } -type DeleteTemplateAliasInput struct { +type DescribeIngestionInput struct { _ struct{} `type:"structure"` - // The name for the template alias. To delete a specific alias, you delete the - // version that the alias points to. You can specify the alias name, or specify - // the latest version of the template by providing the keyword $LATEST in the - // AliasName parameter. - // - // AliasName is a required field - AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - - // The ID of the AWS account that contains the item to delete. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the template that the specified alias is for. + // The ID of the dataset used in the ingestion. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + + // An ID for the ingestion. + // + // IngestionId is a required field + IngestionId *string `location:"uri" locationName:"IngestionId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DeleteTemplateAliasInput) String() string { +func (s DescribeIngestionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteTemplateAliasInput) GoString() string { +func (s DescribeIngestionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteTemplateAliasInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateAliasInput"} - if s.AliasName == nil { - invalidParams.Add(request.NewErrParamRequired("AliasName")) - } - if s.AliasName != nil && len(*s.AliasName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) - } +func (s *DescribeIngestionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeIngestionInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.IngestionId == nil { + invalidParams.Add(request.NewErrParamRequired("IngestionId")) + } + if s.IngestionId != nil && len(*s.IngestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IngestionId", 1)) } if invalidParams.Len() > 0 { @@ -12382,114 +15841,106 @@ func (s *DeleteTemplateAliasInput) Validate() error { return nil } -// SetAliasName sets the AliasName field's value. -func (s *DeleteTemplateAliasInput) SetAliasName(v string) *DeleteTemplateAliasInput { - s.AliasName = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *DescribeIngestionInput) SetAwsAccountId(v string) *DescribeIngestionInput { + s.AwsAccountId = &v return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteTemplateAliasInput) SetAwsAccountId(v string) *DeleteTemplateAliasInput { - s.AwsAccountId = &v +// SetDataSetId sets the DataSetId field's value. +func (s *DescribeIngestionInput) SetDataSetId(v string) *DescribeIngestionInput { + s.DataSetId = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *DeleteTemplateAliasInput) SetTemplateId(v string) *DeleteTemplateAliasInput { - s.TemplateId = &v +// SetIngestionId sets the IngestionId field's value. +func (s *DescribeIngestionInput) SetIngestionId(v string) *DescribeIngestionInput { + s.IngestionId = &v return s } -type DeleteTemplateAliasOutput struct { +type DescribeIngestionOutput struct { _ struct{} `type:"structure"` - // The name for the template alias. - AliasName *string `min:"1" type:"string"` - - // The Amazon Resource Name (ARN) of the template you want to delete. - Arn *string `type:"string"` + // Information about the ingestion. + Ingestion *Ingestion `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` - - // An ID for the template associated with the deletion. - TemplateId *string `min:"1" type:"string"` } // String returns the string representation -func (s DeleteTemplateAliasOutput) String() string { +func (s DescribeIngestionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteTemplateAliasOutput) GoString() string { +func (s DescribeIngestionOutput) GoString() string { return s.String() } -// SetAliasName sets the AliasName field's value. -func (s *DeleteTemplateAliasOutput) SetAliasName(v string) *DeleteTemplateAliasOutput { - s.AliasName = &v - return s -} - -// SetArn sets the Arn field's value. -func (s *DeleteTemplateAliasOutput) SetArn(v string) *DeleteTemplateAliasOutput { - s.Arn = &v +// SetIngestion sets the Ingestion field's value. +func (s *DescribeIngestionOutput) SetIngestion(v *Ingestion) *DescribeIngestionOutput { + s.Ingestion = v return s } // SetRequestId sets the RequestId field's value. -func (s *DeleteTemplateAliasOutput) SetRequestId(v string) *DeleteTemplateAliasOutput { +func (s *DescribeIngestionOutput) SetRequestId(v string) *DescribeIngestionOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteTemplateAliasOutput) SetStatus(v int64) *DeleteTemplateAliasOutput { +func (s *DescribeIngestionOutput) SetStatus(v int64) *DescribeIngestionOutput { s.Status = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *DeleteTemplateAliasOutput) SetTemplateId(v string) *DeleteTemplateAliasOutput { - s.TemplateId = &v - return s -} - -type DeleteTemplateInput struct { +type DescribeTemplateAliasInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the template that you're deleting. + // The name of the template alias that you want to describe. If you name a specific + // alias, you describe the version that the alias points to. You can specify + // the latest version of the template by providing the keyword $LATEST in the + // AliasName parameter. The keyword $PUBLISHED doesn't apply to templates. + // + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` + + // The ID of the AWS account that contains the template alias that you're describing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // An ID for the template you want to delete. + // The ID for the template. // // TemplateId is a required field TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` - - // Specifies the version of the template that you want to delete. If you don't - // provide a version number, DeleteTemplate deletes all versions of the template. - VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } // String returns the string representation -func (s DeleteTemplateInput) String() string { +func (s DescribeTemplateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteTemplateInput) GoString() string { +func (s DescribeTemplateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateInput"} +func (s *DescribeTemplateAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTemplateAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) + } + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -12502,9 +15953,6 @@ func (s *DeleteTemplateInput) Validate() error { if s.TemplateId != nil && len(*s.TemplateId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) } - if s.VersionNumber != nil && *s.VersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) - } if invalidParams.Len() > 0 { return invalidParams @@ -12512,124 +15960,119 @@ func (s *DeleteTemplateInput) Validate() error { return nil } +// SetAliasName sets the AliasName field's value. +func (s *DescribeTemplateAliasInput) SetAliasName(v string) *DescribeTemplateAliasInput { + s.AliasName = &v + return s +} + // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteTemplateInput) SetAwsAccountId(v string) *DeleteTemplateInput { +func (s *DescribeTemplateAliasInput) SetAwsAccountId(v string) *DescribeTemplateAliasInput { s.AwsAccountId = &v return s } // SetTemplateId sets the TemplateId field's value. -func (s *DeleteTemplateInput) SetTemplateId(v string) *DeleteTemplateInput { +func (s *DescribeTemplateAliasInput) SetTemplateId(v string) *DescribeTemplateAliasInput { s.TemplateId = &v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *DeleteTemplateInput) SetVersionNumber(v int64) *DeleteTemplateInput { - s.VersionNumber = &v - return s -} - -type DeleteTemplateOutput struct { +type DescribeTemplateAliasOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. - Arn *string `type:"string"` - // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` - // An ID for the template. - TemplateId *string `min:"1" type:"string"` + // Information about the template alias. + TemplateAlias *TemplateAlias `type:"structure"` } // String returns the string representation -func (s DeleteTemplateOutput) String() string { +func (s DescribeTemplateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteTemplateOutput) GoString() string { +func (s DescribeTemplateAliasOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *DeleteTemplateOutput) SetArn(v string) *DeleteTemplateOutput { - s.Arn = &v - return s -} - // SetRequestId sets the RequestId field's value. -func (s *DeleteTemplateOutput) SetRequestId(v string) *DeleteTemplateOutput { +func (s *DescribeTemplateAliasOutput) SetRequestId(v string) *DescribeTemplateAliasOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteTemplateOutput) SetStatus(v int64) *DeleteTemplateOutput { +func (s *DescribeTemplateAliasOutput) SetStatus(v int64) *DescribeTemplateAliasOutput { s.Status = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *DeleteTemplateOutput) SetTemplateId(v string) *DeleteTemplateOutput { - s.TemplateId = &v +// SetTemplateAlias sets the TemplateAlias field's value. +func (s *DescribeTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *DescribeTemplateAliasOutput { + s.TemplateAlias = v return s } -type DeleteUserByPrincipalIdInput struct { +type DescribeTemplateInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the user is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The alias of the template that you want to describe. If you name a specific + // alias, you describe the version that the alias points to. You can specify + // the latest version of the template by providing the keyword $LATEST in the + // 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 AWS account that contains the template that you're describing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The namespace. Currently, you should set this to default. + // The ID for the template. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` - // The principal ID of the user. - // - // PrincipalId is a required field - PrincipalId *string `location:"uri" locationName:"PrincipalId" type:"string" required:"true"` + // (Optional) The number for the version to describe. If a VersionNumber parameter + // value isn't provided, the latest version of the template is described. + VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } // String returns the string representation -func (s DeleteUserByPrincipalIdInput) String() string { +func (s DescribeTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteUserByPrincipalIdInput) GoString() string { +func (s DescribeTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteUserByPrincipalIdInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteUserByPrincipalIdInput"} +func (s *DescribeTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTemplateInput"} + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) } - if s.PrincipalId == nil { - invalidParams.Add(request.NewErrParamRequired("PrincipalId")) + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) } - if s.PrincipalId != nil && len(*s.PrincipalId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1)) + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -12638,106 +16081,108 @@ func (s *DeleteUserByPrincipalIdInput) Validate() error { return nil } +// SetAliasName sets the AliasName field's value. +func (s *DescribeTemplateInput) SetAliasName(v string) *DescribeTemplateInput { + s.AliasName = &v + return s +} + // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteUserByPrincipalIdInput) SetAwsAccountId(v string) *DeleteUserByPrincipalIdInput { +func (s *DescribeTemplateInput) SetAwsAccountId(v string) *DescribeTemplateInput { s.AwsAccountId = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *DeleteUserByPrincipalIdInput) SetNamespace(v string) *DeleteUserByPrincipalIdInput { - s.Namespace = &v +// SetTemplateId sets the TemplateId field's value. +func (s *DescribeTemplateInput) SetTemplateId(v string) *DescribeTemplateInput { + s.TemplateId = &v return s } -// SetPrincipalId sets the PrincipalId field's value. -func (s *DeleteUserByPrincipalIdInput) SetPrincipalId(v string) *DeleteUserByPrincipalIdInput { - s.PrincipalId = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *DescribeTemplateInput) SetVersionNumber(v int64) *DescribeTemplateInput { + s.VersionNumber = &v return s } -type DeleteUserByPrincipalIdOutput struct { +type DescribeTemplateOutput struct { _ struct{} `type:"structure"` - // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The template structure for the object you want to describe. + Template *Template `type:"structure"` } // String returns the string representation -func (s DeleteUserByPrincipalIdOutput) String() string { +func (s DescribeTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteUserByPrincipalIdOutput) GoString() string { +func (s DescribeTemplateOutput) GoString() string { return s.String() } // SetRequestId sets the RequestId field's value. -func (s *DeleteUserByPrincipalIdOutput) SetRequestId(v string) *DeleteUserByPrincipalIdOutput { +func (s *DescribeTemplateOutput) SetRequestId(v string) *DescribeTemplateOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteUserByPrincipalIdOutput) SetStatus(v int64) *DeleteUserByPrincipalIdOutput { +func (s *DescribeTemplateOutput) SetStatus(v int64) *DescribeTemplateOutput { s.Status = &v return s } -type DeleteUserInput struct { +// SetTemplate sets the Template field's value. +func (s *DescribeTemplateOutput) SetTemplate(v *Template) *DescribeTemplateOutput { + s.Template = v + return s +} + +type DescribeTemplatePermissionsInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the user is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The ID of the AWS account that contains the template that you're describing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The namespace. Currently, you should set this to default. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - - // The name of the user that you want to delete. + // The ID for the template. // - // UserName is a required field - UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DeleteUserInput) String() string { +func (s DescribeTemplatePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteUserInput) GoString() string { +func (s DescribeTemplatePermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteUserInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"} +func (s *DescribeTemplatePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeTemplatePermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - if s.UserName == nil { - invalidParams.Add(request.NewErrParamRequired("UserName")) + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) } - if s.UserName != nil && len(*s.UserName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) } if invalidParams.Len() > 0 { @@ -12747,89 +16192,111 @@ func (s *DeleteUserInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DeleteUserInput) SetAwsAccountId(v string) *DeleteUserInput { +func (s *DescribeTemplatePermissionsInput) SetAwsAccountId(v string) *DescribeTemplatePermissionsInput { s.AwsAccountId = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *DeleteUserInput) SetNamespace(v string) *DeleteUserInput { - s.Namespace = &v - return s -} - -// SetUserName sets the UserName field's value. -func (s *DeleteUserInput) SetUserName(v string) *DeleteUserInput { - s.UserName = &v +// SetTemplateId sets the TemplateId field's value. +func (s *DescribeTemplatePermissionsInput) SetTemplateId(v string) *DescribeTemplatePermissionsInput { + s.TemplateId = &v return s } -type DeleteUserOutput struct { +type DescribeTemplatePermissionsOutput struct { _ struct{} `type:"structure"` + // A list of resource permissions to be set on the template. + Permissions []*ResourcePermission `min:"1" type:"list"` + // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The Amazon Resource Name (ARN) of the template. + TemplateArn *string `type:"string"` + + // The ID for the template. + TemplateId *string `min:"1" type:"string"` } // String returns the string representation -func (s DeleteUserOutput) String() string { +func (s DescribeTemplatePermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteUserOutput) GoString() string { +func (s DescribeTemplatePermissionsOutput) GoString() string { return s.String() } +// SetPermissions sets the Permissions field's value. +func (s *DescribeTemplatePermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeTemplatePermissionsOutput { + s.Permissions = v + return s +} + // SetRequestId sets the RequestId field's value. -func (s *DeleteUserOutput) SetRequestId(v string) *DeleteUserOutput { +func (s *DescribeTemplatePermissionsOutput) SetRequestId(v string) *DescribeTemplatePermissionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DeleteUserOutput) SetStatus(v int64) *DeleteUserOutput { +func (s *DescribeTemplatePermissionsOutput) SetStatus(v int64) *DescribeTemplatePermissionsOutput { s.Status = &v return s } -type DescribeDashboardInput struct { +// SetTemplateArn sets the TemplateArn field's value. +func (s *DescribeTemplatePermissionsOutput) SetTemplateArn(v string) *DescribeTemplatePermissionsOutput { + s.TemplateArn = &v + return s +} + +// SetTemplateId sets the TemplateId field's value. +func (s *DescribeTemplatePermissionsOutput) SetTemplateId(v string) *DescribeTemplatePermissionsOutput { + s.TemplateId = &v + return s +} + +type DescribeThemeAliasInput struct { _ struct{} `type:"structure"` - // The alias name. - AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` + // The name of the theme alias that you want to describe. + // + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the AWS account that contains the dashboard that you're describing. + // The ID of the AWS 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"` - // The ID for the dashboard. + // The ID for the theme. // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` - - // The version number for the dashboard. If a version number isn't passed, the - // latest published dashboard version is described. - VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DescribeDashboardInput) String() string { +func (s DescribeThemeAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDashboardInput) GoString() string { +func (s DescribeThemeAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDashboardInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDashboardInput"} +func (s *DescribeThemeAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeThemeAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) + } if s.AliasName != nil && len(*s.AliasName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) } @@ -12839,14 +16306,11 @@ func (s *DescribeDashboardInput) Validate() error { if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) - } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.VersionNumber != nil && *s.VersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if invalidParams.Len() > 0 { @@ -12856,109 +16320,118 @@ func (s *DescribeDashboardInput) Validate() error { } // SetAliasName sets the AliasName field's value. -func (s *DescribeDashboardInput) SetAliasName(v string) *DescribeDashboardInput { +func (s *DescribeThemeAliasInput) SetAliasName(v string) *DescribeThemeAliasInput { s.AliasName = &v return s } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeDashboardInput) SetAwsAccountId(v string) *DescribeDashboardInput { +func (s *DescribeThemeAliasInput) SetAwsAccountId(v string) *DescribeThemeAliasInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *DescribeDashboardInput) SetDashboardId(v string) *DescribeDashboardInput { - s.DashboardId = &v - return s -} - -// SetVersionNumber sets the VersionNumber field's value. -func (s *DescribeDashboardInput) SetVersionNumber(v int64) *DescribeDashboardInput { - s.VersionNumber = &v +// SetThemeId sets the ThemeId field's value. +func (s *DescribeThemeAliasInput) SetThemeId(v string) *DescribeThemeAliasInput { + s.ThemeId = &v return s } -type DescribeDashboardOutput struct { +type DescribeThemeAliasOutput struct { _ struct{} `type:"structure"` - // Information about the dashboard. - Dashboard *Dashboard `type:"structure"` - // The AWS request ID for this operation. RequestId *string `type:"string"` - // The HTTP status of this request. + // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // Information about the theme alias. + ThemeAlias *ThemeAlias `type:"structure"` } // String returns the string representation -func (s DescribeDashboardOutput) String() string { +func (s DescribeThemeAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDashboardOutput) GoString() string { +func (s DescribeThemeAliasOutput) GoString() string { return s.String() } -// SetDashboard sets the Dashboard field's value. -func (s *DescribeDashboardOutput) SetDashboard(v *Dashboard) *DescribeDashboardOutput { - s.Dashboard = v - return s -} - // SetRequestId sets the RequestId field's value. -func (s *DescribeDashboardOutput) SetRequestId(v string) *DescribeDashboardOutput { +func (s *DescribeThemeAliasOutput) SetRequestId(v string) *DescribeThemeAliasOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DescribeDashboardOutput) SetStatus(v int64) *DescribeDashboardOutput { +func (s *DescribeThemeAliasOutput) SetStatus(v int64) *DescribeThemeAliasOutput { s.Status = &v return s } -type DescribeDashboardPermissionsInput struct { +// SetThemeAlias sets the ThemeAlias field's value. +func (s *DescribeThemeAliasOutput) SetThemeAlias(v *ThemeAlias) *DescribeThemeAliasOutput { + s.ThemeAlias = v + return s +} + +type DescribeThemeInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboard that you're describing - // permissions for. + // The alias of the theme that you want to describe. If you name a specific + // alias, you describe the version that the alias points to. You can specify + // the latest version of the theme by providing the keyword $LATEST in the AliasName + // parameter. The keyword $PUBLISHED doesn't apply to themes. + AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` + + // The ID of the AWS account that contains the theme that you're describing. // // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" type:"string" required:"true"` - // The ID for the dashboard, also added to the IAM policy. + // The ID for the theme. // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` + + // The version number for the version to describe. If a VersionNumber parameter + // value isn't provided, the latest version of the theme is described. + VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` } // String returns the string representation -func (s DescribeDashboardPermissionsInput) String() string { +func (s DescribeThemeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDashboardPermissionsInput) GoString() string { +func (s DescribeThemeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDashboardPermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDashboardPermissionsInput"} +func (s *DescribeThemeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeThemeInput"} + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 1)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) + } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -12967,116 +16440,109 @@ func (s *DescribeDashboardPermissionsInput) Validate() error { return nil } +// SetAliasName sets the AliasName field's value. +func (s *DescribeThemeInput) SetAliasName(v string) *DescribeThemeInput { + s.AliasName = &v + return s +} + // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeDashboardPermissionsInput) SetAwsAccountId(v string) *DescribeDashboardPermissionsInput { +func (s *DescribeThemeInput) SetAwsAccountId(v string) *DescribeThemeInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *DescribeDashboardPermissionsInput) SetDashboardId(v string) *DescribeDashboardPermissionsInput { - s.DashboardId = &v +// SetThemeId sets the ThemeId field's value. +func (s *DescribeThemeInput) SetThemeId(v string) *DescribeThemeInput { + s.ThemeId = &v return s } -type DescribeDashboardPermissionsOutput struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the dashboard. - DashboardArn *string `type:"string"` - - // The ID for the dashboard. - DashboardId *string `min:"1" type:"string"` +// SetVersionNumber sets the VersionNumber field's value. +func (s *DescribeThemeInput) SetVersionNumber(v int64) *DescribeThemeInput { + s.VersionNumber = &v + return s +} - // A structure that contains the permissions for the dashboard. - Permissions []*ResourcePermission `min:"1" type:"list"` +type DescribeThemeOutput struct { + _ struct{} `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The information about the theme that you are describing. + Theme *Theme `type:"structure"` } // String returns the string representation -func (s DescribeDashboardPermissionsOutput) String() string { +func (s DescribeThemeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDashboardPermissionsOutput) GoString() string { +func (s DescribeThemeOutput) GoString() string { return s.String() } -// SetDashboardArn sets the DashboardArn field's value. -func (s *DescribeDashboardPermissionsOutput) SetDashboardArn(v string) *DescribeDashboardPermissionsOutput { - s.DashboardArn = &v - return s -} - -// SetDashboardId sets the DashboardId field's value. -func (s *DescribeDashboardPermissionsOutput) SetDashboardId(v string) *DescribeDashboardPermissionsOutput { - s.DashboardId = &v - return s -} - -// SetPermissions sets the Permissions field's value. -func (s *DescribeDashboardPermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeDashboardPermissionsOutput { - s.Permissions = v - return s -} - // SetRequestId sets the RequestId field's value. -func (s *DescribeDashboardPermissionsOutput) SetRequestId(v string) *DescribeDashboardPermissionsOutput { +func (s *DescribeThemeOutput) SetRequestId(v string) *DescribeThemeOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DescribeDashboardPermissionsOutput) SetStatus(v int64) *DescribeDashboardPermissionsOutput { +func (s *DescribeThemeOutput) SetStatus(v int64) *DescribeThemeOutput { s.Status = &v return s } -type DescribeDataSetInput struct { +// SetTheme sets the Theme field's value. +func (s *DescribeThemeOutput) SetTheme(v *Theme) *DescribeThemeOutput { + s.Theme = v + return s +} + +type DescribeThemePermissionsInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The ID of the AWS account that contains the theme that you're describing. // // 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 AWS - // Region for each AWS account. + // The ID for the theme that you want to describe permissions for. // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DescribeDataSetInput) String() string { +func (s DescribeThemePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSetInput) GoString() string { +func (s DescribeThemePermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDataSetInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDataSetInput"} +func (s *DescribeThemePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeThemePermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if invalidParams.Len() > 0 { @@ -13086,97 +16552,126 @@ func (s *DescribeDataSetInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeDataSetInput) SetAwsAccountId(v string) *DescribeDataSetInput { +func (s *DescribeThemePermissionsInput) SetAwsAccountId(v string) *DescribeThemePermissionsInput { s.AwsAccountId = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *DescribeDataSetInput) SetDataSetId(v string) *DescribeDataSetInput { - s.DataSetId = &v +// SetThemeId sets the ThemeId field's value. +func (s *DescribeThemePermissionsInput) SetThemeId(v string) *DescribeThemePermissionsInput { + s.ThemeId = &v return s } -type DescribeDataSetOutput struct { +type DescribeThemePermissionsOutput struct { _ struct{} `type:"structure"` - // Information on the dataset. - DataSet *DataSet `type:"structure"` + // A list of resource permissions set on the theme. + Permissions []*ResourcePermission `min:"1" type:"list"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The Amazon Resource Name (ARN) of the theme. + ThemeArn *string `type:"string"` + + // The ID for the theme. + ThemeId *string `min:"1" type:"string"` } // String returns the string representation -func (s DescribeDataSetOutput) String() string { +func (s DescribeThemePermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSetOutput) GoString() string { +func (s DescribeThemePermissionsOutput) GoString() string { return s.String() } -// SetDataSet sets the DataSet field's value. -func (s *DescribeDataSetOutput) SetDataSet(v *DataSet) *DescribeDataSetOutput { - s.DataSet = v +// SetPermissions sets the Permissions field's value. +func (s *DescribeThemePermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeThemePermissionsOutput { + s.Permissions = v return s } // SetRequestId sets the RequestId field's value. -func (s *DescribeDataSetOutput) SetRequestId(v string) *DescribeDataSetOutput { +func (s *DescribeThemePermissionsOutput) SetRequestId(v string) *DescribeThemePermissionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DescribeDataSetOutput) SetStatus(v int64) *DescribeDataSetOutput { +func (s *DescribeThemePermissionsOutput) SetStatus(v int64) *DescribeThemePermissionsOutput { s.Status = &v return s } -type DescribeDataSetPermissionsInput struct { +// SetThemeArn sets the ThemeArn field's value. +func (s *DescribeThemePermissionsOutput) SetThemeArn(v string) *DescribeThemePermissionsOutput { + s.ThemeArn = &v + return s +} + +// SetThemeId sets the ThemeId field's value. +func (s *DescribeThemePermissionsOutput) SetThemeId(v string) *DescribeThemePermissionsOutput { + s.ThemeId = &v + return s +} + +type DescribeUserInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The ID for the AWS account that the user is in. Currently, you use the ID + // for the AWS 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 ID for the dataset that you want to create. This ID is unique per AWS - // Region for each AWS account. + // The namespace. Currently, you should set this to default. // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The name of the user that you want to describe. + // + // UserName is a required field + UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DescribeDataSetPermissionsInput) String() string { +func (s DescribeUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSetPermissionsInput) GoString() string { +func (s DescribeUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDataSetPermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDataSetPermissionsInput"} +func (s *DescribeUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeUserInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 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 { @@ -13186,216 +16681,210 @@ func (s *DescribeDataSetPermissionsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeDataSetPermissionsInput) SetAwsAccountId(v string) *DescribeDataSetPermissionsInput { +func (s *DescribeUserInput) SetAwsAccountId(v string) *DescribeUserInput { s.AwsAccountId = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *DescribeDataSetPermissionsInput) SetDataSetId(v string) *DescribeDataSetPermissionsInput { - s.DataSetId = &v +// SetNamespace sets the Namespace field's value. +func (s *DescribeUserInput) SetNamespace(v string) *DescribeUserInput { + s.Namespace = &v return s } -type DescribeDataSetPermissionsOutput struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the dataset. - DataSetArn *string `type:"string"` - - // The ID for the dataset that you want to create. This ID is unique per AWS - // Region for each AWS account. - DataSetId *string `type:"string"` +// SetUserName sets the UserName field's value. +func (s *DescribeUserInput) SetUserName(v string) *DescribeUserInput { + s.UserName = &v + return s +} - // A list of resource permissions on the dataset. - Permissions []*ResourcePermission `min:"1" type:"list"` +type DescribeUserOutput struct { + _ struct{} `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The user name. + User *User `type:"structure"` } // String returns the string representation -func (s DescribeDataSetPermissionsOutput) String() string { +func (s DescribeUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSetPermissionsOutput) GoString() string { +func (s DescribeUserOutput) GoString() string { return s.String() } -// SetDataSetArn sets the DataSetArn field's value. -func (s *DescribeDataSetPermissionsOutput) SetDataSetArn(v string) *DescribeDataSetPermissionsOutput { - s.DataSetArn = &v - return s -} - -// SetDataSetId sets the DataSetId field's value. -func (s *DescribeDataSetPermissionsOutput) SetDataSetId(v string) *DescribeDataSetPermissionsOutput { - s.DataSetId = &v - return s -} - -// SetPermissions sets the Permissions field's value. -func (s *DescribeDataSetPermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeDataSetPermissionsOutput { - s.Permissions = v - return s -} - // SetRequestId sets the RequestId field's value. -func (s *DescribeDataSetPermissionsOutput) SetRequestId(v string) *DescribeDataSetPermissionsOutput { +func (s *DescribeUserOutput) SetRequestId(v string) *DescribeUserOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DescribeDataSetPermissionsOutput) SetStatus(v int64) *DescribeDataSetPermissionsOutput { +func (s *DescribeUserOutput) SetStatus(v int64) *DescribeUserOutput { s.Status = &v return s } -type DescribeDataSourceInput struct { - _ struct{} `type:"structure"` +// SetUser sets the User field's value. +func (s *DescribeUserOutput) SetUser(v *User) *DescribeUserOutput { + s.User = v + return s +} - // The AWS account ID. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` +// The domain specified isn't on the allow list. All domains for embedded dashboards +// must be added to the approved list by an Amazon QuickSight admin. +type DomainNotWhitelistedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - // - // DataSourceId is a required field - DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` + Message_ *string `locationName:"Message" type:"string"` + + // The AWS request ID for this request. + RequestId *string `type:"string"` } // String returns the string representation -func (s DescribeDataSourceInput) String() string { +func (s DomainNotWhitelistedException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSourceInput) GoString() string { +func (s DomainNotWhitelistedException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDataSourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDataSourceInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.DataSourceId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceId")) - } - if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) +func newErrorDomainNotWhitelistedException(v protocol.ResponseMetadata) error { + return &DomainNotWhitelistedException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *DomainNotWhitelistedException) Code() string { + return "DomainNotWhitelistedException" +} + +// Message returns the exception's message. +func (s *DomainNotWhitelistedException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DomainNotWhitelistedException) OrigErr() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeDataSourceInput) SetAwsAccountId(v string) *DescribeDataSourceInput { - s.AwsAccountId = &v - return s +func (s *DomainNotWhitelistedException) 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 *DomainNotWhitelistedException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetDataSourceId sets the DataSourceId field's value. -func (s *DescribeDataSourceInput) SetDataSourceId(v string) *DescribeDataSourceInput { - s.DataSourceId = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *DomainNotWhitelistedException) RequestID() string { + return s.RespMetadata.RequestID } -type DescribeDataSourceOutput struct { +// Error information for the SPICE ingestion of a dataset. +type ErrorInfo struct { _ struct{} `type:"structure"` - // The information on the data source. - DataSource *DataSource `type:"structure"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // Error message. + Message *string `type:"string"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Error type. + Type *string `type:"string" enum:"IngestionErrorType"` } // String returns the string representation -func (s DescribeDataSourceOutput) String() string { +func (s ErrorInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSourceOutput) GoString() string { +func (s ErrorInfo) GoString() string { return s.String() } -// SetDataSource sets the DataSource field's value. -func (s *DescribeDataSourceOutput) SetDataSource(v *DataSource) *DescribeDataSourceOutput { - s.DataSource = v +// SetMessage sets the Message field's value. +func (s *ErrorInfo) SetMessage(v string) *ErrorInfo { + s.Message = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *DescribeDataSourceOutput) SetRequestId(v string) *DescribeDataSourceOutput { - s.RequestId = &v +// SetType sets the Type field's value. +func (s *ErrorInfo) SetType(v string) *ErrorInfo { + s.Type = &v return s } -// SetStatus sets the Status field's value. -func (s *DescribeDataSourceOutput) SetStatus(v int64) *DescribeDataSourceOutput { - s.Status = &v +// Export to .csv option. +type ExportToCSVOption struct { + _ struct{} `type:"structure"` + + // Availability status. + AvailabilityStatus *string `type:"string" enum:"DashboardBehavior"` +} + +// String returns the string representation +func (s ExportToCSVOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ExportToCSVOption) GoString() string { + return s.String() +} + +// SetAvailabilityStatus sets the AvailabilityStatus field's value. +func (s *ExportToCSVOption) SetAvailabilityStatus(v string) *ExportToCSVOption { + s.AvailabilityStatus = &v return s } -type DescribeDataSourcePermissionsInput struct { +// A transform operation that filters rows based on a condition. +type FilterOperation struct { _ struct{} `type:"structure"` - // The AWS 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 AWS Region for each AWS - // account. + // An expression that must evaluate to a Boolean value. Rows for which the expression + // evaluates to true are kept in the dataset. // - // DataSourceId is a required field - DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` + // ConditionExpression is a required field + ConditionExpression *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DescribeDataSourcePermissionsInput) String() string { +func (s FilterOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSourcePermissionsInput) GoString() string { +func (s FilterOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeDataSourcePermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeDataSourcePermissionsInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.DataSourceId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceId")) +func (s *FilterOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterOperation"} + if s.ConditionExpression == nil { + invalidParams.Add(request.NewErrParamRequired("ConditionExpression")) } - if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) + if s.ConditionExpression != nil && len(*s.ConditionExpression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ConditionExpression", 1)) } if invalidParams.Len() > 0 { @@ -13404,128 +16893,158 @@ func (s *DescribeDataSourcePermissionsInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeDataSourcePermissionsInput) SetAwsAccountId(v string) *DescribeDataSourcePermissionsInput { - s.AwsAccountId = &v - return s -} - -// SetDataSourceId sets the DataSourceId field's value. -func (s *DescribeDataSourcePermissionsInput) SetDataSourceId(v string) *DescribeDataSourcePermissionsInput { - s.DataSourceId = &v +// SetConditionExpression sets the ConditionExpression field's value. +func (s *FilterOperation) SetConditionExpression(v string) *FilterOperation { + s.ConditionExpression = &v return s } -type DescribeDataSourcePermissionsOutput struct { +// Geospatial column group that denotes a hierarchy. +type GeoSpatialColumnGroup struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the data source. - DataSourceArn *string `type:"string"` - - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - DataSourceId *string `type:"string"` - - // A list of resource permissions on the data source. - Permissions []*ResourcePermission `min:"1" type:"list"` + // Columns in this hierarchy. + // + // Columns is a required field + Columns []*string `min:"1" type:"list" required:"true"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // Country code. + // + // CountryCode is a required field + CountryCode *string `type:"string" required:"true" enum:"GeoSpatialCountryCode"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // A display name for the hierarchy. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s DescribeDataSourcePermissionsOutput) String() string { +func (s GeoSpatialColumnGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeDataSourcePermissionsOutput) GoString() string { +func (s GeoSpatialColumnGroup) GoString() string { return s.String() } -// SetDataSourceArn sets the DataSourceArn field's value. -func (s *DescribeDataSourcePermissionsOutput) SetDataSourceArn(v string) *DescribeDataSourcePermissionsOutput { - s.DataSourceArn = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *GeoSpatialColumnGroup) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GeoSpatialColumnGroup"} + if s.Columns == nil { + invalidParams.Add(request.NewErrParamRequired("Columns")) + } + if s.Columns != nil && len(s.Columns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) + } + if s.CountryCode == nil { + invalidParams.Add(request.NewErrParamRequired("CountryCode")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } -// SetDataSourceId sets the DataSourceId field's value. -func (s *DescribeDataSourcePermissionsOutput) SetDataSourceId(v string) *DescribeDataSourcePermissionsOutput { - s.DataSourceId = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetPermissions sets the Permissions field's value. -func (s *DescribeDataSourcePermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeDataSourcePermissionsOutput { - s.Permissions = v +// SetColumns sets the Columns field's value. +func (s *GeoSpatialColumnGroup) SetColumns(v []*string) *GeoSpatialColumnGroup { + s.Columns = v return s } -// SetRequestId sets the RequestId field's value. -func (s *DescribeDataSourcePermissionsOutput) SetRequestId(v string) *DescribeDataSourcePermissionsOutput { - s.RequestId = &v +// SetCountryCode sets the CountryCode field's value. +func (s *GeoSpatialColumnGroup) SetCountryCode(v string) *GeoSpatialColumnGroup { + s.CountryCode = &v return s } -// SetStatus sets the Status field's value. -func (s *DescribeDataSourcePermissionsOutput) SetStatus(v int64) *DescribeDataSourcePermissionsOutput { - s.Status = &v +// SetName sets the Name field's value. +func (s *GeoSpatialColumnGroup) SetName(v string) *GeoSpatialColumnGroup { + s.Name = &v return s } -type DescribeGroupInput struct { +type GetDashboardEmbedUrlInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The ID for the AWS account that contains the dashboard that you're embedding. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The name of the group that you want to describe. + // The ID for the dashboard, also added to the IAM policy. // - // GroupName is a required field - GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` - // The namespace. Currently, you should set this to default. + // The authentication method that the user uses to sign in. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // IdentityType is a required field + IdentityType *string `location:"querystring" locationName:"creds-type" type:"string" required:"true" enum:"IdentityType"` + + // Remove the reset button on the embedded dashboard. The default is FALSE, + // which enables the reset button. + ResetDisabled *bool `location:"querystring" locationName:"reset-disabled" type:"boolean"` + + // How many minutes the session is valid. The session lifetime must be 15-600 + // minutes. + SessionLifetimeInMinutes *int64 `location:"querystring" locationName:"session-lifetime" min:"15" type:"long"` + + // Remove the undo/redo button on the embedded dashboard. The default is FALSE, + // which enables the undo/redo button. + UndoRedoDisabled *bool `location:"querystring" locationName:"undo-redo-disabled" type:"boolean"` + + // 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. + UserArn *string `location:"querystring" locationName:"user-arn" type:"string"` } // String returns the string representation -func (s DescribeGroupInput) String() string { +func (s GetDashboardEmbedUrlInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeGroupInput) GoString() string { +func (s GetDashboardEmbedUrlInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeGroupInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeGroupInput"} +func (s *GetDashboardEmbedUrlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDashboardEmbedUrlInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.GroupName == nil { - invalidParams.Add(request.NewErrParamRequired("GroupName")) + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) } - if s.GroupName != nil && len(*s.GroupName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.IdentityType == nil { + invalidParams.Add(request.NewErrParamRequired("IdentityType")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.SessionLifetimeInMinutes != nil && *s.SessionLifetimeInMinutes < 15 { + invalidParams.Add(request.NewErrParamMinValue("SessionLifetimeInMinutes", 15)) } if invalidParams.Len() > 0 { @@ -13535,28 +17054,55 @@ func (s *DescribeGroupInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeGroupInput) SetAwsAccountId(v string) *DescribeGroupInput { +func (s *GetDashboardEmbedUrlInput) SetAwsAccountId(v string) *GetDashboardEmbedUrlInput { s.AwsAccountId = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *DescribeGroupInput) SetGroupName(v string) *DescribeGroupInput { - s.GroupName = &v +// SetDashboardId sets the DashboardId field's value. +func (s *GetDashboardEmbedUrlInput) SetDashboardId(v string) *GetDashboardEmbedUrlInput { + s.DashboardId = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *DescribeGroupInput) SetNamespace(v string) *DescribeGroupInput { - s.Namespace = &v +// SetIdentityType sets the IdentityType field's value. +func (s *GetDashboardEmbedUrlInput) SetIdentityType(v string) *GetDashboardEmbedUrlInput { + s.IdentityType = &v return s } -type DescribeGroupOutput struct { +// SetResetDisabled sets the ResetDisabled field's value. +func (s *GetDashboardEmbedUrlInput) SetResetDisabled(v bool) *GetDashboardEmbedUrlInput { + s.ResetDisabled = &v + return s +} + +// SetSessionLifetimeInMinutes sets the SessionLifetimeInMinutes field's value. +func (s *GetDashboardEmbedUrlInput) SetSessionLifetimeInMinutes(v int64) *GetDashboardEmbedUrlInput { + s.SessionLifetimeInMinutes = &v + return s +} + +// SetUndoRedoDisabled sets the UndoRedoDisabled field's value. +func (s *GetDashboardEmbedUrlInput) SetUndoRedoDisabled(v bool) *GetDashboardEmbedUrlInput { + s.UndoRedoDisabled = &v + return s +} + +// SetUserArn sets the UserArn field's value. +func (s *GetDashboardEmbedUrlInput) SetUserArn(v string) *GetDashboardEmbedUrlInput { + s.UserArn = &v + return s +} + +type GetDashboardEmbedUrlOutput struct { _ struct{} `type:"structure"` - // The name of the group. - Group *Group `type:"structure"` + // 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 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 AWS request ID for this operation. RequestId *string `type:"string"` @@ -13566,540 +17112,463 @@ type DescribeGroupOutput struct { } // String returns the string representation -func (s DescribeGroupOutput) String() string { +func (s GetDashboardEmbedUrlOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeGroupOutput) GoString() string { +func (s GetDashboardEmbedUrlOutput) GoString() string { return s.String() } -// SetGroup sets the Group field's value. -func (s *DescribeGroupOutput) SetGroup(v *Group) *DescribeGroupOutput { - s.Group = v +// SetEmbedUrl sets the EmbedUrl field's value. +func (s *GetDashboardEmbedUrlOutput) SetEmbedUrl(v string) *GetDashboardEmbedUrlOutput { + s.EmbedUrl = &v return s } // SetRequestId sets the RequestId field's value. -func (s *DescribeGroupOutput) SetRequestId(v string) *DescribeGroupOutput { +func (s *GetDashboardEmbedUrlOutput) SetRequestId(v string) *GetDashboardEmbedUrlOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *DescribeGroupOutput) SetStatus(v int64) *DescribeGroupOutput { +func (s *GetDashboardEmbedUrlOutput) SetStatus(v int64) *GetDashboardEmbedUrlOutput { s.Status = &v return s } -type DescribeIAMPolicyAssignmentInput struct { +// A group in Amazon QuickSight consists of a set of users. You can use groups +// to make it easier to manage access and security. Currently, an Amazon QuickSight +// subscription can't contain more than 500 Amazon QuickSight groups. +type Group struct { _ struct{} `type:"structure"` - // The name of the assignment. - // - // AssignmentName is a required field - AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` + // The Amazon Resource Name (ARN) for the group. + Arn *string `type:"string"` - // The ID of the AWS account that contains the assignment that you want to describe. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // The group description. + Description *string `min:"1" type:"string"` - // The namespace that contains the assignment. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // The name of the group. + GroupName *string `min:"1" type:"string"` + + // The principal ID of the group. + PrincipalId *string `type:"string"` } // String returns the string representation -func (s DescribeIAMPolicyAssignmentInput) String() string { +func (s Group) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeIAMPolicyAssignmentInput) GoString() string { +func (s Group) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeIAMPolicyAssignmentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeIAMPolicyAssignmentInput"} - if s.AssignmentName == nil { - invalidParams.Add(request.NewErrParamRequired("AssignmentName")) - } - if s.AssignmentName != nil && len(*s.AssignmentName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AssignmentName", 1)) - } - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetArn sets the Arn field's value. +func (s *Group) SetArn(v string) *Group { + s.Arn = &v + return s } -// SetAssignmentName sets the AssignmentName field's value. -func (s *DescribeIAMPolicyAssignmentInput) SetAssignmentName(v string) *DescribeIAMPolicyAssignmentInput { - s.AssignmentName = &v +// SetDescription sets the Description field's value. +func (s *Group) SetDescription(v string) *Group { + s.Description = &v return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeIAMPolicyAssignmentInput) SetAwsAccountId(v string) *DescribeIAMPolicyAssignmentInput { - s.AwsAccountId = &v +// SetGroupName sets the GroupName field's value. +func (s *Group) SetGroupName(v string) *Group { + s.GroupName = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *DescribeIAMPolicyAssignmentInput) SetNamespace(v string) *DescribeIAMPolicyAssignmentInput { - s.Namespace = &v +// SetPrincipalId sets the PrincipalId field's value. +func (s *Group) SetPrincipalId(v string) *Group { + s.PrincipalId = &v return s } -type DescribeIAMPolicyAssignmentOutput struct { +// A member of an Amazon QuickSight group. Currently, group members must be +// users. Groups can't be members of another group. . +type GroupMember struct { _ struct{} `type:"structure"` - // Information describing the IAM policy assignment. - IAMPolicyAssignment *IAMPolicyAssignment `type:"structure"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // The Amazon Resource Name (ARN) for the group member (user). + Arn *string `type:"string"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // The name of the group member (user). + MemberName *string `min:"1" type:"string"` } // String returns the string representation -func (s DescribeIAMPolicyAssignmentOutput) String() string { +func (s GroupMember) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeIAMPolicyAssignmentOutput) GoString() string { +func (s GroupMember) GoString() string { return s.String() } -// SetIAMPolicyAssignment sets the IAMPolicyAssignment field's value. -func (s *DescribeIAMPolicyAssignmentOutput) SetIAMPolicyAssignment(v *IAMPolicyAssignment) *DescribeIAMPolicyAssignmentOutput { - s.IAMPolicyAssignment = v +// SetArn sets the Arn field's value. +func (s *GroupMember) SetArn(v string) *GroupMember { + s.Arn = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *DescribeIAMPolicyAssignmentOutput) SetRequestId(v string) *DescribeIAMPolicyAssignmentOutput { - s.RequestId = &v +// SetMemberName sets the MemberName field's value. +func (s *GroupMember) SetMemberName(v string) *GroupMember { + s.MemberName = &v return s } -// SetStatus sets the Status field's value. -func (s *DescribeIAMPolicyAssignmentOutput) SetStatus(v int64) *DescribeIAMPolicyAssignmentOutput { - s.Status = &v +// The display options for gutter spacing between tiles on a sheet. +type GutterStyle struct { + _ struct{} `type:"structure"` + + // This Boolean value controls whether to display a gutter space between sheet + // tiles. + Show *bool `type:"boolean"` +} + +// String returns the string representation +func (s GutterStyle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GutterStyle) GoString() string { + return s.String() +} + +// SetShow sets the Show field's value. +func (s *GutterStyle) SetShow(v bool) *GutterStyle { + s.Show = &v return s } -type DescribeIngestionInput struct { +// An AWS Identity and Access Management (IAM) policy assignment. +type IAMPolicyAssignment struct { _ struct{} `type:"structure"` + // Assignment ID. + AssignmentId *string `type:"string"` + + // Assignment name. + AssignmentName *string `min:"1" type:"string"` + + // Assignment status. + AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` + // The AWS account ID. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + AwsAccountId *string `min:"12" type:"string"` - // The ID of the dataset used in the ingestion. - // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // Identities. + Identities map[string][]*string `type:"map"` - // An ID for the ingestion. - // - // IngestionId is a required field - IngestionId *string `location:"uri" locationName:"IngestionId" min:"1" type:"string" required:"true"` + // The Amazon Resource Name (ARN) for the IAM policy. + PolicyArn *string `type:"string"` } // String returns the string representation -func (s DescribeIngestionInput) String() string { +func (s IAMPolicyAssignment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeIngestionInput) GoString() string { +func (s IAMPolicyAssignment) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeIngestionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeIngestionInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) - } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) - } - if s.IngestionId == nil { - invalidParams.Add(request.NewErrParamRequired("IngestionId")) - } - if s.IngestionId != nil && len(*s.IngestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("IngestionId", 1)) - } +// SetAssignmentId sets the AssignmentId field's value. +func (s *IAMPolicyAssignment) SetAssignmentId(v string) *IAMPolicyAssignment { + s.AssignmentId = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetAssignmentName sets the AssignmentName field's value. +func (s *IAMPolicyAssignment) SetAssignmentName(v string) *IAMPolicyAssignment { + s.AssignmentName = &v + return s +} + +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *IAMPolicyAssignment) SetAssignmentStatus(v string) *IAMPolicyAssignment { + s.AssignmentStatus = &v + return s } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeIngestionInput) SetAwsAccountId(v string) *DescribeIngestionInput { +func (s *IAMPolicyAssignment) SetAwsAccountId(v string) *IAMPolicyAssignment { s.AwsAccountId = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *DescribeIngestionInput) SetDataSetId(v string) *DescribeIngestionInput { - s.DataSetId = &v +// SetIdentities sets the Identities field's value. +func (s *IAMPolicyAssignment) SetIdentities(v map[string][]*string) *IAMPolicyAssignment { + s.Identities = v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *DescribeIngestionInput) SetIngestionId(v string) *DescribeIngestionInput { - s.IngestionId = &v +// SetPolicyArn sets the PolicyArn field's value. +func (s *IAMPolicyAssignment) SetPolicyArn(v string) *IAMPolicyAssignment { + s.PolicyArn = &v return s } -type DescribeIngestionOutput struct { +// IAM policy assignment summary. +type IAMPolicyAssignmentSummary struct { _ struct{} `type:"structure"` - // Information about the ingestion. - Ingestion *Ingestion `type:"structure"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // Assignment name. + AssignmentName *string `min:"1" type:"string"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Assignment status. + AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` } // String returns the string representation -func (s DescribeIngestionOutput) String() string { +func (s IAMPolicyAssignmentSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeIngestionOutput) GoString() string { +func (s IAMPolicyAssignmentSummary) GoString() string { return s.String() } -// SetIngestion sets the Ingestion field's value. -func (s *DescribeIngestionOutput) SetIngestion(v *Ingestion) *DescribeIngestionOutput { - s.Ingestion = v - return s -} - -// SetRequestId sets the RequestId field's value. -func (s *DescribeIngestionOutput) SetRequestId(v string) *DescribeIngestionOutput { - s.RequestId = &v +// SetAssignmentName sets the AssignmentName field's value. +func (s *IAMPolicyAssignmentSummary) SetAssignmentName(v string) *IAMPolicyAssignmentSummary { + s.AssignmentName = &v return s } -// SetStatus sets the Status field's value. -func (s *DescribeIngestionOutput) SetStatus(v int64) *DescribeIngestionOutput { - s.Status = &v +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *IAMPolicyAssignmentSummary) SetAssignmentStatus(v string) *IAMPolicyAssignmentSummary { + s.AssignmentStatus = &v return s } -type DescribeTemplateAliasInput struct { - _ struct{} `type:"structure"` - - // The name of the template alias that you want to describe. If you name a specific - // alias, you describe the version that the alias points to. You can specify - // the latest version of the template by providing the keyword $LATEST in the - // AliasName parameter. The keyword $PUBLISHED doesn't apply to templates. - // - // AliasName is a required field - AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` +// The identity type specified isn't supported. Supported identity types include +// IAM and QUICKSIGHT. +type IdentityTypeNotSupportedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The ID of the AWS account that contains the template alias that you're describing. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + Message_ *string `locationName:"Message" type:"string"` - // The ID for the template. - // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // The AWS request ID for this request. + RequestId *string `type:"string"` } // String returns the string representation -func (s DescribeTemplateAliasInput) String() string { +func (s IdentityTypeNotSupportedException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeTemplateAliasInput) GoString() string { +func (s IdentityTypeNotSupportedException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeTemplateAliasInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeTemplateAliasInput"} - if s.AliasName == nil { - invalidParams.Add(request.NewErrParamRequired("AliasName")) - } - if s.AliasName != nil && len(*s.AliasName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) - } - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) - } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) +func newErrorIdentityTypeNotSupportedException(v protocol.ResponseMetadata) error { + return &IdentityTypeNotSupportedException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *IdentityTypeNotSupportedException) Code() string { + return "IdentityTypeNotSupportedException" +} + +// Message returns the exception's message. +func (s *IdentityTypeNotSupportedException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *IdentityTypeNotSupportedException) OrigErr() error { return nil } -// SetAliasName sets the AliasName field's value. -func (s *DescribeTemplateAliasInput) SetAliasName(v string) *DescribeTemplateAliasInput { - s.AliasName = &v - return s +func (s *IdentityTypeNotSupportedException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeTemplateAliasInput) SetAwsAccountId(v string) *DescribeTemplateAliasInput { - s.AwsAccountId = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *IdentityTypeNotSupportedException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetTemplateId sets the TemplateId field's value. -func (s *DescribeTemplateAliasInput) SetTemplateId(v string) *DescribeTemplateAliasInput { - s.TemplateId = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *IdentityTypeNotSupportedException) RequestID() string { + return s.RespMetadata.RequestID } -type DescribeTemplateAliasOutput struct { +// Information about the SPICE ingestion for a dataset. +type Ingestion struct { _ struct{} `type:"structure"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` - - // Information about the template alias. - TemplateAlias *TemplateAlias `type:"structure"` -} + // The Amazon Resource Name (ARN) of the resource. + // + // Arn is a required field + Arn *string `type:"string" required:"true"` -// String returns the string representation -func (s DescribeTemplateAliasOutput) String() string { - return awsutil.Prettify(s) -} + // The time that this ingestion started. + // + // CreatedTime is a required field + CreatedTime *time.Time `type:"timestamp" required:"true"` -// GoString returns the string representation -func (s DescribeTemplateAliasOutput) GoString() string { - return s.String() -} + // Error information for this ingestion. + ErrorInfo *ErrorInfo `type:"structure"` -// SetRequestId sets the RequestId field's value. -func (s *DescribeTemplateAliasOutput) SetRequestId(v string) *DescribeTemplateAliasOutput { - s.RequestId = &v - return s -} + // Ingestion ID. + IngestionId *string `min:"1" type:"string"` -// SetStatus sets the Status field's value. -func (s *DescribeTemplateAliasOutput) SetStatus(v int64) *DescribeTemplateAliasOutput { - s.Status = &v - return s -} + // The size of the data ingested, in bytes. + IngestionSizeInBytes *int64 `type:"long"` -// SetTemplateAlias sets the TemplateAlias field's value. -func (s *DescribeTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *DescribeTemplateAliasOutput { - s.TemplateAlias = v - return s -} + // Ingestion status. + // + // IngestionStatus is a required field + IngestionStatus *string `type:"string" required:"true" enum:"IngestionStatus"` -type DescribeTemplateInput struct { - _ struct{} `type:"structure"` + // The time that this ingestion took, measured in seconds. + IngestionTimeInSeconds *int64 `type:"long"` - // The alias of the template that you want to describe. If you name a specific - // alias, you describe the version that the alias points to. You can specify - // the latest version of the template by providing the keyword $LATEST in the - // AliasName parameter. The keyword $PUBLISHED doesn't apply to templates. - AliasName *string `location:"querystring" locationName:"alias-name" min:"1" type:"string"` + // Information about a queued dataset SPICE ingestion. + QueueInfo *QueueInfo `type:"structure"` - // The ID of the AWS account that contains the template that you're describing. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // Event source for this ingestion. + RequestSource *string `type:"string" enum:"IngestionRequestSource"` - // The ID for the template. - // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // Type of this ingestion. + RequestType *string `type:"string" enum:"IngestionRequestType"` - // (Optional) The number for the version to describe. If a VersionNumber parameter - // value isn't provided, the latest version of the template is described. - VersionNumber *int64 `location:"querystring" locationName:"version-number" min:"1" type:"long"` + // Information about rows for a data set SPICE ingestion. + RowInfo *RowInfo `type:"structure"` } // String returns the string representation -func (s DescribeTemplateInput) String() string { +func (s Ingestion) String() string { return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DescribeTemplateInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeTemplateInput"} - if s.AliasName != nil && len(*s.AliasName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) - } - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) - } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) - } - if s.VersionNumber != nil && *s.VersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) - } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// GoString returns the string representation +func (s Ingestion) GoString() string { + return s.String() } -// SetAliasName sets the AliasName field's value. -func (s *DescribeTemplateInput) SetAliasName(v string) *DescribeTemplateInput { - s.AliasName = &v +// SetArn sets the Arn field's value. +func (s *Ingestion) SetArn(v string) *Ingestion { + s.Arn = &v return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeTemplateInput) SetAwsAccountId(v string) *DescribeTemplateInput { - s.AwsAccountId = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *Ingestion) SetCreatedTime(v time.Time) *Ingestion { + s.CreatedTime = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *DescribeTemplateInput) SetTemplateId(v string) *DescribeTemplateInput { - s.TemplateId = &v +// SetErrorInfo sets the ErrorInfo field's value. +func (s *Ingestion) SetErrorInfo(v *ErrorInfo) *Ingestion { + s.ErrorInfo = v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *DescribeTemplateInput) SetVersionNumber(v int64) *DescribeTemplateInput { - s.VersionNumber = &v +// SetIngestionId sets the IngestionId field's value. +func (s *Ingestion) SetIngestionId(v string) *Ingestion { + s.IngestionId = &v return s } -type DescribeTemplateOutput struct { - _ struct{} `type:"structure"` +// SetIngestionSizeInBytes sets the IngestionSizeInBytes field's value. +func (s *Ingestion) SetIngestionSizeInBytes(v int64) *Ingestion { + s.IngestionSizeInBytes = &v + return s +} - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` +// SetIngestionStatus sets the IngestionStatus field's value. +func (s *Ingestion) SetIngestionStatus(v string) *Ingestion { + s.IngestionStatus = &v + return s +} - // The template structure for the object you want to describe. - Template *Template `type:"structure"` +// SetIngestionTimeInSeconds sets the IngestionTimeInSeconds field's value. +func (s *Ingestion) SetIngestionTimeInSeconds(v int64) *Ingestion { + s.IngestionTimeInSeconds = &v + return s } -// String returns the string representation -func (s DescribeTemplateOutput) String() string { - return awsutil.Prettify(s) +// SetQueueInfo sets the QueueInfo field's value. +func (s *Ingestion) SetQueueInfo(v *QueueInfo) *Ingestion { + s.QueueInfo = v + return s } -// GoString returns the string representation -func (s DescribeTemplateOutput) GoString() string { - return s.String() +// SetRequestSource sets the RequestSource field's value. +func (s *Ingestion) SetRequestSource(v string) *Ingestion { + s.RequestSource = &v + return s } -// SetStatus sets the Status field's value. -func (s *DescribeTemplateOutput) SetStatus(v int64) *DescribeTemplateOutput { - s.Status = &v +// SetRequestType sets the RequestType field's value. +func (s *Ingestion) SetRequestType(v string) *Ingestion { + s.RequestType = &v return s } -// SetTemplate sets the Template field's value. -func (s *DescribeTemplateOutput) SetTemplate(v *Template) *DescribeTemplateOutput { - s.Template = v +// SetRowInfo sets the RowInfo field's value. +func (s *Ingestion) SetRowInfo(v *RowInfo) *Ingestion { + s.RowInfo = v return s } -type DescribeTemplatePermissionsInput struct { +// Metadata for a column that is used as the input of a transform operation. +type InputColumn struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the template that you're describing. + // The name of this column in the underlying data source. // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` - // The ID for the template. + // The data type of the column. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // Type is a required field + Type *string `type:"string" required:"true" enum:"InputColumnDataType"` } // String returns the string representation -func (s DescribeTemplatePermissionsInput) String() string { +func (s InputColumn) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeTemplatePermissionsInput) GoString() string { +func (s InputColumn) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeTemplatePermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeTemplatePermissionsInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) +func (s *InputColumn) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InputColumn"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { @@ -14108,127 +17577,51 @@ func (s *DescribeTemplatePermissionsInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeTemplatePermissionsInput) SetAwsAccountId(v string) *DescribeTemplatePermissionsInput { - s.AwsAccountId = &v - return s -} - -// SetTemplateId sets the TemplateId field's value. -func (s *DescribeTemplatePermissionsInput) SetTemplateId(v string) *DescribeTemplatePermissionsInput { - s.TemplateId = &v - return s -} - -type DescribeTemplatePermissionsOutput struct { - _ struct{} `type:"structure"` - - // A list of resource permissions to be set on the template. - Permissions []*ResourcePermission `min:"1" type:"list"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` - - // The Amazon Resource Name (ARN) of the template. - TemplateArn *string `type:"string"` - - // The ID for the template. - TemplateId *string `min:"1" type:"string"` -} - -// String returns the string representation -func (s DescribeTemplatePermissionsOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DescribeTemplatePermissionsOutput) GoString() string { - return s.String() -} - -// SetPermissions sets the Permissions field's value. -func (s *DescribeTemplatePermissionsOutput) SetPermissions(v []*ResourcePermission) *DescribeTemplatePermissionsOutput { - s.Permissions = v - return s -} - -// SetRequestId sets the RequestId field's value. -func (s *DescribeTemplatePermissionsOutput) SetRequestId(v string) *DescribeTemplatePermissionsOutput { - s.RequestId = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *DescribeTemplatePermissionsOutput) SetStatus(v int64) *DescribeTemplatePermissionsOutput { - s.Status = &v - return s -} - -// SetTemplateArn sets the TemplateArn field's value. -func (s *DescribeTemplatePermissionsOutput) SetTemplateArn(v string) *DescribeTemplatePermissionsOutput { - s.TemplateArn = &v +// SetName sets the Name field's value. +func (s *InputColumn) SetName(v string) *InputColumn { + s.Name = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *DescribeTemplatePermissionsOutput) SetTemplateId(v string) *DescribeTemplatePermissionsOutput { - s.TemplateId = &v +// SetType sets the Type field's value. +func (s *InputColumn) SetType(v string) *InputColumn { + s.Type = &v return s } -type DescribeUserInput struct { +// Integer parameter. +type IntegerParameter struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the user is in. Currently, you use the ID - // for the AWS 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 namespace. Currently, you should set this to default. + // A display name for the dataset. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // Name is a required field + Name *string `type:"string" required:"true"` - // The name of the user that you want to describe. + // Values. // - // UserName is a required field - UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` + // Values is a required field + Values []*int64 `type:"list" required:"true"` } // String returns the string representation -func (s DescribeUserInput) String() string { +func (s IntegerParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeUserInput) GoString() string { +func (s IntegerParameter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeUserInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeUserInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - if s.UserName == nil { - invalidParams.Add(request.NewErrParamRequired("UserName")) +func (s *IntegerParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IntegerParameter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.UserName != nil && len(*s.UserName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) } if invalidParams.Len() > 0 { @@ -14237,68 +17630,79 @@ func (s *DescribeUserInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *DescribeUserInput) SetAwsAccountId(v string) *DescribeUserInput { - s.AwsAccountId = &v +// SetName sets the Name field's value. +func (s *IntegerParameter) SetName(v string) *IntegerParameter { + s.Name = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *DescribeUserInput) SetNamespace(v string) *DescribeUserInput { - s.Namespace = &v +// SetValues sets the Values field's value. +func (s *IntegerParameter) SetValues(v []*int64) *IntegerParameter { + s.Values = v return s } -// SetUserName sets the UserName field's value. -func (s *DescribeUserInput) SetUserName(v string) *DescribeUserInput { - s.UserName = &v - return s -} +// An internal failure occurred. +type InternalFailureException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` -type DescribeUserOutput struct { - _ struct{} `type:"structure"` + Message_ *string `locationName:"Message" type:"string"` - // The AWS request ID for this operation. + // The AWS request ID for this request. RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` - - // The user name. - User *User `type:"structure"` } // String returns the string representation -func (s DescribeUserOutput) String() string { +func (s InternalFailureException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DescribeUserOutput) GoString() string { +func (s InternalFailureException) GoString() string { return s.String() } -// SetRequestId sets the RequestId field's value. -func (s *DescribeUserOutput) SetRequestId(v string) *DescribeUserOutput { - s.RequestId = &v - return s +func newErrorInternalFailureException(v protocol.ResponseMetadata) error { + return &InternalFailureException{ + RespMetadata: v, + } } -// SetStatus sets the Status field's value. -func (s *DescribeUserOutput) SetStatus(v int64) *DescribeUserOutput { - s.Status = &v - return s +// Code returns the exception type name. +func (s *InternalFailureException) Code() string { + return "InternalFailureException" } -// SetUser sets the User field's value. -func (s *DescribeUserOutput) SetUser(v *User) *DescribeUserOutput { - s.User = v - return s +// Message returns the exception's message. +func (s *InternalFailureException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// The domain specified isn't on the allow list. All domains for embedded dashboards -// must be added to the approved list by an Amazon QuickSight admin. -type DomainNotWhitelistedException struct { +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalFailureException) OrigErr() error { + return nil +} + +func (s *InternalFailureException) 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 *InternalFailureException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalFailureException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The NextToken value isn't valid. +type InvalidNextTokenException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -14309,28 +17713,28 @@ type DomainNotWhitelistedException struct { } // String returns the string representation -func (s DomainNotWhitelistedException) String() string { +func (s InvalidNextTokenException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DomainNotWhitelistedException) GoString() string { +func (s InvalidNextTokenException) GoString() string { return s.String() } -func newErrorDomainNotWhitelistedException(v protocol.ResponseMetadata) error { - return &DomainNotWhitelistedException{ +func newErrorInvalidNextTokenException(v protocol.ResponseMetadata) error { + return &InvalidNextTokenException{ RespMetadata: v, } } // Code returns the exception type name. -func (s *DomainNotWhitelistedException) Code() string { - return "DomainNotWhitelistedException" +func (s *InvalidNextTokenException) Code() string { + return "InvalidNextTokenException" } // Message returns the exception's message. -func (s *DomainNotWhitelistedException) Message() string { +func (s *InvalidNextTokenException) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -14338,253 +17742,311 @@ func (s *DomainNotWhitelistedException) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *DomainNotWhitelistedException) OrigErr() error { +func (s *InvalidNextTokenException) OrigErr() error { return nil } -func (s *DomainNotWhitelistedException) Error() string { +func (s *InvalidNextTokenException) 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 *DomainNotWhitelistedException) StatusCode() int { +func (s *InvalidNextTokenException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *DomainNotWhitelistedException) RequestID() string { +func (s *InvalidNextTokenException) RequestID() string { return s.RespMetadata.RequestID } -// Error information for the SPICE ingestion of a dataset. -type ErrorInfo struct { - _ struct{} `type:"structure"` +// One or more parameters has a value that isn't valid. +type InvalidParameterValueException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Error message. - Message *string `type:"string"` + Message_ *string `locationName:"Message" type:"string"` - // Error type. - Type *string `type:"string" enum:"IngestionErrorType"` + // The AWS request ID for this request. + RequestId *string `type:"string"` } // String returns the string representation -func (s ErrorInfo) String() string { +func (s InvalidParameterValueException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ErrorInfo) GoString() string { +func (s InvalidParameterValueException) GoString() string { return s.String() } -// SetMessage sets the Message field's value. -func (s *ErrorInfo) SetMessage(v string) *ErrorInfo { - s.Message = &v - return s +func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { + return &InvalidParameterValueException{ + RespMetadata: v, + } } -// SetType sets the Type field's value. -func (s *ErrorInfo) SetType(v string) *ErrorInfo { - s.Type = &v - return s +// Code returns the exception type name. +func (s *InvalidParameterValueException) Code() string { + return "InvalidParameterValueException" } -// Export to .csv option. -type ExportToCSVOption struct { +// Message returns the exception's message. +func (s *InvalidParameterValueException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidParameterValueException) OrigErr() error { + return nil +} + +func (s *InvalidParameterValueException) 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 *InvalidParameterValueException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidParameterValueException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Jira parameters. +type JiraParameters struct { _ struct{} `type:"structure"` - // Availability status. - AvailabilityStatus *string `type:"string" enum:"DashboardBehavior"` + // The base URL of the Jira site. + // + // SiteBaseUrl is a required field + SiteBaseUrl *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ExportToCSVOption) String() string { +func (s JiraParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ExportToCSVOption) GoString() string { +func (s JiraParameters) GoString() string { return s.String() } -// SetAvailabilityStatus sets the AvailabilityStatus field's value. -func (s *ExportToCSVOption) SetAvailabilityStatus(v string) *ExportToCSVOption { - s.AvailabilityStatus = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *JiraParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "JiraParameters"} + if s.SiteBaseUrl == nil { + invalidParams.Add(request.NewErrParamRequired("SiteBaseUrl")) + } + if s.SiteBaseUrl != nil && len(*s.SiteBaseUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SiteBaseUrl", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSiteBaseUrl sets the SiteBaseUrl field's value. +func (s *JiraParameters) SetSiteBaseUrl(v string) *JiraParameters { + s.SiteBaseUrl = &v return s } -// A transform operation that filters rows based on a condition. -type FilterOperation struct { +// Join instruction. +type JoinInstruction struct { _ struct{} `type:"structure"` - // An expression that must evaluate to a Boolean value. Rows for which the expression - // evaluates to true are kept in the dataset. + // Left operand. // - // ConditionExpression is a required field - ConditionExpression *string `min:"1" type:"string" required:"true"` + // LeftOperand is a required field + LeftOperand *string `min:"1" type:"string" required:"true"` + + // On Clause. + // + // OnClause is a required field + OnClause *string `min:"1" type:"string" required:"true"` + + // Right operand. + // + // RightOperand is a required field + RightOperand *string `min:"1" type:"string" required:"true"` + + // Type. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"JoinType"` } // String returns the string representation -func (s FilterOperation) String() string { +func (s JoinInstruction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s FilterOperation) GoString() string { +func (s JoinInstruction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *FilterOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "FilterOperation"} - if s.ConditionExpression == nil { - invalidParams.Add(request.NewErrParamRequired("ConditionExpression")) +func (s *JoinInstruction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "JoinInstruction"} + if s.LeftOperand == nil { + invalidParams.Add(request.NewErrParamRequired("LeftOperand")) } - if s.ConditionExpression != nil && len(*s.ConditionExpression) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ConditionExpression", 1)) + if s.LeftOperand != nil && len(*s.LeftOperand) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LeftOperand", 1)) + } + if s.OnClause == nil { + invalidParams.Add(request.NewErrParamRequired("OnClause")) + } + if s.OnClause != nil && len(*s.OnClause) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OnClause", 1)) + } + if s.RightOperand == nil { + invalidParams.Add(request.NewErrParamRequired("RightOperand")) + } + if s.RightOperand != nil && len(*s.RightOperand) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RightOperand", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) } - if invalidParams.Len() > 0 { - return invalidParams - } - return nil + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLeftOperand sets the LeftOperand field's value. +func (s *JoinInstruction) SetLeftOperand(v string) *JoinInstruction { + s.LeftOperand = &v + return s +} + +// SetOnClause sets the OnClause field's value. +func (s *JoinInstruction) SetOnClause(v string) *JoinInstruction { + s.OnClause = &v + return s +} + +// SetRightOperand sets the RightOperand field's value. +func (s *JoinInstruction) SetRightOperand(v string) *JoinInstruction { + s.RightOperand = &v + return s } -// SetConditionExpression sets the ConditionExpression field's value. -func (s *FilterOperation) SetConditionExpression(v string) *FilterOperation { - s.ConditionExpression = &v +// SetType sets the Type field's value. +func (s *JoinInstruction) SetType(v string) *JoinInstruction { + s.Type = &v return s } -// Geospatial column group that denotes a hierarchy. -type GeoSpatialColumnGroup struct { - _ struct{} `type:"structure"` +// A limit is exceeded. +type LimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Columns in this hierarchy. - // - // Columns is a required field - Columns []*string `min:"1" type:"list" required:"true"` + Message_ *string `locationName:"Message" type:"string"` - // Country code. - // - // CountryCode is a required field - CountryCode *string `type:"string" required:"true" enum:"GeoSpatialCountryCode"` + // The AWS request ID for this request. + RequestId *string `type:"string"` - // A display name for the hierarchy. - // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + // Limit exceeded. + ResourceType *string `type:"string" enum:"ExceptionResourceType"` } // String returns the string representation -func (s GeoSpatialColumnGroup) String() string { +func (s LimitExceededException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GeoSpatialColumnGroup) GoString() string { +func (s LimitExceededException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GeoSpatialColumnGroup) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GeoSpatialColumnGroup"} - if s.Columns == nil { - invalidParams.Add(request.NewErrParamRequired("Columns")) - } - if s.Columns != nil && len(s.Columns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Columns", 1)) - } - if s.CountryCode == nil { - invalidParams.Add(request.NewErrParamRequired("CountryCode")) - } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) +func newErrorLimitExceededException(v protocol.ResponseMetadata) error { + return &LimitExceededException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *LimitExceededException) Code() string { + return "LimitExceededException" +} + +// Message returns the exception's message. +func (s *LimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *LimitExceededException) OrigErr() error { return nil } -// SetColumns sets the Columns field's value. -func (s *GeoSpatialColumnGroup) SetColumns(v []*string) *GeoSpatialColumnGroup { - s.Columns = v - return s +func (s *LimitExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetCountryCode sets the CountryCode field's value. -func (s *GeoSpatialColumnGroup) SetCountryCode(v string) *GeoSpatialColumnGroup { - s.CountryCode = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *LimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetName sets the Name field's value. -func (s *GeoSpatialColumnGroup) SetName(v string) *GeoSpatialColumnGroup { - s.Name = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *LimitExceededException) RequestID() string { + return s.RespMetadata.RequestID } -type GetDashboardEmbedUrlInput struct { +type ListDashboardVersionsInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that contains the dashboard that you're embedding. + // The ID of the AWS account that contains the dashboard that you're listing + // versions 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. // // DashboardId is a required field DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` - // The authentication method that the user uses to sign in. - // - // IdentityType is a required field - IdentityType *string `location:"querystring" locationName:"creds-type" type:"string" required:"true" enum:"IdentityType"` - - // Remove the reset button on the embedded dashboard. The default is FALSE, - // which enables the reset button. - ResetDisabled *bool `location:"querystring" locationName:"reset-disabled" type:"boolean"` - - // How many minutes the session is valid. The session lifetime must be 15-600 - // minutes. - SessionLifetimeInMinutes *int64 `location:"querystring" locationName:"session-lifetime" min:"15" type:"long"` - - // Remove the undo/redo button on the embedded dashboard. The default is FALSE, - // which enables the undo/redo button. - UndoRedoDisabled *bool `location:"querystring" locationName:"undo-redo-disabled" type:"boolean"` + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // 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. - UserArn *string `location:"querystring" locationName:"user-arn" type:"string"` + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s GetDashboardEmbedUrlInput) String() string { +func (s ListDashboardVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDashboardEmbedUrlInput) GoString() string { +func (s ListDashboardVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetDashboardEmbedUrlInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetDashboardEmbedUrlInput"} +func (s *ListDashboardVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDashboardVersionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -14597,11 +18059,8 @@ func (s *GetDashboardEmbedUrlInput) Validate() error { if s.DashboardId != nil && len(*s.DashboardId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) } - if s.IdentityType == nil { - invalidParams.Add(request.NewErrParamRequired("IdentityType")) - } - if s.SessionLifetimeInMinutes != nil && *s.SessionLifetimeInMinutes < 15 { - invalidParams.Add(request.NewErrParamMinValue("SessionLifetimeInMinutes", 15)) + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { @@ -14611,55 +18070,37 @@ func (s *GetDashboardEmbedUrlInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *GetDashboardEmbedUrlInput) SetAwsAccountId(v string) *GetDashboardEmbedUrlInput { +func (s *ListDashboardVersionsInput) SetAwsAccountId(v string) *ListDashboardVersionsInput { s.AwsAccountId = &v return s } // SetDashboardId sets the DashboardId field's value. -func (s *GetDashboardEmbedUrlInput) SetDashboardId(v string) *GetDashboardEmbedUrlInput { +func (s *ListDashboardVersionsInput) SetDashboardId(v string) *ListDashboardVersionsInput { s.DashboardId = &v return s } -// SetIdentityType sets the IdentityType field's value. -func (s *GetDashboardEmbedUrlInput) SetIdentityType(v string) *GetDashboardEmbedUrlInput { - s.IdentityType = &v - return s -} - -// SetResetDisabled sets the ResetDisabled field's value. -func (s *GetDashboardEmbedUrlInput) SetResetDisabled(v bool) *GetDashboardEmbedUrlInput { - s.ResetDisabled = &v - return s -} - -// SetSessionLifetimeInMinutes sets the SessionLifetimeInMinutes field's value. -func (s *GetDashboardEmbedUrlInput) SetSessionLifetimeInMinutes(v int64) *GetDashboardEmbedUrlInput { - s.SessionLifetimeInMinutes = &v - return s -} - -// SetUndoRedoDisabled sets the UndoRedoDisabled field's value. -func (s *GetDashboardEmbedUrlInput) SetUndoRedoDisabled(v bool) *GetDashboardEmbedUrlInput { - s.UndoRedoDisabled = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListDashboardVersionsInput) SetMaxResults(v int64) *ListDashboardVersionsInput { + s.MaxResults = &v return s } -// SetUserArn sets the UserArn field's value. -func (s *GetDashboardEmbedUrlInput) SetUserArn(v string) *GetDashboardEmbedUrlInput { - s.UserArn = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDashboardVersionsInput) SetNextToken(v string) *ListDashboardVersionsInput { + s.NextToken = &v return s } -type GetDashboardEmbedUrlOutput struct { +type ListDashboardVersionsOutput struct { _ struct{} `type:"structure"` - // 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 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"` + // A structure that contains information about each version of the dashboard. + DashboardVersionSummaryList []*DashboardVersionSummary `type:"list"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -14669,438 +18110,435 @@ type GetDashboardEmbedUrlOutput struct { } // String returns the string representation -func (s GetDashboardEmbedUrlOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s GetDashboardEmbedUrlOutput) GoString() string { - return s.String() -} - -// SetEmbedUrl sets the EmbedUrl field's value. -func (s *GetDashboardEmbedUrlOutput) SetEmbedUrl(v string) *GetDashboardEmbedUrlOutput { - s.EmbedUrl = &v - return s -} - -// SetRequestId sets the RequestId field's value. -func (s *GetDashboardEmbedUrlOutput) SetRequestId(v string) *GetDashboardEmbedUrlOutput { - s.RequestId = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *GetDashboardEmbedUrlOutput) SetStatus(v int64) *GetDashboardEmbedUrlOutput { - s.Status = &v - return s -} - -// A group in Amazon QuickSight consists of a set of users. You can use groups -// to make it easier to manage access and security. Currently, an Amazon QuickSight -// subscription can't contain more than 500 Amazon QuickSight groups. -type Group struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) for the group. - Arn *string `type:"string"` - - // The group description. - Description *string `min:"1" type:"string"` - - // The name of the group. - GroupName *string `min:"1" type:"string"` - - // The principal ID of the group. - PrincipalId *string `type:"string"` -} - -// String returns the string representation -func (s Group) String() string { +func (s ListDashboardVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Group) GoString() string { +func (s ListDashboardVersionsOutput) GoString() string { return s.String() -} - -// SetArn sets the Arn field's value. -func (s *Group) SetArn(v string) *Group { - s.Arn = &v +} + +// SetDashboardVersionSummaryList sets the DashboardVersionSummaryList field's value. +func (s *ListDashboardVersionsOutput) SetDashboardVersionSummaryList(v []*DashboardVersionSummary) *ListDashboardVersionsOutput { + s.DashboardVersionSummaryList = v return s } -// SetDescription sets the Description field's value. -func (s *Group) SetDescription(v string) *Group { - s.Description = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDashboardVersionsOutput) SetNextToken(v string) *ListDashboardVersionsOutput { + s.NextToken = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *Group) SetGroupName(v string) *Group { - s.GroupName = &v +// SetRequestId sets the RequestId field's value. +func (s *ListDashboardVersionsOutput) SetRequestId(v string) *ListDashboardVersionsOutput { + s.RequestId = &v return s } -// SetPrincipalId sets the PrincipalId field's value. -func (s *Group) SetPrincipalId(v string) *Group { - s.PrincipalId = &v +// SetStatus sets the Status field's value. +func (s *ListDashboardVersionsOutput) SetStatus(v int64) *ListDashboardVersionsOutput { + s.Status = &v return s } -// A member of an Amazon QuickSight group. Currently, group members must be -// users. Groups can't be members of another group. . -type GroupMember struct { +type ListDashboardsInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the group member (user). - Arn *string `type:"string"` + // The ID of the AWS account that contains the dashboards that you're listing. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The name of the group member (user). - MemberName *string `min:"1" type:"string"` + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s GroupMember) String() string { +func (s ListDashboardsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GroupMember) GoString() string { +func (s ListDashboardsInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *GroupMember) SetArn(v string) *GroupMember { - s.Arn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDashboardsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDashboardsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetMemberName sets the MemberName field's value. -func (s *GroupMember) SetMemberName(v string) *GroupMember { - s.MemberName = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListDashboardsInput) SetAwsAccountId(v string) *ListDashboardsInput { + s.AwsAccountId = &v return s } -// An IAM policy assignment. -type IAMPolicyAssignment struct { - _ struct{} `type:"structure"` +// SetMaxResults sets the MaxResults field's value. +func (s *ListDashboardsInput) SetMaxResults(v int64) *ListDashboardsInput { + s.MaxResults = &v + return s +} - // Assignment ID. - AssignmentId *string `type:"string"` +// SetNextToken sets the NextToken field's value. +func (s *ListDashboardsInput) SetNextToken(v string) *ListDashboardsInput { + s.NextToken = &v + return s +} - // Assignment name. - AssignmentName *string `min:"1" type:"string"` +type ListDashboardsOutput struct { + _ struct{} `type:"structure"` - // Assignment status. - AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` + // A structure that contains all of the dashboards in your AWS account. This + // structure provides basic information about the dashboards. + DashboardSummaryList []*DashboardSummary `type:"list"` - // The AWS account ID. - AwsAccountId *string `min:"12" type:"string"` + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` - // Identities. - Identities map[string][]*string `type:"map"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // The Amazon Resource Name (ARN) for the IAM policy. - PolicyArn *string `type:"string"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s IAMPolicyAssignment) String() string { +func (s ListDashboardsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IAMPolicyAssignment) GoString() string { +func (s ListDashboardsOutput) GoString() string { return s.String() } -// SetAssignmentId sets the AssignmentId field's value. -func (s *IAMPolicyAssignment) SetAssignmentId(v string) *IAMPolicyAssignment { - s.AssignmentId = &v - return s -} - -// SetAssignmentName sets the AssignmentName field's value. -func (s *IAMPolicyAssignment) SetAssignmentName(v string) *IAMPolicyAssignment { - s.AssignmentName = &v - return s -} - -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *IAMPolicyAssignment) SetAssignmentStatus(v string) *IAMPolicyAssignment { - s.AssignmentStatus = &v +// SetDashboardSummaryList sets the DashboardSummaryList field's value. +func (s *ListDashboardsOutput) SetDashboardSummaryList(v []*DashboardSummary) *ListDashboardsOutput { + s.DashboardSummaryList = v return s } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *IAMPolicyAssignment) SetAwsAccountId(v string) *IAMPolicyAssignment { - s.AwsAccountId = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDashboardsOutput) SetNextToken(v string) *ListDashboardsOutput { + s.NextToken = &v return s } -// SetIdentities sets the Identities field's value. -func (s *IAMPolicyAssignment) SetIdentities(v map[string][]*string) *IAMPolicyAssignment { - s.Identities = v +// SetRequestId sets the RequestId field's value. +func (s *ListDashboardsOutput) SetRequestId(v string) *ListDashboardsOutput { + s.RequestId = &v return s } -// SetPolicyArn sets the PolicyArn field's value. -func (s *IAMPolicyAssignment) SetPolicyArn(v string) *IAMPolicyAssignment { - s.PolicyArn = &v +// SetStatus sets the Status field's value. +func (s *ListDashboardsOutput) SetStatus(v int64) *ListDashboardsOutput { + s.Status = &v return s } -// IAM policy assignment summary. -type IAMPolicyAssignmentSummary struct { +type ListDataSetsInput struct { _ struct{} `type:"structure"` - // Assignment name. - AssignmentName *string `min:"1" type:"string"` + // The AWS account ID. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Assignment status. - AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s IAMPolicyAssignmentSummary) String() string { +func (s ListDataSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IAMPolicyAssignmentSummary) GoString() string { +func (s ListDataSetsInput) GoString() string { return s.String() } -// SetAssignmentName sets the AssignmentName field's value. -func (s *IAMPolicyAssignmentSummary) SetAssignmentName(v string) *IAMPolicyAssignmentSummary { - s.AssignmentName = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSetsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListDataSetsInput) SetAwsAccountId(v string) *ListDataSetsInput { + s.AwsAccountId = &v return s } -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *IAMPolicyAssignmentSummary) SetAssignmentStatus(v string) *IAMPolicyAssignmentSummary { - s.AssignmentStatus = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSetsInput) SetMaxResults(v int64) *ListDataSetsInput { + s.MaxResults = &v return s } -// The identity type specified isn't supported. Supported identity types include -// IAM and QUICKSIGHT. -type IdentityTypeNotSupportedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetNextToken sets the NextToken field's value. +func (s *ListDataSetsInput) SetNextToken(v string) *ListDataSetsInput { + s.NextToken = &v + return s +} - Message_ *string `locationName:"Message" type:"string"` +type ListDataSetsOutput struct { + _ struct{} `type:"structure"` - // The AWS request ID for this request. + // The list of dataset summaries. + DataSetSummaries []*DataSetSummary `type:"list"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s IdentityTypeNotSupportedException) String() string { +func (s ListDataSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IdentityTypeNotSupportedException) GoString() string { +func (s ListDataSetsOutput) GoString() string { return s.String() } -func newErrorIdentityTypeNotSupportedException(v protocol.ResponseMetadata) error { - return &IdentityTypeNotSupportedException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *IdentityTypeNotSupportedException) Code() string { - return "IdentityTypeNotSupportedException" -} - -// Message returns the exception's message. -func (s *IdentityTypeNotSupportedException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *IdentityTypeNotSupportedException) OrigErr() error { - return nil +// SetDataSetSummaries sets the DataSetSummaries field's value. +func (s *ListDataSetsOutput) SetDataSetSummaries(v []*DataSetSummary) *ListDataSetsOutput { + s.DataSetSummaries = v + return s } -func (s *IdentityTypeNotSupportedException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetNextToken sets the NextToken field's value. +func (s *ListDataSetsOutput) SetNextToken(v string) *ListDataSetsOutput { + s.NextToken = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *IdentityTypeNotSupportedException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetRequestId sets the RequestId field's value. +func (s *ListDataSetsOutput) SetRequestId(v string) *ListDataSetsOutput { + s.RequestId = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *IdentityTypeNotSupportedException) RequestID() string { - return s.RespMetadata.RequestID +// SetStatus sets the Status field's value. +func (s *ListDataSetsOutput) SetStatus(v int64) *ListDataSetsOutput { + s.Status = &v + return s } -// Information about the SPICE ingestion for a dataset. -type Ingestion struct { +type ListDataSourcesInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. - // - // Arn is a required field - Arn *string `type:"string" required:"true"` - - // The time that this ingestion started. - // - // CreatedTime is a required field - CreatedTime *time.Time `type:"timestamp" required:"true"` - - // Error information for this ingestion. - ErrorInfo *ErrorInfo `type:"structure"` - - // Ingestion ID. - IngestionId *string `min:"1" type:"string"` - - // The size of the data ingested, in bytes. - IngestionSizeInBytes *int64 `type:"long"` - - // Ingestion status. + // The AWS account ID. // - // IngestionStatus is a required field - IngestionStatus *string `type:"string" required:"true" enum:"IngestionStatus"` - - // The time that this ingestion took, measured in seconds. - IngestionTimeInSeconds *int64 `type:"long"` - - // Information about a queued dataset SPICE ingestion. - QueueInfo *QueueInfo `type:"structure"` - - // Event source for this ingestion. - RequestSource *string `type:"string" enum:"IngestionRequestSource"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Type of this ingestion. - RequestType *string `type:"string" enum:"IngestionRequestType"` + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // Information about rows for a data set SPICE ingestion. - RowInfo *RowInfo `type:"structure"` + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s Ingestion) String() string { +func (s ListDataSourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Ingestion) GoString() string { +func (s ListDataSourcesInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *Ingestion) SetArn(v string) *Ingestion { - s.Arn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDataSourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCreatedTime sets the CreatedTime field's value. -func (s *Ingestion) SetCreatedTime(v time.Time) *Ingestion { - s.CreatedTime = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListDataSourcesInput) SetAwsAccountId(v string) *ListDataSourcesInput { + s.AwsAccountId = &v return s } -// SetErrorInfo sets the ErrorInfo field's value. -func (s *Ingestion) SetErrorInfo(v *ErrorInfo) *Ingestion { - s.ErrorInfo = v +// SetMaxResults sets the MaxResults field's value. +func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput { + s.MaxResults = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *Ingestion) SetIngestionId(v string) *Ingestion { - s.IngestionId = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput { + s.NextToken = &v return s } -// SetIngestionSizeInBytes sets the IngestionSizeInBytes field's value. -func (s *Ingestion) SetIngestionSizeInBytes(v int64) *Ingestion { - s.IngestionSizeInBytes = &v - return s +type ListDataSourcesOutput struct { + _ struct{} `type:"structure"` + + // A list of data sources. + DataSources []*DataSource `type:"list"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } -// SetIngestionStatus sets the IngestionStatus field's value. -func (s *Ingestion) SetIngestionStatus(v string) *Ingestion { - s.IngestionStatus = &v - return s +// String returns the string representation +func (s ListDataSourcesOutput) String() string { + return awsutil.Prettify(s) } -// SetIngestionTimeInSeconds sets the IngestionTimeInSeconds field's value. -func (s *Ingestion) SetIngestionTimeInSeconds(v int64) *Ingestion { - s.IngestionTimeInSeconds = &v - return s +// GoString returns the string representation +func (s ListDataSourcesOutput) GoString() string { + return s.String() } -// SetQueueInfo sets the QueueInfo field's value. -func (s *Ingestion) SetQueueInfo(v *QueueInfo) *Ingestion { - s.QueueInfo = v +// SetDataSources sets the DataSources field's value. +func (s *ListDataSourcesOutput) SetDataSources(v []*DataSource) *ListDataSourcesOutput { + s.DataSources = v return s } -// SetRequestSource sets the RequestSource field's value. -func (s *Ingestion) SetRequestSource(v string) *Ingestion { - s.RequestSource = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput { + s.NextToken = &v return s } -// SetRequestType sets the RequestType field's value. -func (s *Ingestion) SetRequestType(v string) *Ingestion { - s.RequestType = &v +// SetRequestId sets the RequestId field's value. +func (s *ListDataSourcesOutput) SetRequestId(v string) *ListDataSourcesOutput { + s.RequestId = &v return s } -// SetRowInfo sets the RowInfo field's value. -func (s *Ingestion) SetRowInfo(v *RowInfo) *Ingestion { - s.RowInfo = v +// SetStatus sets the Status field's value. +func (s *ListDataSourcesOutput) SetStatus(v int64) *ListDataSourcesOutput { + s.Status = &v return s } -// Metadata for a column that is used as the input of a transform operation. -type InputColumn struct { +type ListGroupMembershipsInput struct { _ struct{} `type:"structure"` - // The name of this column in the underlying data source. + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS account that contains your Amazon QuickSight account. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The data type of the column. + // The name of the group that you want to see a membership list of. // - // Type is a required field - Type *string `type:"string" required:"true" enum:"InputColumnDataType"` + // GroupName is a required field + GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` + + // The maximum number of results to return from this request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // A pagination token that can be used in a subsequent request. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s InputColumn) String() string { +func (s ListGroupMembershipsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InputColumn) GoString() string { +func (s ListGroupMembershipsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *InputColumn) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "InputColumn"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) +func (s *ListGroupMembershipsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListGroupMembershipsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Type == nil { - invalidParams.Add(request.NewErrParamRequired("Type")) + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) + } + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if invalidParams.Len() > 0 { @@ -15109,348 +18547,412 @@ func (s *InputColumn) Validate() error { return nil } -// SetName sets the Name field's value. -func (s *InputColumn) SetName(v string) *InputColumn { - s.Name = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListGroupMembershipsInput) SetAwsAccountId(v string) *ListGroupMembershipsInput { + s.AwsAccountId = &v return s } -// SetType sets the Type field's value. -func (s *InputColumn) SetType(v string) *InputColumn { - s.Type = &v +// SetGroupName sets the GroupName field's value. +func (s *ListGroupMembershipsInput) SetGroupName(v string) *ListGroupMembershipsInput { + s.GroupName = &v return s } -// Integer parameter. -type IntegerParameter struct { +// SetMaxResults sets the MaxResults field's value. +func (s *ListGroupMembershipsInput) SetMaxResults(v int64) *ListGroupMembershipsInput { + s.MaxResults = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *ListGroupMembershipsInput) SetNamespace(v string) *ListGroupMembershipsInput { + s.Namespace = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListGroupMembershipsInput) SetNextToken(v string) *ListGroupMembershipsInput { + s.NextToken = &v + return s +} + +type ListGroupMembershipsOutput struct { _ struct{} `type:"structure"` - // A display name for the dataset. - // - // Name is a required field - Name *string `type:"string" required:"true"` + // The list of the members of the group. + GroupMemberList []*GroupMember `type:"list"` + + // A pagination token that can be used in a subsequent request. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Values. - // - // Values is a required field - Values []*int64 `type:"list" required:"true"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s IntegerParameter) String() string { +func (s ListGroupMembershipsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s IntegerParameter) GoString() string { +func (s ListGroupMembershipsOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *IntegerParameter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "IntegerParameter"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Values == nil { - invalidParams.Add(request.NewErrParamRequired("Values")) - } +// SetGroupMemberList sets the GroupMemberList field's value. +func (s *ListGroupMembershipsOutput) SetGroupMemberList(v []*GroupMember) *ListGroupMembershipsOutput { + s.GroupMemberList = v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListGroupMembershipsOutput) SetNextToken(v string) *ListGroupMembershipsOutput { + s.NextToken = &v + return s } -// SetName sets the Name field's value. -func (s *IntegerParameter) SetName(v string) *IntegerParameter { - s.Name = &v +// SetRequestId sets the RequestId field's value. +func (s *ListGroupMembershipsOutput) SetRequestId(v string) *ListGroupMembershipsOutput { + s.RequestId = &v return s } -// SetValues sets the Values field's value. -func (s *IntegerParameter) SetValues(v []*int64) *IntegerParameter { - s.Values = v +// SetStatus sets the Status field's value. +func (s *ListGroupMembershipsOutput) SetStatus(v int64) *ListGroupMembershipsOutput { + s.Status = &v return s } -// An internal failure occurred. -type InternalFailureException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +type ListGroupsInput struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"Message" type:"string"` + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS 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 AWS request ID for this request. - RequestId *string `type:"string"` + // The maximum number of results to return. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // A pagination token that can be used in a subsequent request. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s InternalFailureException) String() string { +func (s ListGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InternalFailureException) GoString() string { +func (s ListGroupsInput) GoString() string { return s.String() } -func newErrorInternalFailureException(v protocol.ResponseMetadata) error { - return &InternalFailureException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListGroupsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } -} - -// Code returns the exception type name. -func (s *InternalFailureException) Code() string { - return "InternalFailureException" -} -// Message returns the exception's message. -func (s *InternalFailureException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if invalidParams.Len() > 0 { + return invalidParams } - return "" + return nil } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InternalFailureException) OrigErr() error { - return nil +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListGroupsInput) SetAwsAccountId(v string) *ListGroupsInput { + s.AwsAccountId = &v + return s } -func (s *InternalFailureException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetMaxResults sets the MaxResults field's value. +func (s *ListGroupsInput) SetMaxResults(v int64) *ListGroupsInput { + s.MaxResults = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InternalFailureException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetNamespace sets the Namespace field's value. +func (s *ListGroupsInput) SetNamespace(v string) *ListGroupsInput { + s.Namespace = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InternalFailureException) RequestID() string { - return s.RespMetadata.RequestID +// SetNextToken sets the NextToken field's value. +func (s *ListGroupsInput) SetNextToken(v string) *ListGroupsInput { + s.NextToken = &v + return s } -// The NextToken value isn't valid. -type InvalidNextTokenException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +type ListGroupsOutput struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"Message" type:"string"` + // The list of the groups. + GroupList []*Group `type:"list"` - // The AWS request ID for this request. + // A pagination token that can be used in a subsequent request. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s InvalidNextTokenException) String() string { +func (s ListGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidNextTokenException) GoString() string { +func (s ListGroupsOutput) GoString() string { return s.String() } -func newErrorInvalidNextTokenException(v protocol.ResponseMetadata) error { - return &InvalidNextTokenException{ - RespMetadata: v, - } +// SetGroupList sets the GroupList field's value. +func (s *ListGroupsOutput) SetGroupList(v []*Group) *ListGroupsOutput { + s.GroupList = v + return s } -// Code returns the exception type name. -func (s *InvalidNextTokenException) Code() string { - return "InvalidNextTokenException" +// SetNextToken sets the NextToken field's value. +func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput { + s.NextToken = &v + return s } -// Message returns the exception's message. -func (s *InvalidNextTokenException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetRequestId sets the RequestId field's value. +func (s *ListGroupsOutput) SetRequestId(v string) *ListGroupsOutput { + s.RequestId = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidNextTokenException) OrigErr() error { - return nil +// SetStatus sets the Status field's value. +func (s *ListGroupsOutput) SetStatus(v int64) *ListGroupsOutput { + s.Status = &v + return s } -func (s *InvalidNextTokenException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} +type ListIAMPolicyAssignmentsForUserInput struct { + _ struct{} `type:"structure"` -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidNextTokenException) StatusCode() int { - return s.RespMetadata.StatusCode -} + // The ID of the AWS account that contains the assignments. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` -// RequestID returns the service's response RequestID for request. -func (s *InvalidNextTokenException) RequestID() string { - return s.RespMetadata.RequestID -} + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` -// One or more parameters has a value that isn't valid. -type InvalidParameterValueException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // The namespace of the assignment. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - Message_ *string `locationName:"Message" type:"string"` + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` - // The AWS request ID for this request. - RequestId *string `type:"string"` + // The name of the user. + // + // UserName is a required field + UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s InvalidParameterValueException) String() string { +func (s ListIAMPolicyAssignmentsForUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidParameterValueException) GoString() string { +func (s ListIAMPolicyAssignmentsForUserInput) GoString() string { return s.String() } -func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { - return &InvalidParameterValueException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIAMPolicyAssignmentsForUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIAMPolicyAssignmentsForUserInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) + } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.UserName == nil { + invalidParams.Add(request.NewErrParamRequired("UserName")) + } + if s.UserName != nil && len(*s.UserName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } -} -// Code returns the exception type name. -func (s *InvalidParameterValueException) Code() string { - return "InvalidParameterValueException" + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Message returns the exception's message. -func (s *InvalidParameterValueException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListIAMPolicyAssignmentsForUserInput) SetAwsAccountId(v string) *ListIAMPolicyAssignmentsForUserInput { + s.AwsAccountId = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidParameterValueException) OrigErr() error { - return nil +// SetMaxResults sets the MaxResults field's value. +func (s *ListIAMPolicyAssignmentsForUserInput) SetMaxResults(v int64) *ListIAMPolicyAssignmentsForUserInput { + s.MaxResults = &v + return s } -func (s *InvalidParameterValueException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetNamespace sets the Namespace field's value. +func (s *ListIAMPolicyAssignmentsForUserInput) SetNamespace(v string) *ListIAMPolicyAssignmentsForUserInput { + s.Namespace = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidParameterValueException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetNextToken sets the NextToken field's value. +func (s *ListIAMPolicyAssignmentsForUserInput) SetNextToken(v string) *ListIAMPolicyAssignmentsForUserInput { + s.NextToken = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InvalidParameterValueException) RequestID() string { - return s.RespMetadata.RequestID +// SetUserName sets the UserName field's value. +func (s *ListIAMPolicyAssignmentsForUserInput) SetUserName(v string) *ListIAMPolicyAssignmentsForUserInput { + s.UserName = &v + return s } -// Jira parameters. -type JiraParameters struct { +type ListIAMPolicyAssignmentsForUserOutput struct { _ struct{} `type:"structure"` - // The base URL of the Jira site. - // - // SiteBaseUrl is a required field - SiteBaseUrl *string `min:"1" type:"string" required:"true"` + // The active assignments for this user. + ActiveAssignments []*ActiveIAMPolicyAssignment `type:"list"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s JiraParameters) String() string { +func (s ListIAMPolicyAssignmentsForUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s JiraParameters) GoString() string { +func (s ListIAMPolicyAssignmentsForUserOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *JiraParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "JiraParameters"} - if s.SiteBaseUrl == nil { - invalidParams.Add(request.NewErrParamRequired("SiteBaseUrl")) - } - if s.SiteBaseUrl != nil && len(*s.SiteBaseUrl) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SiteBaseUrl", 1)) - } +// SetActiveAssignments sets the ActiveAssignments field's value. +func (s *ListIAMPolicyAssignmentsForUserOutput) SetActiveAssignments(v []*ActiveIAMPolicyAssignment) *ListIAMPolicyAssignmentsForUserOutput { + s.ActiveAssignments = v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListIAMPolicyAssignmentsForUserOutput) SetNextToken(v string) *ListIAMPolicyAssignmentsForUserOutput { + s.NextToken = &v + return s } -// SetSiteBaseUrl sets the SiteBaseUrl field's value. -func (s *JiraParameters) SetSiteBaseUrl(v string) *JiraParameters { - s.SiteBaseUrl = &v +// SetRequestId sets the RequestId field's value. +func (s *ListIAMPolicyAssignmentsForUserOutput) SetRequestId(v string) *ListIAMPolicyAssignmentsForUserOutput { + s.RequestId = &v return s } -// Join instruction. -type JoinInstruction struct { +// SetStatus sets the Status field's value. +func (s *ListIAMPolicyAssignmentsForUserOutput) SetStatus(v int64) *ListIAMPolicyAssignmentsForUserOutput { + s.Status = &v + return s +} + +type ListIAMPolicyAssignmentsInput struct { _ struct{} `type:"structure"` - // Left operand. - // - // LeftOperand is a required field - LeftOperand *string `min:"1" type:"string" required:"true"` + // The status of the assignments. + AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // On Clause. + // The ID of the AWS account that contains these IAM policy assignments. // - // OnClause is a required field - OnClause *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Right operand. - // - // RightOperand is a required field - RightOperand *string `min:"1" type:"string" required:"true"` + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // Type. + // The namespace for the assignments. // - // Type is a required field - Type *string `type:"string" required:"true" enum:"JoinType"` + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s JoinInstruction) String() string { +func (s ListIAMPolicyAssignmentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s JoinInstruction) GoString() string { +func (s ListIAMPolicyAssignmentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *JoinInstruction) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "JoinInstruction"} - if s.LeftOperand == nil { - invalidParams.Add(request.NewErrParamRequired("LeftOperand")) - } - if s.LeftOperand != nil && len(*s.LeftOperand) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LeftOperand", 1)) - } - if s.OnClause == nil { - invalidParams.Add(request.NewErrParamRequired("OnClause")) +func (s *ListIAMPolicyAssignmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIAMPolicyAssignmentsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.OnClause != nil && len(*s.OnClause) < 1 { - invalidParams.Add(request.NewErrParamMinLen("OnClause", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.RightOperand == nil { - invalidParams.Add(request.NewErrParamRequired("RightOperand")) + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.RightOperand != nil && len(*s.RightOperand) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RightOperand", 1)) + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) } - if s.Type == nil { - invalidParams.Add(request.NewErrParamRequired("Type")) + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if invalidParams.Len() > 0 { @@ -15459,105 +18961,98 @@ func (s *JoinInstruction) Validate() error { return nil } -// SetLeftOperand sets the LeftOperand field's value. -func (s *JoinInstruction) SetLeftOperand(v string) *JoinInstruction { - s.LeftOperand = &v +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *ListIAMPolicyAssignmentsInput) SetAssignmentStatus(v string) *ListIAMPolicyAssignmentsInput { + s.AssignmentStatus = &v return s } -// SetOnClause sets the OnClause field's value. -func (s *JoinInstruction) SetOnClause(v string) *JoinInstruction { - s.OnClause = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *ListIAMPolicyAssignmentsInput) SetAwsAccountId(v string) *ListIAMPolicyAssignmentsInput { + s.AwsAccountId = &v return s } -// SetRightOperand sets the RightOperand field's value. -func (s *JoinInstruction) SetRightOperand(v string) *JoinInstruction { - s.RightOperand = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListIAMPolicyAssignmentsInput) SetMaxResults(v int64) *ListIAMPolicyAssignmentsInput { + s.MaxResults = &v return s } -// SetType sets the Type field's value. -func (s *JoinInstruction) SetType(v string) *JoinInstruction { - s.Type = &v +// SetNamespace sets the Namespace field's value. +func (s *ListIAMPolicyAssignmentsInput) SetNamespace(v string) *ListIAMPolicyAssignmentsInput { + s.Namespace = &v return s } -// A limit is exceeded. -type LimitExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetNextToken sets the NextToken field's value. +func (s *ListIAMPolicyAssignmentsInput) SetNextToken(v string) *ListIAMPolicyAssignmentsInput { + s.NextToken = &v + return s +} - Message_ *string `locationName:"Message" type:"string"` +type ListIAMPolicyAssignmentsOutput struct { + _ struct{} `type:"structure"` - // The AWS request ID for this request. + // Information describing the IAM policy assignments. + IAMPolicyAssignments []*IAMPolicyAssignmentSummary `type:"list"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. RequestId *string `type:"string"` - // Limit exceeded. - ResourceType *string `type:"string" enum:"ExceptionResourceType"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s LimitExceededException) String() string { +func (s ListIAMPolicyAssignmentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LimitExceededException) GoString() string { +func (s ListIAMPolicyAssignmentsOutput) GoString() string { return s.String() } -func newErrorLimitExceededException(v protocol.ResponseMetadata) error { - return &LimitExceededException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *LimitExceededException) Code() string { - return "LimitExceededException" -} - -// Message returns the exception's message. -func (s *LimitExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *LimitExceededException) OrigErr() error { - return nil +// SetIAMPolicyAssignments sets the IAMPolicyAssignments field's value. +func (s *ListIAMPolicyAssignmentsOutput) SetIAMPolicyAssignments(v []*IAMPolicyAssignmentSummary) *ListIAMPolicyAssignmentsOutput { + s.IAMPolicyAssignments = v + return s } -func (s *LimitExceededException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetNextToken sets the NextToken field's value. +func (s *ListIAMPolicyAssignmentsOutput) SetNextToken(v string) *ListIAMPolicyAssignmentsOutput { + s.NextToken = &v + return s } - -// Status code returns the HTTP status code for the request's response error. -func (s *LimitExceededException) StatusCode() int { - return s.RespMetadata.StatusCode + +// SetRequestId sets the RequestId field's value. +func (s *ListIAMPolicyAssignmentsOutput) SetRequestId(v string) *ListIAMPolicyAssignmentsOutput { + s.RequestId = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *LimitExceededException) RequestID() string { - return s.RespMetadata.RequestID +// SetStatus sets the Status field's value. +func (s *ListIAMPolicyAssignmentsOutput) SetStatus(v int64) *ListIAMPolicyAssignmentsOutput { + s.Status = &v + return s } -type ListDashboardVersionsInput struct { +type ListIngestionsInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboard that you're listing - // versions for. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard. + // The ID of the dataset used in the ingestion. // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` // The maximum number of results to be returned per request. MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` @@ -15567,29 +19062,29 @@ type ListDashboardVersionsInput struct { } // String returns the string representation -func (s ListDashboardVersionsInput) String() string { +func (s ListIngestionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDashboardVersionsInput) GoString() string { +func (s ListIngestionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListDashboardVersionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListDashboardVersionsInput"} +func (s *ListIngestionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIngestionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -15602,34 +19097,34 @@ func (s *ListDashboardVersionsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListDashboardVersionsInput) SetAwsAccountId(v string) *ListDashboardVersionsInput { +func (s *ListIngestionsInput) SetAwsAccountId(v string) *ListIngestionsInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *ListDashboardVersionsInput) SetDashboardId(v string) *ListDashboardVersionsInput { - s.DashboardId = &v +// SetDataSetId sets the DataSetId field's value. +func (s *ListIngestionsInput) SetDataSetId(v string) *ListIngestionsInput { + s.DataSetId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListDashboardVersionsInput) SetMaxResults(v int64) *ListDashboardVersionsInput { +func (s *ListIngestionsInput) SetMaxResults(v int64) *ListIngestionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListDashboardVersionsInput) SetNextToken(v string) *ListDashboardVersionsInput { +func (s *ListIngestionsInput) SetNextToken(v string) *ListIngestionsInput { s.NextToken = &v return s } -type ListDashboardVersionsOutput struct { +type ListIngestionsOutput struct { _ struct{} `type:"structure"` - // A structure that contains information about each version of the dashboard. - DashboardVersionSummaryList []*DashboardVersionSummary `type:"list"` + // A list of the ingestions. + Ingestions []*Ingestion `type:"list"` // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` @@ -15642,67 +19137,157 @@ type ListDashboardVersionsOutput struct { } // String returns the string representation -func (s ListDashboardVersionsOutput) String() string { +func (s ListIngestionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDashboardVersionsOutput) GoString() string { +func (s ListIngestionsOutput) GoString() string { return s.String() } -// SetDashboardVersionSummaryList sets the DashboardVersionSummaryList field's value. -func (s *ListDashboardVersionsOutput) SetDashboardVersionSummaryList(v []*DashboardVersionSummary) *ListDashboardVersionsOutput { - s.DashboardVersionSummaryList = v +// SetIngestions sets the Ingestions field's value. +func (s *ListIngestionsOutput) SetIngestions(v []*Ingestion) *ListIngestionsOutput { + s.Ingestions = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListDashboardVersionsOutput) SetNextToken(v string) *ListDashboardVersionsOutput { +func (s *ListIngestionsOutput) SetNextToken(v string) *ListIngestionsOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListDashboardVersionsOutput) SetRequestId(v string) *ListDashboardVersionsOutput { +func (s *ListIngestionsOutput) SetRequestId(v string) *ListIngestionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListDashboardVersionsOutput) SetStatus(v int64) *ListDashboardVersionsOutput { +func (s *ListIngestionsOutput) SetStatus(v int64) *ListIngestionsOutput { s.Status = &v return s } -type ListDashboardsInput struct { +type ListTagsForResourceInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboards that you're listing. + // The Amazon Resource Name (ARN) of the resource that you want a list of tags + // for. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"ResourceArn" 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.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` + + // Contains a map of the key-value pairs for the resource tag or tags assigned + // to the resource. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetRequestId sets the RequestId field's value. +func (s *ListTagsForResourceOutput) SetRequestId(v string) *ListTagsForResourceOutput { + s.RequestId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListTagsForResourceOutput) SetStatus(v int64) *ListTagsForResourceOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListTemplateAliasesInput struct { + _ struct{} `type:"structure"` + + // The ID of the AWS account that contains the template aliases that you're + // listing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The maximum number of results to be returned per request. - MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + MaxResults *int64 `location:"querystring" locationName:"max-result" min:"1" type:"integer"` // The token for the next set of results, or null if there are no more results. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + + // The ID for the template. + // + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListDashboardsInput) String() string { +func (s ListTemplateAliasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDashboardsInput) GoString() string { +func (s ListTemplateAliasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListDashboardsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListDashboardsInput"} +func (s *ListTemplateAliasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTemplateAliasesInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -15712,6 +19297,12 @@ func (s *ListDashboardsInput) Validate() error { if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) + } + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -15720,29 +19311,31 @@ func (s *ListDashboardsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListDashboardsInput) SetAwsAccountId(v string) *ListDashboardsInput { +func (s *ListTemplateAliasesInput) SetAwsAccountId(v string) *ListTemplateAliasesInput { s.AwsAccountId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListDashboardsInput) SetMaxResults(v int64) *ListDashboardsInput { +func (s *ListTemplateAliasesInput) SetMaxResults(v int64) *ListTemplateAliasesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListDashboardsInput) SetNextToken(v string) *ListDashboardsInput { +func (s *ListTemplateAliasesInput) SetNextToken(v string) *ListTemplateAliasesInput { s.NextToken = &v return s } -type ListDashboardsOutput struct { - _ struct{} `type:"structure"` +// SetTemplateId sets the TemplateId field's value. +func (s *ListTemplateAliasesInput) SetTemplateId(v string) *ListTemplateAliasesInput { + s.TemplateId = &v + return s +} - // A structure that contains all of the dashboards in your AWS account. This - // structure provides basic information about the dashboards. - DashboardSummaryList []*DashboardSummary `type:"list"` +type ListTemplateAliasesOutput struct { + _ struct{} `type:"structure"` // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` @@ -15752,46 +19345,49 @@ type ListDashboardsOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // A structure containing the list of the template's aliases. + TemplateAliasList []*TemplateAlias `type:"list"` } // String returns the string representation -func (s ListDashboardsOutput) String() string { +func (s ListTemplateAliasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDashboardsOutput) GoString() string { +func (s ListTemplateAliasesOutput) GoString() string { return s.String() } -// SetDashboardSummaryList sets the DashboardSummaryList field's value. -func (s *ListDashboardsOutput) SetDashboardSummaryList(v []*DashboardSummary) *ListDashboardsOutput { - s.DashboardSummaryList = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListDashboardsOutput) SetNextToken(v string) *ListDashboardsOutput { +func (s *ListTemplateAliasesOutput) SetNextToken(v string) *ListTemplateAliasesOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListDashboardsOutput) SetRequestId(v string) *ListDashboardsOutput { +func (s *ListTemplateAliasesOutput) SetRequestId(v string) *ListTemplateAliasesOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListDashboardsOutput) SetStatus(v int64) *ListDashboardsOutput { +func (s *ListTemplateAliasesOutput) SetStatus(v int64) *ListTemplateAliasesOutput { s.Status = &v return s } -type ListDataSetsInput struct { +// SetTemplateAliasList sets the TemplateAliasList field's value. +func (s *ListTemplateAliasesOutput) SetTemplateAliasList(v []*TemplateAlias) *ListTemplateAliasesOutput { + s.TemplateAliasList = v + return s +} + +type ListTemplateVersionsInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The ID of the AWS account that contains the templates that you're listing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` @@ -15801,21 +19397,26 @@ type ListDataSetsInput struct { // The token for the next set of results, or null if there are no more results. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + + // The ID for the template. + // + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListDataSetsInput) String() string { +func (s ListTemplateVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDataSetsInput) GoString() string { +func (s ListTemplateVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListDataSetsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListDataSetsInput"} +func (s *ListTemplateVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTemplateVersionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -15825,6 +19426,12 @@ func (s *ListDataSetsInput) Validate() error { if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) + } + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -15833,29 +19440,32 @@ func (s *ListDataSetsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListDataSetsInput) SetAwsAccountId(v string) *ListDataSetsInput { +func (s *ListTemplateVersionsInput) SetAwsAccountId(v string) *ListTemplateVersionsInput { s.AwsAccountId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListDataSetsInput) SetMaxResults(v int64) *ListDataSetsInput { +func (s *ListTemplateVersionsInput) SetMaxResults(v int64) *ListTemplateVersionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListDataSetsInput) SetNextToken(v string) *ListDataSetsInput { +func (s *ListTemplateVersionsInput) SetNextToken(v string) *ListTemplateVersionsInput { s.NextToken = &v return s } -type ListDataSetsOutput struct { +// SetTemplateId sets the TemplateId field's value. +func (s *ListTemplateVersionsInput) SetTemplateId(v string) *ListTemplateVersionsInput { + s.TemplateId = &v + return s +} + +type ListTemplateVersionsOutput struct { _ struct{} `type:"structure"` - // The list of dataset summaries. - DataSetSummaries []*DataSetSummary `type:"list"` - // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` @@ -15864,70 +19474,73 @@ type ListDataSetsOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // A structure containing a list of all the versions of the specified template. + TemplateVersionSummaryList []*TemplateVersionSummary `type:"list"` } // String returns the string representation -func (s ListDataSetsOutput) String() string { +func (s ListTemplateVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDataSetsOutput) GoString() string { +func (s ListTemplateVersionsOutput) GoString() string { return s.String() } -// SetDataSetSummaries sets the DataSetSummaries field's value. -func (s *ListDataSetsOutput) SetDataSetSummaries(v []*DataSetSummary) *ListDataSetsOutput { - s.DataSetSummaries = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListDataSetsOutput) SetNextToken(v string) *ListDataSetsOutput { +func (s *ListTemplateVersionsOutput) SetNextToken(v string) *ListTemplateVersionsOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListDataSetsOutput) SetRequestId(v string) *ListDataSetsOutput { +func (s *ListTemplateVersionsOutput) SetRequestId(v string) *ListTemplateVersionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListDataSetsOutput) SetStatus(v int64) *ListDataSetsOutput { +func (s *ListTemplateVersionsOutput) SetStatus(v int64) *ListTemplateVersionsOutput { s.Status = &v return s } -type ListDataSourcesInput struct { +// SetTemplateVersionSummaryList sets the TemplateVersionSummaryList field's value. +func (s *ListTemplateVersionsOutput) SetTemplateVersionSummaryList(v []*TemplateVersionSummary) *ListTemplateVersionsOutput { + s.TemplateVersionSummaryList = v + return s +} + +type ListTemplatesInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The ID of the AWS account that contains the templates that you're listing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` // The maximum number of results to be returned per request. - MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + MaxResults *int64 `location:"querystring" locationName:"max-result" min:"1" type:"integer"` // The token for the next set of results, or null if there are no more results. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s ListDataSourcesInput) String() string { +func (s ListTemplatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDataSourcesInput) GoString() string { +func (s ListTemplatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListDataSourcesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"} +func (s *ListTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTemplatesInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -15945,29 +19558,26 @@ func (s *ListDataSourcesInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListDataSourcesInput) SetAwsAccountId(v string) *ListDataSourcesInput { +func (s *ListTemplatesInput) SetAwsAccountId(v string) *ListTemplatesInput { s.AwsAccountId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput { +func (s *ListTemplatesInput) SetMaxResults(v int64) *ListTemplatesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput { +func (s *ListTemplatesInput) SetNextToken(v string) *ListTemplatesInput { s.NextToken = &v return s } -type ListDataSourcesOutput struct { +type ListTemplatesOutput struct { _ struct{} `type:"structure"` - // A list of data sources. - DataSources []*DataSource `type:"list"` - // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` @@ -15976,101 +19586,92 @@ type ListDataSourcesOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // A structure containing information about the templates in the list. + TemplateSummaryList []*TemplateSummary `type:"list"` } // String returns the string representation -func (s ListDataSourcesOutput) String() string { +func (s ListTemplatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListDataSourcesOutput) GoString() string { +func (s ListTemplatesOutput) GoString() string { return s.String() } -// SetDataSources sets the DataSources field's value. -func (s *ListDataSourcesOutput) SetDataSources(v []*DataSource) *ListDataSourcesOutput { - s.DataSources = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput { +func (s *ListTemplatesOutput) SetNextToken(v string) *ListTemplatesOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListDataSourcesOutput) SetRequestId(v string) *ListDataSourcesOutput { +func (s *ListTemplatesOutput) SetRequestId(v string) *ListTemplatesOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListDataSourcesOutput) SetStatus(v int64) *ListDataSourcesOutput { +func (s *ListTemplatesOutput) SetStatus(v int64) *ListTemplatesOutput { s.Status = &v return s } -type ListGroupMembershipsInput struct { +// SetTemplateSummaryList sets the TemplateSummaryList field's value. +func (s *ListTemplatesOutput) SetTemplateSummaryList(v []*TemplateSummary) *ListTemplatesOutput { + s.TemplateSummaryList = v + return s +} + +type ListThemeAliasesInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The ID of the AWS account that contains the theme aliases that you're listing. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The name of the group that you want to see a membership list of. - // - // GroupName is a required field - GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` + // The maximum number of results to be returned per request. + MaxResults *int64 `location:"querystring" locationName:"max-result" min:"1" type:"integer"` - // The maximum number of results to return from this request. - MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + // The token for the next set of results, or null if there are no more results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` - // The namespace. Currently, you should set this to default. + // The ID for the theme. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - - // A pagination token that can be used in a subsequent request. - NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListGroupMembershipsInput) String() string { +func (s ListThemeAliasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListGroupMembershipsInput) GoString() string { +func (s ListThemeAliasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListGroupMembershipsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListGroupMembershipsInput"} +func (s *ListThemeAliasesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListThemeAliasesInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.GroupName == nil { - invalidParams.Add(request.NewErrParamRequired("GroupName")) - } - if s.GroupName != nil && len(*s.GroupName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) - } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if invalidParams.Len() > 0 { @@ -16080,42 +19681,33 @@ func (s *ListGroupMembershipsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListGroupMembershipsInput) SetAwsAccountId(v string) *ListGroupMembershipsInput { +func (s *ListThemeAliasesInput) SetAwsAccountId(v string) *ListThemeAliasesInput { s.AwsAccountId = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *ListGroupMembershipsInput) SetGroupName(v string) *ListGroupMembershipsInput { - s.GroupName = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListGroupMembershipsInput) SetMaxResults(v int64) *ListGroupMembershipsInput { +func (s *ListThemeAliasesInput) SetMaxResults(v int64) *ListThemeAliasesInput { s.MaxResults = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *ListGroupMembershipsInput) SetNamespace(v string) *ListGroupMembershipsInput { - s.Namespace = &v +// SetNextToken sets the NextToken field's value. +func (s *ListThemeAliasesInput) SetNextToken(v string) *ListThemeAliasesInput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListGroupMembershipsInput) SetNextToken(v string) *ListGroupMembershipsInput { - s.NextToken = &v +// SetThemeId sets the ThemeId field's value. +func (s *ListThemeAliasesInput) SetThemeId(v string) *ListThemeAliasesInput { + s.ThemeId = &v return s } -type ListGroupMembershipsOutput struct { +type ListThemeAliasesOutput struct { _ struct{} `type:"structure"` - // The list of the members of the group. - GroupMemberList []*GroupMember `type:"list"` - - // A pagination token that can be used in a subsequent request. + // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` // The AWS request ID for this operation. @@ -16123,76 +19715,78 @@ type ListGroupMembershipsOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // A structure containing the list of the theme's aliases. + ThemeAliasList []*ThemeAlias `type:"list"` } // String returns the string representation -func (s ListGroupMembershipsOutput) String() string { +func (s ListThemeAliasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListGroupMembershipsOutput) GoString() string { +func (s ListThemeAliasesOutput) GoString() string { return s.String() } -// SetGroupMemberList sets the GroupMemberList field's value. -func (s *ListGroupMembershipsOutput) SetGroupMemberList(v []*GroupMember) *ListGroupMembershipsOutput { - s.GroupMemberList = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListGroupMembershipsOutput) SetNextToken(v string) *ListGroupMembershipsOutput { +func (s *ListThemeAliasesOutput) SetNextToken(v string) *ListThemeAliasesOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListGroupMembershipsOutput) SetRequestId(v string) *ListGroupMembershipsOutput { +func (s *ListThemeAliasesOutput) SetRequestId(v string) *ListThemeAliasesOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListGroupMembershipsOutput) SetStatus(v int64) *ListGroupMembershipsOutput { +func (s *ListThemeAliasesOutput) SetStatus(v int64) *ListThemeAliasesOutput { s.Status = &v return s } -type ListGroupsInput struct { +// SetThemeAliasList sets the ThemeAliasList field's value. +func (s *ListThemeAliasesOutput) SetThemeAliasList(v []*ThemeAlias) *ListThemeAliasesOutput { + s.ThemeAliasList = v + return s +} + +type ListThemeVersionsInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The ID of the AWS 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"` - // The maximum number of results to return. + // The maximum number of results to be returned per request. MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // The namespace. Currently, you should set this to default. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - - // A pagination token that can be used in a subsequent request. + // The token for the next set of results, or null if there are no more results. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + + // The ID for the theme. + // + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListGroupsInput) String() string { +func (s ListThemeVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListGroupsInput) GoString() string { +func (s ListThemeVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListGroupsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListGroupsInput"} +func (s *ListThemeVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListThemeVersionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -16202,11 +19796,11 @@ func (s *ListGroupsInput) Validate() error { if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if invalidParams.Len() > 0 { @@ -16216,36 +19810,33 @@ func (s *ListGroupsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListGroupsInput) SetAwsAccountId(v string) *ListGroupsInput { +func (s *ListThemeVersionsInput) SetAwsAccountId(v string) *ListThemeVersionsInput { s.AwsAccountId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListGroupsInput) SetMaxResults(v int64) *ListGroupsInput { +func (s *ListThemeVersionsInput) SetMaxResults(v int64) *ListThemeVersionsInput { s.MaxResults = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *ListGroupsInput) SetNamespace(v string) *ListGroupsInput { - s.Namespace = &v +// SetNextToken sets the NextToken field's value. +func (s *ListThemeVersionsInput) SetNextToken(v string) *ListThemeVersionsInput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListGroupsInput) SetNextToken(v string) *ListGroupsInput { - s.NextToken = &v +// SetThemeId sets the ThemeId field's value. +func (s *ListThemeVersionsInput) SetThemeId(v string) *ListThemeVersionsInput { + s.ThemeId = &v return s } -type ListGroupsOutput struct { +type ListThemeVersionsOutput struct { _ struct{} `type:"structure"` - // The list of the groups. - GroupList []*Group `type:"list"` - - // A pagination token that can be used in a subsequent request. + // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` // The AWS request ID for this operation. @@ -16253,46 +19844,49 @@ type ListGroupsOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // A structure containing a list of all the versions of the specified theme. + ThemeVersionSummaryList []*ThemeVersionSummary `type:"list"` } // String returns the string representation -func (s ListGroupsOutput) String() string { +func (s ListThemeVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListGroupsOutput) GoString() string { +func (s ListThemeVersionsOutput) GoString() string { return s.String() } -// SetGroupList sets the GroupList field's value. -func (s *ListGroupsOutput) SetGroupList(v []*Group) *ListGroupsOutput { - s.GroupList = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput { +func (s *ListThemeVersionsOutput) SetNextToken(v string) *ListThemeVersionsOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListGroupsOutput) SetRequestId(v string) *ListGroupsOutput { +func (s *ListThemeVersionsOutput) SetRequestId(v string) *ListThemeVersionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListGroupsOutput) SetStatus(v int64) *ListGroupsOutput { +func (s *ListThemeVersionsOutput) SetStatus(v int64) *ListThemeVersionsOutput { s.Status = &v return s } -type ListIAMPolicyAssignmentsForUserInput struct { +// SetThemeVersionSummaryList sets the ThemeVersionSummaryList field's value. +func (s *ListThemeVersionsOutput) SetThemeVersionSummaryList(v []*ThemeVersionSummary) *ListThemeVersionsOutput { + s.ThemeVersionSummaryList = v + return s +} + +type ListThemesInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the assignments. + // The ID of the AWS 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"` @@ -16300,33 +19894,32 @@ type ListIAMPolicyAssignmentsForUserInput struct { // The maximum number of results to be returned per request. MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // The namespace of the assignment. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // The token for the next set of results, or null if there are no more results. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` - // The name of the user. + // The type of themes that you want to list. Valid options include the following: // - // UserName is a required field - UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` + // * ALL (default)- Display all existing themes. + // + // * CUSTOM - Display only the themes created by people using Amazon QuickSight. + // + // * QUICKSIGHT - Display only the starting themes defined by QuickSight. + Type *string `location:"querystring" locationName:"type" type:"string" enum:"ThemeType"` } // String returns the string representation -func (s ListIAMPolicyAssignmentsForUserInput) String() string { +func (s ListThemesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListIAMPolicyAssignmentsForUserInput) GoString() string { +func (s ListThemesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListIAMPolicyAssignmentsForUserInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListIAMPolicyAssignmentsForUserInput"} +func (s *ListThemesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListThemesInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -16336,18 +19929,6 @@ func (s *ListIAMPolicyAssignmentsForUserInput) Validate() error { if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 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 @@ -16356,41 +19937,32 @@ func (s *ListIAMPolicyAssignmentsForUserInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListIAMPolicyAssignmentsForUserInput) SetAwsAccountId(v string) *ListIAMPolicyAssignmentsForUserInput { +func (s *ListThemesInput) SetAwsAccountId(v string) *ListThemesInput { s.AwsAccountId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListIAMPolicyAssignmentsForUserInput) SetMaxResults(v int64) *ListIAMPolicyAssignmentsForUserInput { +func (s *ListThemesInput) SetMaxResults(v int64) *ListThemesInput { s.MaxResults = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *ListIAMPolicyAssignmentsForUserInput) SetNamespace(v string) *ListIAMPolicyAssignmentsForUserInput { - s.Namespace = &v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListIAMPolicyAssignmentsForUserInput) SetNextToken(v string) *ListIAMPolicyAssignmentsForUserInput { +func (s *ListThemesInput) SetNextToken(v string) *ListThemesInput { s.NextToken = &v return s } -// SetUserName sets the UserName field's value. -func (s *ListIAMPolicyAssignmentsForUserInput) SetUserName(v string) *ListIAMPolicyAssignmentsForUserInput { - s.UserName = &v +// SetType sets the Type field's value. +func (s *ListThemesInput) SetType(v string) *ListThemesInput { + s.Type = &v return s } -type ListIAMPolicyAssignmentsForUserOutput struct { +type ListThemesOutput struct { _ struct{} `type:"structure"` - // The active assignments for this user. - ActiveAssignments []*ActiveIAMPolicyAssignment `type:"list"` - // The token for the next set of results, or null if there are no more results. NextToken *string `type:"string"` @@ -16399,78 +19971,84 @@ type ListIAMPolicyAssignmentsForUserOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // Information about the themes in the list. + ThemeSummaryList []*ThemeSummary `type:"list"` } // String returns the string representation -func (s ListIAMPolicyAssignmentsForUserOutput) String() string { +func (s ListThemesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListIAMPolicyAssignmentsForUserOutput) GoString() string { +func (s ListThemesOutput) GoString() string { return s.String() } -// SetActiveAssignments sets the ActiveAssignments field's value. -func (s *ListIAMPolicyAssignmentsForUserOutput) SetActiveAssignments(v []*ActiveIAMPolicyAssignment) *ListIAMPolicyAssignmentsForUserOutput { - s.ActiveAssignments = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListIAMPolicyAssignmentsForUserOutput) SetNextToken(v string) *ListIAMPolicyAssignmentsForUserOutput { +func (s *ListThemesOutput) SetNextToken(v string) *ListThemesOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListIAMPolicyAssignmentsForUserOutput) SetRequestId(v string) *ListIAMPolicyAssignmentsForUserOutput { +func (s *ListThemesOutput) SetRequestId(v string) *ListThemesOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListIAMPolicyAssignmentsForUserOutput) SetStatus(v int64) *ListIAMPolicyAssignmentsForUserOutput { +func (s *ListThemesOutput) SetStatus(v int64) *ListThemesOutput { s.Status = &v return s } -type ListIAMPolicyAssignmentsInput struct { - _ struct{} `type:"structure"` +// SetThemeSummaryList sets the ThemeSummaryList field's value. +func (s *ListThemesOutput) SetThemeSummaryList(v []*ThemeSummary) *ListThemesOutput { + s.ThemeSummaryList = v + return s +} - // The status of the assignments. - AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` +type ListUserGroupsInput struct { + _ struct{} `type:"structure"` - // The ID of the AWS account that contains these IAM policy assignments. + // The AWS account ID that the user is in. Currently, you use the ID for the + // AWS 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 maximum number of results to be returned per request. + // The maximum number of results to return from this request. MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // The namespace for the assignments. + // The namespace. Currently, you should set this to default. // // Namespace is a required field Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // The token for the next set of results, or null if there are no more results. + // A pagination token that can be used in a subsequent request. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + + // The Amazon QuickSight user name that you want to list group memberships for. + // + // UserName is a required field + UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListIAMPolicyAssignmentsInput) String() string { +func (s ListUserGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListIAMPolicyAssignmentsInput) GoString() string { +func (s ListUserGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListIAMPolicyAssignmentsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListIAMPolicyAssignmentsInput"} +func (s *ListUserGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListUserGroupsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } @@ -16486,6 +20064,12 @@ func (s *ListIAMPolicyAssignmentsInput) Validate() error { if s.Namespace != nil && len(*s.Namespace) < 1 { invalidParams.Add(request.NewErrParamMinLen("Namespace", 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 @@ -16493,43 +20077,43 @@ func (s *ListIAMPolicyAssignmentsInput) Validate() error { return nil } -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *ListIAMPolicyAssignmentsInput) SetAssignmentStatus(v string) *ListIAMPolicyAssignmentsInput { - s.AssignmentStatus = &v - return s -} - // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListIAMPolicyAssignmentsInput) SetAwsAccountId(v string) *ListIAMPolicyAssignmentsInput { +func (s *ListUserGroupsInput) SetAwsAccountId(v string) *ListUserGroupsInput { s.AwsAccountId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListIAMPolicyAssignmentsInput) SetMaxResults(v int64) *ListIAMPolicyAssignmentsInput { +func (s *ListUserGroupsInput) SetMaxResults(v int64) *ListUserGroupsInput { s.MaxResults = &v return s } // SetNamespace sets the Namespace field's value. -func (s *ListIAMPolicyAssignmentsInput) SetNamespace(v string) *ListIAMPolicyAssignmentsInput { +func (s *ListUserGroupsInput) SetNamespace(v string) *ListUserGroupsInput { s.Namespace = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListIAMPolicyAssignmentsInput) SetNextToken(v string) *ListIAMPolicyAssignmentsInput { +func (s *ListUserGroupsInput) SetNextToken(v string) *ListUserGroupsInput { s.NextToken = &v return s } -type ListIAMPolicyAssignmentsOutput struct { +// SetUserName sets the UserName field's value. +func (s *ListUserGroupsInput) SetUserName(v string) *ListUserGroupsInput { + s.UserName = &v + return s +} + +type ListUserGroupsOutput struct { _ struct{} `type:"structure"` - // Information describing the IAM policy assignments. - IAMPolicyAssignments []*IAMPolicyAssignmentSummary `type:"list"` + // The list of groups the user is a member of. + GroupList []*Group `type:"list"` - // The token for the next set of results, or null if there are no more results. + // A pagination token that can be used in a subsequent request. NextToken *string `type:"string"` // The AWS request ID for this operation. @@ -16540,87 +20124,88 @@ type ListIAMPolicyAssignmentsOutput struct { } // String returns the string representation -func (s ListIAMPolicyAssignmentsOutput) String() string { +func (s ListUserGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListIAMPolicyAssignmentsOutput) GoString() string { +func (s ListUserGroupsOutput) GoString() string { return s.String() } -// SetIAMPolicyAssignments sets the IAMPolicyAssignments field's value. -func (s *ListIAMPolicyAssignmentsOutput) SetIAMPolicyAssignments(v []*IAMPolicyAssignmentSummary) *ListIAMPolicyAssignmentsOutput { - s.IAMPolicyAssignments = v +// SetGroupList sets the GroupList field's value. +func (s *ListUserGroupsOutput) SetGroupList(v []*Group) *ListUserGroupsOutput { + s.GroupList = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListIAMPolicyAssignmentsOutput) SetNextToken(v string) *ListIAMPolicyAssignmentsOutput { +func (s *ListUserGroupsOutput) SetNextToken(v string) *ListUserGroupsOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListIAMPolicyAssignmentsOutput) SetRequestId(v string) *ListIAMPolicyAssignmentsOutput { +func (s *ListUserGroupsOutput) SetRequestId(v string) *ListUserGroupsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListIAMPolicyAssignmentsOutput) SetStatus(v int64) *ListIAMPolicyAssignmentsOutput { +func (s *ListUserGroupsOutput) SetStatus(v int64) *ListUserGroupsOutput { s.Status = &v return s } -type ListIngestionsInput struct { +type ListUsersInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The ID for the AWS account that the user is in. Currently, you use the ID + // for the AWS 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 ID of the dataset used in the ingestion. - // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` - - // The maximum number of results to be returned per request. + // The maximum number of results to return from this request. MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // The token for the next set of results, or null if there are no more results. + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + + // A pagination token that can be used in a subsequent request. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } // String returns the string representation -func (s ListIngestionsInput) String() string { +func (s ListUsersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListIngestionsInput) GoString() string { +func (s ListUsersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListIngestionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListIngestionsInput"} +func (s *ListUsersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) - } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) - } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -16629,36 +20214,33 @@ func (s *ListIngestionsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListIngestionsInput) SetAwsAccountId(v string) *ListIngestionsInput { +func (s *ListUsersInput) SetAwsAccountId(v string) *ListUsersInput { s.AwsAccountId = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *ListIngestionsInput) SetDataSetId(v string) *ListIngestionsInput { - s.DataSetId = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListUsersInput) SetMaxResults(v int64) *ListUsersInput { + s.MaxResults = &v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListIngestionsInput) SetMaxResults(v int64) *ListIngestionsInput { - s.MaxResults = &v +// SetNamespace sets the Namespace field's value. +func (s *ListUsersInput) SetNamespace(v string) *ListUsersInput { + s.Namespace = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListIngestionsInput) SetNextToken(v string) *ListIngestionsInput { +func (s *ListUsersInput) SetNextToken(v string) *ListUsersInput { s.NextToken = &v return s } -type ListIngestionsOutput struct { +type ListUsersOutput struct { _ struct{} `type:"structure"` - // A list of the ingestions. - Ingestions []*Ingestion `type:"list"` - - // The token for the next set of results, or null if there are no more results. + // A pagination token that can be used in a subsequent request. NextToken *string `type:"string"` // The AWS request ID for this operation. @@ -16666,70 +20248,105 @@ type ListIngestionsOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The list of users. + UserList []*User `type:"list"` } // String returns the string representation -func (s ListIngestionsOutput) String() string { +func (s ListUsersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListIngestionsOutput) GoString() string { +func (s ListUsersOutput) GoString() string { return s.String() } -// SetIngestions sets the Ingestions field's value. -func (s *ListIngestionsOutput) SetIngestions(v []*Ingestion) *ListIngestionsOutput { - s.Ingestions = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListIngestionsOutput) SetNextToken(v string) *ListIngestionsOutput { +func (s *ListUsersOutput) SetNextToken(v string) *ListUsersOutput { s.NextToken = &v return s } // SetRequestId sets the RequestId field's value. -func (s *ListIngestionsOutput) SetRequestId(v string) *ListIngestionsOutput { +func (s *ListUsersOutput) SetRequestId(v string) *ListUsersOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *ListIngestionsOutput) SetStatus(v int64) *ListIngestionsOutput { +func (s *ListUsersOutput) SetStatus(v int64) *ListUsersOutput { s.Status = &v return s } -type ListTagsForResourceInput struct { +// SetUserList sets the UserList field's value. +func (s *ListUsersOutput) SetUserList(v []*User) *ListUsersOutput { + s.UserList = v + return s +} + +// A logical table is a unit that joins and that data transformations operate +// on. A logical table has a source, which can be either a physical table or +// result of a join. When a logical table points to a physical table, the logical +// table acts as a mutable copy of that physical table through transform operations. +type LogicalTable struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource that you want a list of tags - // for. + // A display name for the logical table. // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` + // Alias is a required field + Alias *string `min:"1" type:"string" required:"true"` + + // Transform operations that act on this logical table. + DataTransforms []*TransformOperation `min:"1" type:"list"` + + // Source of this logical table. + // + // Source is a required field + Source *LogicalTableSource `type:"structure" required:"true"` } // String returns the string representation -func (s ListTagsForResourceInput) String() string { +func (s LogicalTable) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTagsForResourceInput) GoString() string { +func (s LogicalTable) 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.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) +func (s *LogicalTable) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LogicalTable"} + if s.Alias == nil { + invalidParams.Add(request.NewErrParamRequired("Alias")) } - if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + if s.Alias != nil && len(*s.Alias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Alias", 1)) + } + if s.DataTransforms != nil && len(s.DataTransforms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataTransforms", 1)) + } + if s.Source == nil { + invalidParams.Add(request.NewErrParamRequired("Source")) + } + if s.DataTransforms != nil { + for i, v := range s.DataTransforms { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataTransforms", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Source != nil { + if err := s.Source.Validate(); err != nil { + invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -16738,102 +20355,115 @@ func (s *ListTagsForResourceInput) Validate() error { return nil } -// SetResourceArn sets the ResourceArn field's value. -func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { - s.ResourceArn = &v +// SetAlias sets the Alias field's value. +func (s *LogicalTable) SetAlias(v string) *LogicalTable { + s.Alias = &v return s } -type ListTagsForResourceOutput struct { +// SetDataTransforms sets the DataTransforms field's value. +func (s *LogicalTable) SetDataTransforms(v []*TransformOperation) *LogicalTable { + s.DataTransforms = v + return s +} + +// SetSource sets the Source field's value. +func (s *LogicalTable) SetSource(v *LogicalTableSource) *LogicalTable { + s.Source = v + return s +} + +// Information about the source of a logical table. This is a variant type structure. +// For this structure to be valid, only one of the attributes can be non-null. +type LogicalTableSource struct { _ struct{} `type:"structure"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Specifies the result of a join of two logical tables. + JoinInstruction *JoinInstruction `type:"structure"` - // Contains a map of the key-value pairs for the resource tag or tags assigned - // to the resource. - Tags []*Tag `min:"1" type:"list"` + // Physical table ID. + PhysicalTableId *string `min:"1" type:"string"` } // String returns the string representation -func (s ListTagsForResourceOutput) String() string { +func (s LogicalTableSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTagsForResourceOutput) GoString() string { +func (s LogicalTableSource) GoString() string { return s.String() } -// SetRequestId sets the RequestId field's value. -func (s *ListTagsForResourceOutput) SetRequestId(v string) *ListTagsForResourceOutput { - s.RequestId = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *LogicalTableSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LogicalTableSource"} + if s.PhysicalTableId != nil && len(*s.PhysicalTableId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PhysicalTableId", 1)) + } + if s.JoinInstruction != nil { + if err := s.JoinInstruction.Validate(); err != nil { + invalidParams.AddNested("JoinInstruction", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStatus sets the Status field's value. -func (s *ListTagsForResourceOutput) SetStatus(v int64) *ListTagsForResourceOutput { - s.Status = &v +// SetJoinInstruction sets the JoinInstruction field's value. +func (s *LogicalTableSource) SetJoinInstruction(v *JoinInstruction) *LogicalTableSource { + s.JoinInstruction = v return s } -// SetTags sets the Tags field's value. -func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { - s.Tags = v +// SetPhysicalTableId sets the PhysicalTableId field's value. +func (s *LogicalTableSource) SetPhysicalTableId(v string) *LogicalTableSource { + s.PhysicalTableId = &v return s } -type ListTemplateAliasesInput struct { +// Amazon S3 manifest file location. +type ManifestFileLocation struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the template aliases that you're - // listing. + // Amazon S3 bucket. // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - - // The maximum number of results to be returned per request. - MaxResults *int64 `location:"querystring" locationName:"max-result" min:"1" type:"integer"` - - // The token for the next set of results, or null if there are no more results. - NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + // Bucket is a required field + Bucket *string `min:"1" type:"string" required:"true"` - // The ID for the template. + // Amazon S3 key that identifies an object. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListTemplateAliasesInput) String() string { +func (s ManifestFileLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTemplateAliasesInput) GoString() string { +func (s ManifestFileLocation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListTemplateAliasesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListTemplateAliasesInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) +func (s *ManifestFileLocation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ManifestFileLocation"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + if s.Bucket != nil && len(*s.Bucket) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { @@ -16842,127 +20472,168 @@ func (s *ListTemplateAliasesInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListTemplateAliasesInput) SetAwsAccountId(v string) *ListTemplateAliasesInput { - s.AwsAccountId = &v +// SetBucket sets the Bucket field's value. +func (s *ManifestFileLocation) SetBucket(v string) *ManifestFileLocation { + s.Bucket = &v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListTemplateAliasesInput) SetMaxResults(v int64) *ListTemplateAliasesInput { - s.MaxResults = &v +// SetKey sets the Key field's value. +func (s *ManifestFileLocation) SetKey(v string) *ManifestFileLocation { + s.Key = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListTemplateAliasesInput) SetNextToken(v string) *ListTemplateAliasesInput { - s.NextToken = &v - return s +// The display options for margins around the outside edge of sheets. +type MarginStyle struct { + _ struct{} `type:"structure"` + + // This Boolean value controls whether to display sheet margins. + Show *bool `type:"boolean"` } -// SetTemplateId sets the TemplateId field's value. -func (s *ListTemplateAliasesInput) SetTemplateId(v string) *ListTemplateAliasesInput { - s.TemplateId = &v +// String returns the string representation +func (s MarginStyle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MarginStyle) GoString() string { + return s.String() +} + +// SetShow sets the Show field's value. +func (s *MarginStyle) SetShow(v bool) *MarginStyle { + s.Show = &v return s } -type ListTemplateAliasesOutput struct { +// MariaDB parameters. +type MariaDbParameters struct { _ struct{} `type:"structure"` - // The token for the next set of results, or null if there are no more results. - NextToken *string `type:"string"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // Database. + // + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` - // A structure containing the list of the template's aliases. - TemplateAliasList []*TemplateAlias `type:"list"` + // Port. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation -func (s ListTemplateAliasesOutput) String() string { +func (s MariaDbParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTemplateAliasesOutput) GoString() string { +func (s MariaDbParameters) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListTemplateAliasesOutput) SetNextToken(v string) *ListTemplateAliasesOutput { - s.NextToken = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *MariaDbParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MariaDbParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) + } + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetRequestId sets the RequestId field's value. -func (s *ListTemplateAliasesOutput) SetRequestId(v string) *ListTemplateAliasesOutput { - s.RequestId = &v +// SetDatabase sets the Database field's value. +func (s *MariaDbParameters) SetDatabase(v string) *MariaDbParameters { + s.Database = &v return s } -// SetStatus sets the Status field's value. -func (s *ListTemplateAliasesOutput) SetStatus(v int64) *ListTemplateAliasesOutput { - s.Status = &v +// SetHost sets the Host field's value. +func (s *MariaDbParameters) SetHost(v string) *MariaDbParameters { + s.Host = &v return s } -// SetTemplateAliasList sets the TemplateAliasList field's value. -func (s *ListTemplateAliasesOutput) SetTemplateAliasList(v []*TemplateAlias) *ListTemplateAliasesOutput { - s.TemplateAliasList = v +// SetPort sets the Port field's value. +func (s *MariaDbParameters) SetPort(v int64) *MariaDbParameters { + s.Port = &v return s } -type ListTemplateVersionsInput struct { +// MySQL parameters. +type MySqlParameters struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the templates that you're listing. + // Database. // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - - // The maximum number of results to be returned per request. - MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // The token for the next set of results, or null if there are no more results. - NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` - // The ID for the template. + // Port. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation -func (s ListTemplateVersionsInput) String() string { +func (s MySqlParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTemplateVersionsInput) GoString() string { +func (s MySqlParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListTemplateVersionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListTemplateVersionsInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) +func (s *MySqlParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MySqlParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if invalidParams.Len() > 0 { @@ -16971,116 +20642,126 @@ func (s *ListTemplateVersionsInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListTemplateVersionsInput) SetAwsAccountId(v string) *ListTemplateVersionsInput { - s.AwsAccountId = &v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListTemplateVersionsInput) SetMaxResults(v int64) *ListTemplateVersionsInput { - s.MaxResults = &v +// SetDatabase sets the Database field's value. +func (s *MySqlParameters) SetDatabase(v string) *MySqlParameters { + s.Database = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListTemplateVersionsInput) SetNextToken(v string) *ListTemplateVersionsInput { - s.NextToken = &v +// SetHost sets the Host field's value. +func (s *MySqlParameters) SetHost(v string) *MySqlParameters { + s.Host = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *ListTemplateVersionsInput) SetTemplateId(v string) *ListTemplateVersionsInput { - s.TemplateId = &v +// SetPort sets the Port field's value. +func (s *MySqlParameters) SetPort(v int64) *MySqlParameters { + s.Port = &v return s } -type ListTemplateVersionsOutput struct { +// Output column. +type OutputColumn struct { _ struct{} `type:"structure"` - // The token for the next set of results, or null if there are no more results. - NextToken *string `type:"string"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // A display name for the dataset. + Name *string `min:"1" type:"string"` - // A structure containing a list of all the versions of the specified template. - TemplateVersionSummaryList []*TemplateVersionSummary `type:"list"` + // Type. + Type *string `type:"string" enum:"ColumnDataType"` } // String returns the string representation -func (s ListTemplateVersionsOutput) String() string { +func (s OutputColumn) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTemplateVersionsOutput) GoString() string { +func (s OutputColumn) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListTemplateVersionsOutput) SetNextToken(v string) *ListTemplateVersionsOutput { - s.NextToken = &v - return s -} - -// SetRequestId sets the RequestId field's value. -func (s *ListTemplateVersionsOutput) SetRequestId(v string) *ListTemplateVersionsOutput { - s.RequestId = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *ListTemplateVersionsOutput) SetStatus(v int64) *ListTemplateVersionsOutput { - s.Status = &v +// SetName sets the Name field's value. +func (s *OutputColumn) SetName(v string) *OutputColumn { + s.Name = &v return s } -// SetTemplateVersionSummaryList sets the TemplateVersionSummaryList field's value. -func (s *ListTemplateVersionsOutput) SetTemplateVersionSummaryList(v []*TemplateVersionSummary) *ListTemplateVersionsOutput { - s.TemplateVersionSummaryList = v +// SetType sets the Type field's value. +func (s *OutputColumn) SetType(v string) *OutputColumn { + s.Type = &v return s } -type ListTemplatesInput struct { +// Parameters. +type Parameters struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the templates that you're listing. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // DateTime parameters. + DateTimeParameters []*DateTimeParameter `type:"list"` - // The maximum number of results to be returned per request. - MaxResults *int64 `location:"querystring" locationName:"max-result" min:"1" type:"integer"` + // Decimal parameters. + DecimalParameters []*DecimalParameter `type:"list"` - // The token for the next set of results, or null if there are no more results. - NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + // Integer parameters. + IntegerParameters []*IntegerParameter `type:"list"` + + // String parameters. + StringParameters []*StringParameter `type:"list"` } // String returns the string representation -func (s ListTemplatesInput) String() string { +func (s Parameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTemplatesInput) GoString() string { +func (s Parameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListTemplatesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListTemplatesInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) +func (s *Parameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Parameters"} + if s.DateTimeParameters != nil { + for i, v := range s.DateTimeParameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DateTimeParameters", i), err.(request.ErrInvalidParams)) + } + } } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + if s.DecimalParameters != nil { + for i, v := range s.DecimalParameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DecimalParameters", i), err.(request.ErrInvalidParams)) + } + } } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + if s.IntegerParameters != nil { + for i, v := range s.IntegerParameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "IntegerParameters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.StringParameters != nil { + for i, v := range s.StringParameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StringParameters", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -17089,133 +20770,149 @@ func (s *ListTemplatesInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListTemplatesInput) SetAwsAccountId(v string) *ListTemplatesInput { - s.AwsAccountId = &v +// SetDateTimeParameters sets the DateTimeParameters field's value. +func (s *Parameters) SetDateTimeParameters(v []*DateTimeParameter) *Parameters { + s.DateTimeParameters = v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListTemplatesInput) SetMaxResults(v int64) *ListTemplatesInput { - s.MaxResults = &v +// SetDecimalParameters sets the DecimalParameters field's value. +func (s *Parameters) SetDecimalParameters(v []*DecimalParameter) *Parameters { + s.DecimalParameters = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListTemplatesInput) SetNextToken(v string) *ListTemplatesInput { - s.NextToken = &v +// SetIntegerParameters sets the IntegerParameters field's value. +func (s *Parameters) SetIntegerParameters(v []*IntegerParameter) *Parameters { + s.IntegerParameters = v return s } -type ListTemplatesOutput struct { - _ struct{} `type:"structure"` +// SetStringParameters sets the StringParameters field's value. +func (s *Parameters) SetStringParameters(v []*StringParameter) *Parameters { + s.StringParameters = v + return s +} - // The token for the next set of results, or null if there are no more results. - NextToken *string `type:"string"` +// A view of a data source that contains information about the shape of the +// data in the underlying source. This is a variant type structure. For this +// structure to be valid, only one of the attributes can be non-null. +type PhysicalTable struct { + _ struct{} `type:"structure"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // A physical table type built from the results of the custom SQL query. + CustomSql *CustomSql `type:"structure"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // A physical table type for relational data sources. + RelationalTable *RelationalTable `type:"structure"` - // A structure containing information about the templates in the list. - TemplateSummaryList []*TemplateSummary `type:"list"` + // A physical table type for as S3 data source. + S3Source *S3Source `type:"structure"` } // String returns the string representation -func (s ListTemplatesOutput) String() string { +func (s PhysicalTable) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListTemplatesOutput) GoString() string { +func (s PhysicalTable) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListTemplatesOutput) SetNextToken(v string) *ListTemplatesOutput { - s.NextToken = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *PhysicalTable) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PhysicalTable"} + if s.CustomSql != nil { + if err := s.CustomSql.Validate(); err != nil { + invalidParams.AddNested("CustomSql", err.(request.ErrInvalidParams)) + } + } + if s.RelationalTable != nil { + if err := s.RelationalTable.Validate(); err != nil { + invalidParams.AddNested("RelationalTable", err.(request.ErrInvalidParams)) + } + } + if s.S3Source != nil { + if err := s.S3Source.Validate(); err != nil { + invalidParams.AddNested("S3Source", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetRequestId sets the RequestId field's value. -func (s *ListTemplatesOutput) SetRequestId(v string) *ListTemplatesOutput { - s.RequestId = &v +// SetCustomSql sets the CustomSql field's value. +func (s *PhysicalTable) SetCustomSql(v *CustomSql) *PhysicalTable { + s.CustomSql = v return s } -// SetStatus sets the Status field's value. -func (s *ListTemplatesOutput) SetStatus(v int64) *ListTemplatesOutput { - s.Status = &v +// SetRelationalTable sets the RelationalTable field's value. +func (s *PhysicalTable) SetRelationalTable(v *RelationalTable) *PhysicalTable { + s.RelationalTable = v return s } -// SetTemplateSummaryList sets the TemplateSummaryList field's value. -func (s *ListTemplatesOutput) SetTemplateSummaryList(v []*TemplateSummary) *ListTemplatesOutput { - s.TemplateSummaryList = v +// SetS3Source sets the S3Source field's value. +func (s *PhysicalTable) SetS3Source(v *S3Source) *PhysicalTable { + s.S3Source = v return s } -type ListUserGroupsInput struct { +// PostgreSQL parameters. +type PostgreSqlParameters struct { _ struct{} `type:"structure"` - // The AWS account ID that the user is in. Currently, you use the ID for the - // AWS 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 maximum number of results to return from this request. - MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - - // The namespace. Currently, you should set this to default. + // Database. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // A pagination token that can be used in a subsequent request. - NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` - // The Amazon QuickSight user name that you want to list group memberships for. + // Port. // - // UserName is a required field - UserName *string `location:"uri" locationName:"UserName" min:"1" type:"string" required:"true"` + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation -func (s ListUserGroupsInput) String() string { +func (s PostgreSqlParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListUserGroupsInput) GoString() string { +func (s PostgreSqlParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListUserGroupsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListUserGroupsInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) +func (s *PostgreSqlParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PostgreSqlParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) } - if s.UserName == nil { - invalidParams.Add(request.NewErrParamRequired("UserName")) + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) } - if s.UserName != nil && len(*s.UserName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if invalidParams.Len() > 0 { @@ -17224,276 +20921,341 @@ func (s *ListUserGroupsInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListUserGroupsInput) SetAwsAccountId(v string) *ListUserGroupsInput { - s.AwsAccountId = &v +// SetDatabase sets the Database field's value. +func (s *PostgreSqlParameters) SetDatabase(v string) *PostgreSqlParameters { + s.Database = &v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListUserGroupsInput) SetMaxResults(v int64) *ListUserGroupsInput { - s.MaxResults = &v +// SetHost sets the Host field's value. +func (s *PostgreSqlParameters) SetHost(v string) *PostgreSqlParameters { + s.Host = &v return s } -// SetNamespace sets the Namespace field's value. -func (s *ListUserGroupsInput) SetNamespace(v string) *ListUserGroupsInput { - s.Namespace = &v +// SetPort sets the Port field's value. +func (s *PostgreSqlParameters) SetPort(v int64) *PostgreSqlParameters { + s.Port = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListUserGroupsInput) SetNextToken(v string) *ListUserGroupsInput { - s.NextToken = &v - return s +// One or more preconditions aren't met. +type PreconditionNotMetException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The AWS request ID for this request. + RequestId *string `type:"string"` } -// SetUserName sets the UserName field's value. -func (s *ListUserGroupsInput) SetUserName(v string) *ListUserGroupsInput { - s.UserName = &v - return s +// String returns the string representation +func (s PreconditionNotMetException) String() string { + return awsutil.Prettify(s) } -type ListUserGroupsOutput struct { - _ struct{} `type:"structure"` +// GoString returns the string representation +func (s PreconditionNotMetException) GoString() string { + return s.String() +} - // The list of groups the user is a member of. - GroupList []*Group `type:"list"` +func newErrorPreconditionNotMetException(v protocol.ResponseMetadata) error { + return &PreconditionNotMetException{ + RespMetadata: v, + } +} - // A pagination token that can be used in a subsequent request. - NextToken *string `type:"string"` +// Code returns the exception type name. +func (s *PreconditionNotMetException) Code() string { + return "PreconditionNotMetException" +} - // The AWS request ID for this operation. - RequestId *string `type:"string"` +// Message returns the exception's message. +func (s *PreconditionNotMetException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *PreconditionNotMetException) OrigErr() error { + return nil +} + +func (s *PreconditionNotMetException) 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 *PreconditionNotMetException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *PreconditionNotMetException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Presto parameters. +type PrestoParameters struct { + _ struct{} `type:"structure"` + + // Catalog. + // + // Catalog is a required field + Catalog *string `type:"string" required:"true"` + + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` + + // Port. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation -func (s ListUserGroupsOutput) String() string { +func (s PrestoParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListUserGroupsOutput) GoString() string { +func (s PrestoParameters) GoString() string { return s.String() } -// SetGroupList sets the GroupList field's value. -func (s *ListUserGroupsOutput) SetGroupList(v []*Group) *ListUserGroupsOutput { - s.GroupList = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *PrestoParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PrestoParameters"} + if s.Catalog == nil { + invalidParams.Add(request.NewErrParamRequired("Catalog")) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetNextToken sets the NextToken field's value. -func (s *ListUserGroupsOutput) SetNextToken(v string) *ListUserGroupsOutput { - s.NextToken = &v +// SetCatalog sets the Catalog field's value. +func (s *PrestoParameters) SetCatalog(v string) *PrestoParameters { + s.Catalog = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *ListUserGroupsOutput) SetRequestId(v string) *ListUserGroupsOutput { - s.RequestId = &v +// SetHost sets the Host field's value. +func (s *PrestoParameters) SetHost(v string) *PrestoParameters { + s.Host = &v return s } -// SetStatus sets the Status field's value. -func (s *ListUserGroupsOutput) SetStatus(v int64) *ListUserGroupsOutput { - s.Status = &v +// SetPort sets the Port field's value. +func (s *PrestoParameters) SetPort(v int64) *PrestoParameters { + s.Port = &v return s } -type ListUsersInput struct { +// A transform operation that projects columns. Operations that come after a +// projection can only refer to projected columns. +type ProjectOperation struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the user is in. Currently, you use the ID - // for the AWS 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 maximum number of results to return from this request. - MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - - // The namespace. Currently, you should set this to default. + // Projected columns. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - - // A pagination token that can be used in a subsequent request. - NextToken *string `location:"querystring" locationName:"next-token" type:"string"` + // ProjectedColumns is a required field + ProjectedColumns []*string `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s ListUsersInput) String() string { +func (s ProjectOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListUsersInput) GoString() string { +func (s ProjectOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListUsersInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *ProjectOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProjectOperation"} + if s.ProjectedColumns == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectedColumns")) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.ProjectedColumns != nil && len(s.ProjectedColumns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProjectedColumns", 1)) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + + if invalidParams.Len() > 0 { + return invalidParams } + return nil +} + +// SetProjectedColumns sets the ProjectedColumns field's value. +func (s *ProjectOperation) SetProjectedColumns(v []*string) *ProjectOperation { + s.ProjectedColumns = v + return s +} + +// Information about a queued dataset SPICE ingestion. +type QueueInfo struct { + _ struct{} `type:"structure"` - if invalidParams.Len() > 0 { - return invalidParams - } - return nil + // The ID of the ongoing ingestion. The queued ingestion is waiting for the + // ongoing ingestion to complete. + // + // QueuedIngestion is a required field + QueuedIngestion *string `type:"string" required:"true"` + + // The ID of the queued ingestion. + // + // WaitingOnIngestion is a required field + WaitingOnIngestion *string `type:"string" required:"true"` } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *ListUsersInput) SetAwsAccountId(v string) *ListUsersInput { - s.AwsAccountId = &v - return s +// String returns the string representation +func (s QueueInfo) String() string { + return awsutil.Prettify(s) } -// SetMaxResults sets the MaxResults field's value. -func (s *ListUsersInput) SetMaxResults(v int64) *ListUsersInput { - s.MaxResults = &v - return s +// GoString returns the string representation +func (s QueueInfo) GoString() string { + return s.String() } -// SetNamespace sets the Namespace field's value. -func (s *ListUsersInput) SetNamespace(v string) *ListUsersInput { - s.Namespace = &v +// SetQueuedIngestion sets the QueuedIngestion field's value. +func (s *QueueInfo) SetQueuedIngestion(v string) *QueueInfo { + s.QueuedIngestion = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListUsersInput) SetNextToken(v string) *ListUsersInput { - s.NextToken = &v +// SetWaitingOnIngestion sets the WaitingOnIngestion field's value. +func (s *QueueInfo) SetWaitingOnIngestion(v string) *QueueInfo { + s.WaitingOnIngestion = &v return s } -type ListUsersOutput struct { +// Amazon RDS parameters. +type RdsParameters struct { _ struct{} `type:"structure"` - // A pagination token that can be used in a subsequent request. - NextToken *string `type:"string"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Database. + // + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // The list of users. - UserList []*User `type:"list"` + // Instance ID. + // + // InstanceId is a required field + InstanceId *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListUsersOutput) String() string { +func (s RdsParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListUsersOutput) GoString() string { +func (s RdsParameters) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListUsersOutput) SetNextToken(v string) *ListUsersOutput { - s.NextToken = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *RdsParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RdsParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) + } + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + } + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } -// SetRequestId sets the RequestId field's value. -func (s *ListUsersOutput) SetRequestId(v string) *ListUsersOutput { - s.RequestId = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStatus sets the Status field's value. -func (s *ListUsersOutput) SetStatus(v int64) *ListUsersOutput { - s.Status = &v +// SetDatabase sets the Database field's value. +func (s *RdsParameters) SetDatabase(v string) *RdsParameters { + s.Database = &v return s } -// SetUserList sets the UserList field's value. -func (s *ListUsersOutput) SetUserList(v []*User) *ListUsersOutput { - s.UserList = v +// SetInstanceId sets the InstanceId field's value. +func (s *RdsParameters) SetInstanceId(v string) *RdsParameters { + s.InstanceId = &v return s } -// A logical table is a unit that joins and that data transformations operate -// on. A logical table has a source, which can be either a physical table or -// result of a join. When a logical table points to a physical table, the logical -// table acts as a mutable copy of that physical table through transform operations. -type LogicalTable struct { +// 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. +type RedshiftParameters struct { _ struct{} `type:"structure"` - // A display name for the logical table. + // Cluster ID. This field can be blank if the Host and Port are provided. + ClusterId *string `min:"1" type:"string"` + + // Database. // - // Alias is a required field - Alias *string `min:"1" type:"string" required:"true"` + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // Transform operations that act on this logical table. - DataTransforms []*TransformOperation `min:"1" type:"list"` + // Host. This field can be blank if ClusterId is provided. + Host *string `min:"1" type:"string"` - // Source of this logical table. - // - // Source is a required field - Source *LogicalTableSource `type:"structure" required:"true"` + // Port. This field can be blank if the ClusterId is provided. + Port *int64 `type:"integer"` } // String returns the string representation -func (s LogicalTable) String() string { +func (s RedshiftParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LogicalTable) GoString() string { +func (s RedshiftParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *LogicalTable) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "LogicalTable"} - if s.Alias == nil { - invalidParams.Add(request.NewErrParamRequired("Alias")) - } - if s.Alias != nil && len(*s.Alias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Alias", 1)) - } - if s.DataTransforms != nil && len(s.DataTransforms) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataTransforms", 1)) +func (s *RedshiftParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftParameters"} + if s.ClusterId != nil && len(*s.ClusterId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterId", 1)) } - if s.Source == nil { - invalidParams.Add(request.NewErrParamRequired("Source")) + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) } - if s.DataTransforms != nil { - for i, v := range s.DataTransforms { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataTransforms", i), err.(request.ErrInvalidParams)) - } - } + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) } - if s.Source != nil { - if err := s.Source.Validate(); err != nil { - invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) - } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) } if invalidParams.Len() > 0 { @@ -17502,56 +21264,134 @@ func (s *LogicalTable) Validate() error { return nil } -// SetAlias sets the Alias field's value. -func (s *LogicalTable) SetAlias(v string) *LogicalTable { - s.Alias = &v +// SetClusterId sets the ClusterId field's value. +func (s *RedshiftParameters) SetClusterId(v string) *RedshiftParameters { + s.ClusterId = &v return s } -// SetDataTransforms sets the DataTransforms field's value. -func (s *LogicalTable) SetDataTransforms(v []*TransformOperation) *LogicalTable { - s.DataTransforms = v +// SetDatabase sets the Database field's value. +func (s *RedshiftParameters) SetDatabase(v string) *RedshiftParameters { + s.Database = &v return s } -// SetSource sets the Source field's value. -func (s *LogicalTable) SetSource(v *LogicalTableSource) *LogicalTable { - s.Source = v +// SetHost sets the Host field's value. +func (s *RedshiftParameters) SetHost(v string) *RedshiftParameters { + s.Host = &v return s } -// Information about the source of a logical table. This is a variant type structure. -// For this structure to be valid, only one of the attributes can be non-null. -type LogicalTableSource struct { +// SetPort sets the Port field's value. +func (s *RedshiftParameters) SetPort(v int64) *RedshiftParameters { + s.Port = &v + return s +} + +type RegisterUserInput struct { _ struct{} `type:"structure"` - // Specifies the result of a join of two logical tables. - JoinInstruction *JoinInstruction `type:"structure"` + // The ID for the AWS account that the user is in. Currently, you use the ID + // for the AWS account that contains your Amazon QuickSight account. + // + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Physical table ID. - PhysicalTableId *string `min:"1" type:"string"` + // The email address of the user that you want to register. + // + // Email is a required field + Email *string `type:"string" required:"true"` + + // The ARN of the IAM user 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. + // + // * QUICKSIGHT: A user whose identity is owned and managed internally by + // Amazon QuickSight. + // + // IdentityType is a required field + IdentityType *string `type:"string" required:"true" enum:"IdentityType"` + + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + 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://awscli.amazonaws.com/v2/documentation/api/latest/reference/sts/assume-role.html) + // in the AWS CLI Reference. + SessionName *string `min:"2" type:"string"` + + // The Amazon QuickSight user name that you want to create for the user you + // are registering. + UserName *string `min:"1" type:"string"` + + // 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. + // + // UserRole is a required field + UserRole *string `type:"string" required:"true" enum:"UserRole"` } // String returns the string representation -func (s LogicalTableSource) String() string { +func (s RegisterUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LogicalTableSource) GoString() string { +func (s RegisterUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *LogicalTableSource) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "LogicalTableSource"} - if s.PhysicalTableId != nil && len(*s.PhysicalTableId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PhysicalTableId", 1)) +func (s *RegisterUserInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegisterUserInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.JoinInstruction != nil { - if err := s.JoinInstruction.Validate(); err != nil { - invalidParams.AddNested("JoinInstruction", err.(request.ErrInvalidParams)) - } + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Email == nil { + invalidParams.Add(request.NewErrParamRequired("Email")) + } + if s.IdentityType == nil { + invalidParams.Add(request.NewErrParamRequired("IdentityType")) + } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.SessionName != nil && len(*s.SessionName) < 2 { + invalidParams.Add(request.NewErrParamMinLen("SessionName", 2)) + } + if s.UserName != nil && len(*s.UserName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) + } + if s.UserRole == nil { + invalidParams.Add(request.NewErrParamRequired("UserRole")) } if invalidParams.Len() > 0 { @@ -17560,203 +21400,165 @@ func (s *LogicalTableSource) Validate() error { return nil } -// SetJoinInstruction sets the JoinInstruction field's value. -func (s *LogicalTableSource) SetJoinInstruction(v *JoinInstruction) *LogicalTableSource { - s.JoinInstruction = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *RegisterUserInput) SetAwsAccountId(v string) *RegisterUserInput { + s.AwsAccountId = &v return s } -// SetPhysicalTableId sets the PhysicalTableId field's value. -func (s *LogicalTableSource) SetPhysicalTableId(v string) *LogicalTableSource { - s.PhysicalTableId = &v +// SetEmail sets the Email field's value. +func (s *RegisterUserInput) SetEmail(v string) *RegisterUserInput { + s.Email = &v return s } -// Amazon S3 manifest file location. -type ManifestFileLocation struct { - _ struct{} `type:"structure"` - - // Amazon S3 bucket. - // - // Bucket is a required field - Bucket *string `min:"1" type:"string" required:"true"` - - // Amazon S3 key that identifies an object. - // - // Key is a required field - Key *string `min:"1" type:"string" required:"true"` +// SetIamArn sets the IamArn field's value. +func (s *RegisterUserInput) SetIamArn(v string) *RegisterUserInput { + s.IamArn = &v + return s } -// String returns the string representation -func (s ManifestFileLocation) String() string { - return awsutil.Prettify(s) +// SetIdentityType sets the IdentityType field's value. +func (s *RegisterUserInput) SetIdentityType(v string) *RegisterUserInput { + s.IdentityType = &v + return s } -// GoString returns the string representation -func (s ManifestFileLocation) GoString() string { - return s.String() +// SetNamespace sets the Namespace field's value. +func (s *RegisterUserInput) SetNamespace(v string) *RegisterUserInput { + s.Namespace = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ManifestFileLocation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ManifestFileLocation"} - if s.Bucket == nil { - invalidParams.Add(request.NewErrParamRequired("Bucket")) - } - if s.Bucket != nil && len(*s.Bucket) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) - } - if s.Key == nil { - invalidParams.Add(request.NewErrParamRequired("Key")) - } - if s.Key != nil && len(*s.Key) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Key", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetSessionName sets the SessionName field's value. +func (s *RegisterUserInput) SetSessionName(v string) *RegisterUserInput { + s.SessionName = &v + return s } -// SetBucket sets the Bucket field's value. -func (s *ManifestFileLocation) SetBucket(v string) *ManifestFileLocation { - s.Bucket = &v +// SetUserName sets the UserName field's value. +func (s *RegisterUserInput) SetUserName(v string) *RegisterUserInput { + s.UserName = &v return s } -// SetKey sets the Key field's value. -func (s *ManifestFileLocation) SetKey(v string) *ManifestFileLocation { - s.Key = &v +// SetUserRole sets the UserRole field's value. +func (s *RegisterUserInput) SetUserRole(v string) *RegisterUserInput { + s.UserRole = &v return s } -// MariaDB parameters. -type MariaDbParameters struct { +type RegisterUserOutput struct { _ struct{} `type:"structure"` - // Database. - // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // Host. - // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` - // Port. - // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // The user name. + User *User `type:"structure"` + + // The URL the user visits to complete registration and provide a password. + // This is returned only for users with an identity type of QUICKSIGHT. + UserInvitationUrl *string `type:"string"` } // String returns the string representation -func (s MariaDbParameters) String() string { +func (s RegisterUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MariaDbParameters) GoString() string { +func (s RegisterUserOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *MariaDbParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "MariaDbParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) - } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) - } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) - } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) - } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) - } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetRequestId sets the RequestId field's value. +func (s *RegisterUserOutput) SetRequestId(v string) *RegisterUserOutput { + s.RequestId = &v + return s } -// SetDatabase sets the Database field's value. -func (s *MariaDbParameters) SetDatabase(v string) *MariaDbParameters { - s.Database = &v +// SetStatus sets the Status field's value. +func (s *RegisterUserOutput) SetStatus(v int64) *RegisterUserOutput { + s.Status = &v return s } -// SetHost sets the Host field's value. -func (s *MariaDbParameters) SetHost(v string) *MariaDbParameters { - s.Host = &v +// SetUser sets the User field's value. +func (s *RegisterUserOutput) SetUser(v *User) *RegisterUserOutput { + s.User = v return s } -// SetPort sets the Port field's value. -func (s *MariaDbParameters) SetPort(v int64) *MariaDbParameters { - s.Port = &v +// SetUserInvitationUrl sets the UserInvitationUrl field's value. +func (s *RegisterUserOutput) SetUserInvitationUrl(v string) *RegisterUserOutput { + s.UserInvitationUrl = &v return s } -// MySQL parameters. -type MySqlParameters struct { +// A physical table type for relational data sources. +type RelationalTable struct { _ struct{} `type:"structure"` - // Database. + // The Amazon Resource Name (ARN) for the data source. // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // DataSourceArn is a required field + DataSourceArn *string `type:"string" required:"true"` - // Host. + // The column schema of the table. // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // InputColumns is a required field + InputColumns []*InputColumn `min:"1" type:"list" required:"true"` - // Port. + // The name of the relational table. // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The schema name. This name applies to certain relational database engines. + Schema *string `type:"string"` } // String returns the string representation -func (s MySqlParameters) String() string { +func (s RelationalTable) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s MySqlParameters) GoString() string { +func (s RelationalTable) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *MySqlParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "MySqlParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) +func (s *RelationalTable) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RelationalTable"} + if s.DataSourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceArn")) } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + if s.InputColumns == nil { + invalidParams.Add(request.NewErrParamRequired("InputColumns")) } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) + if s.InputColumns != nil && len(s.InputColumns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InputColumns", 1)) } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + if s.InputColumns != nil { + for i, v := range s.InputColumns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputColumns", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -17765,277 +21567,259 @@ func (s *MySqlParameters) Validate() error { return nil } -// SetDatabase sets the Database field's value. -func (s *MySqlParameters) SetDatabase(v string) *MySqlParameters { - s.Database = &v +// SetDataSourceArn sets the DataSourceArn field's value. +func (s *RelationalTable) SetDataSourceArn(v string) *RelationalTable { + s.DataSourceArn = &v return s } -// SetHost sets the Host field's value. -func (s *MySqlParameters) SetHost(v string) *MySqlParameters { - s.Host = &v +// SetInputColumns sets the InputColumns field's value. +func (s *RelationalTable) SetInputColumns(v []*InputColumn) *RelationalTable { + s.InputColumns = v return s } -// SetPort sets the Port field's value. -func (s *MySqlParameters) SetPort(v int64) *MySqlParameters { - s.Port = &v +// SetName sets the Name field's value. +func (s *RelationalTable) SetName(v string) *RelationalTable { + s.Name = &v return s } -// Output column. -type OutputColumn struct { +// SetSchema sets the Schema field's value. +func (s *RelationalTable) SetSchema(v string) *RelationalTable { + s.Schema = &v + return s +} + +// A transform operation that renames a column. +type RenameColumnOperation struct { _ struct{} `type:"structure"` - // A display name for the dataset. - Name *string `min:"1" type:"string"` + // The name of the column to be renamed. + // + // ColumnName is a required field + ColumnName *string `min:"1" type:"string" required:"true"` - // Type. - Type *string `type:"string" enum:"ColumnDataType"` + // The new name for the column. + // + // NewColumnName is a required field + NewColumnName *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s OutputColumn) String() string { +func (s RenameColumnOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s OutputColumn) GoString() string { +func (s RenameColumnOperation) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *OutputColumn) SetName(v string) *OutputColumn { - s.Name = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *RenameColumnOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RenameColumnOperation"} + 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.NewColumnName == nil { + invalidParams.Add(request.NewErrParamRequired("NewColumnName")) + } + if s.NewColumnName != nil && len(*s.NewColumnName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NewColumnName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetType sets the Type field's value. -func (s *OutputColumn) SetType(v string) *OutputColumn { - s.Type = &v +// SetColumnName sets the ColumnName field's value. +func (s *RenameColumnOperation) SetColumnName(v string) *RenameColumnOperation { + s.ColumnName = &v return s } -// Parameters. -type Parameters struct { - _ struct{} `type:"structure"` +// SetNewColumnName sets the NewColumnName field's value. +func (s *RenameColumnOperation) SetNewColumnName(v string) *RenameColumnOperation { + s.NewColumnName = &v + return s +} - // DateTime parameters. - DateTimeParameters []*DateTimeParameter `type:"list"` +// The resource specified already exists. +type ResourceExistsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Decimal parameters. - DecimalParameters []*DecimalParameter `type:"list"` + Message_ *string `locationName:"Message" type:"string"` - // Integer parameters. - IntegerParameters []*IntegerParameter `type:"list"` + // The AWS request ID for this request. + RequestId *string `type:"string"` - // String parameters. - StringParameters []*StringParameter `type:"list"` + // The resource type for this request. + ResourceType *string `type:"string" enum:"ExceptionResourceType"` } // String returns the string representation -func (s Parameters) String() string { +func (s ResourceExistsException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Parameters) GoString() string { +func (s ResourceExistsException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *Parameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Parameters"} - if s.DateTimeParameters != nil { - for i, v := range s.DateTimeParameters { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DateTimeParameters", i), err.(request.ErrInvalidParams)) - } - } - } - if s.DecimalParameters != nil { - for i, v := range s.DecimalParameters { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DecimalParameters", i), err.(request.ErrInvalidParams)) - } - } - } - if s.IntegerParameters != nil { - for i, v := range s.IntegerParameters { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "IntegerParameters", i), err.(request.ErrInvalidParams)) - } - } - } - if s.StringParameters != nil { - for i, v := range s.StringParameters { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StringParameters", i), err.(request.ErrInvalidParams)) - } - } +func newErrorResourceExistsException(v protocol.ResponseMetadata) error { + return &ResourceExistsException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *ResourceExistsException) Code() string { + return "ResourceExistsException" +} + +// Message returns the exception's message. +func (s *ResourceExistsException) Message() string { + if s.Message_ != nil { + return *s.Message_ } - return nil + return "" } -// SetDateTimeParameters sets the DateTimeParameters field's value. -func (s *Parameters) SetDateTimeParameters(v []*DateTimeParameter) *Parameters { - s.DateTimeParameters = v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceExistsException) OrigErr() error { + return nil } -// SetDecimalParameters sets the DecimalParameters field's value. -func (s *Parameters) SetDecimalParameters(v []*DecimalParameter) *Parameters { - s.DecimalParameters = v - return s +func (s *ResourceExistsException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetIntegerParameters sets the IntegerParameters field's value. -func (s *Parameters) SetIntegerParameters(v []*IntegerParameter) *Parameters { - s.IntegerParameters = v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceExistsException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetStringParameters sets the StringParameters field's value. -func (s *Parameters) SetStringParameters(v []*StringParameter) *Parameters { - s.StringParameters = v - return s +// RequestID returns the service's response RequestID for request. +func (s *ResourceExistsException) RequestID() string { + return s.RespMetadata.RequestID } -// A view of a data source that contains information about the shape of the -// data in the underlying source. This is a variant type structure. For this -// structure to be valid, only one of the attributes can be non-null. -type PhysicalTable struct { - _ struct{} `type:"structure"` +// One or more resources can't be found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // A physical table type built from the results of the custom SQL query. - CustomSql *CustomSql `type:"structure"` + Message_ *string `locationName:"Message" type:"string"` - // A physical table type for relational data sources. - RelationalTable *RelationalTable `type:"structure"` + // The AWS request ID for this request. + RequestId *string `type:"string"` - // A physical table type for as S3 data source. - S3Source *S3Source `type:"structure"` + // The resource type for this request. + ResourceType *string `type:"string" enum:"ExceptionResourceType"` } // String returns the string representation -func (s PhysicalTable) String() string { +func (s ResourceNotFoundException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s PhysicalTable) GoString() string { +func (s ResourceNotFoundException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *PhysicalTable) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PhysicalTable"} - if s.CustomSql != nil { - if err := s.CustomSql.Validate(); err != nil { - invalidParams.AddNested("CustomSql", err.(request.ErrInvalidParams)) - } - } - if s.RelationalTable != nil { - if err := s.RelationalTable.Validate(); err != nil { - invalidParams.AddNested("RelationalTable", err.(request.ErrInvalidParams)) - } +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, } - if s.S3Source != nil { - if err := s.S3Source.Validate(); err != nil { - invalidParams.AddNested("S3Source", err.(request.ErrInvalidParams)) - } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} - if invalidParams.Len() > 0 { - return invalidParams - } +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { return nil } -// SetCustomSql sets the CustomSql field's value. -func (s *PhysicalTable) SetCustomSql(v *CustomSql) *PhysicalTable { - s.CustomSql = v - return s +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetRelationalTable sets the RelationalTable field's value. -func (s *PhysicalTable) SetRelationalTable(v *RelationalTable) *PhysicalTable { - s.RelationalTable = v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetS3Source sets the S3Source field's value. -func (s *PhysicalTable) SetS3Source(v *S3Source) *PhysicalTable { - s.S3Source = v - return s +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID } -// PostgreSQL parameters. -type PostgreSqlParameters struct { +// Permission for the resource. +type ResourcePermission struct { _ struct{} `type:"structure"` - // Database. + // The action to grant or revoke permissions on, for example "quicksight:DescribeDashboard". // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // Actions is a required field + Actions []*string `min:"1" type:"list" required:"true"` - // Host. + // The Amazon Resource Name (ARN) of the principal. This can be one of the following: // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` - - // Port. + // * The ARN of an Amazon QuickSight user, group, or namespace. (This is + // most common.) // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // * The ARN of an AWS account root: This is an IAM ARN rather than a QuickSight + // ARN. Use this option only to share resources (templates) across AWS accounts. + // (This is less common.) + // + // Principal is a required field + Principal *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s PostgreSqlParameters) String() string { +func (s ResourcePermission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s PostgreSqlParameters) GoString() string { +func (s ResourcePermission) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *PostgreSqlParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PostgreSqlParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) - } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) - } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) +func (s *ResourcePermission) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResourcePermission"} + if s.Actions == nil { + invalidParams.Add(request.NewErrParamRequired("Actions")) } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + if s.Actions != nil && len(s.Actions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) + if s.Principal == nil { + invalidParams.Add(request.NewErrParamRequired("Principal")) } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + if s.Principal != nil && len(*s.Principal) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Principal", 1)) } if invalidParams.Len() > 0 { @@ -18044,26 +21828,20 @@ func (s *PostgreSqlParameters) Validate() error { return nil } -// SetDatabase sets the Database field's value. -func (s *PostgreSqlParameters) SetDatabase(v string) *PostgreSqlParameters { - s.Database = &v - return s -} - -// SetHost sets the Host field's value. -func (s *PostgreSqlParameters) SetHost(v string) *PostgreSqlParameters { - s.Host = &v +// SetActions sets the Actions field's value. +func (s *ResourcePermission) SetActions(v []*string) *ResourcePermission { + s.Actions = v return s } -// SetPort sets the Port field's value. -func (s *PostgreSqlParameters) SetPort(v int64) *PostgreSqlParameters { - s.Port = &v +// SetPrincipal sets the Principal field's value. +func (s *ResourcePermission) SetPrincipal(v string) *ResourcePermission { + s.Principal = &v return s } -// One or more preconditions aren't met. -type PreconditionNotMetException struct { +// This resource is currently unavailable. +type ResourceUnavailableException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -18071,31 +21849,34 @@ type PreconditionNotMetException struct { // The AWS request ID for this request. RequestId *string `type:"string"` + + // The resource type for this request. + ResourceType *string `type:"string" enum:"ExceptionResourceType"` } // String returns the string representation -func (s PreconditionNotMetException) String() string { +func (s ResourceUnavailableException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s PreconditionNotMetException) GoString() string { +func (s ResourceUnavailableException) GoString() string { return s.String() } -func newErrorPreconditionNotMetException(v protocol.ResponseMetadata) error { - return &PreconditionNotMetException{ +func newErrorResourceUnavailableException(v protocol.ResponseMetadata) error { + return &ResourceUnavailableException{ RespMetadata: v, } } // Code returns the exception type name. -func (s *PreconditionNotMetException) Code() string { - return "PreconditionNotMetException" +func (s *ResourceUnavailableException) Code() string { + return "ResourceUnavailableException" } // Message returns the exception's message. -func (s *PreconditionNotMetException) Message() string { +func (s *ResourceUnavailableException) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -18103,71 +21884,209 @@ func (s *PreconditionNotMetException) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *PreconditionNotMetException) OrigErr() error { +func (s *ResourceUnavailableException) OrigErr() error { return nil } -func (s *PreconditionNotMetException) Error() string { +func (s *ResourceUnavailableException) 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 *PreconditionNotMetException) StatusCode() int { +func (s *ResourceUnavailableException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *PreconditionNotMetException) RequestID() string { +func (s *ResourceUnavailableException) RequestID() string { return s.RespMetadata.RequestID } -// Presto parameters. -type PrestoParameters struct { +// Information about rows for a data set SPICE ingestion. +type RowInfo struct { + _ struct{} `type:"structure"` + + // The number of rows that were not ingested. + RowsDropped *int64 `type:"long"` + + // The number of rows that were ingested. + RowsIngested *int64 `type:"long"` +} + +// String returns the string representation +func (s RowInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RowInfo) GoString() string { + return s.String() +} + +// SetRowsDropped sets the RowsDropped field's value. +func (s *RowInfo) SetRowsDropped(v int64) *RowInfo { + s.RowsDropped = &v + return s +} + +// SetRowsIngested sets the RowsIngested field's value. +func (s *RowInfo) SetRowsIngested(v int64) *RowInfo { + s.RowsIngested = &v + return s +} + +// The row-level security configuration for the dataset. +type RowLevelPermissionDataSet struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the permission dataset. + // + // Arn is a required field + Arn *string `type:"string" required:"true"` + + // Permission policy. + // + // PermissionPolicy is a required field + PermissionPolicy *string `type:"string" required:"true" enum:"RowLevelPermissionPolicy"` +} + +// String returns the string representation +func (s RowLevelPermissionDataSet) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RowLevelPermissionDataSet) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RowLevelPermissionDataSet) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RowLevelPermissionDataSet"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.PermissionPolicy == nil { + invalidParams.Add(request.NewErrParamRequired("PermissionPolicy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *RowLevelPermissionDataSet) SetArn(v string) *RowLevelPermissionDataSet { + s.Arn = &v + return s +} + +// SetPermissionPolicy sets the PermissionPolicy field's value. +func (s *RowLevelPermissionDataSet) SetPermissionPolicy(v string) *RowLevelPermissionDataSet { + s.PermissionPolicy = &v + return s +} + +// S3 parameters. +type S3Parameters struct { + _ struct{} `type:"structure"` + + // Location of the Amazon S3 manifest file. This is NULL if the manifest file + // was uploaded in the console. + // + // ManifestFileLocation is a required field + ManifestFileLocation *ManifestFileLocation `type:"structure" required:"true"` +} + +// String returns the string representation +func (s S3Parameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s S3Parameters) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Parameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Parameters"} + if s.ManifestFileLocation == nil { + invalidParams.Add(request.NewErrParamRequired("ManifestFileLocation")) + } + if s.ManifestFileLocation != nil { + if err := s.ManifestFileLocation.Validate(); err != nil { + invalidParams.AddNested("ManifestFileLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetManifestFileLocation sets the ManifestFileLocation field's value. +func (s *S3Parameters) SetManifestFileLocation(v *ManifestFileLocation) *S3Parameters { + s.ManifestFileLocation = v + return s +} + +// A physical table type for as S3 data source. +type S3Source struct { _ struct{} `type:"structure"` - // Catalog. + // The amazon Resource Name (ARN) for the data source. // - // Catalog is a required field - Catalog *string `type:"string" required:"true"` + // DataSourceArn is a required field + DataSourceArn *string `type:"string" required:"true"` - // Host. + // A physical table type for as S3 data source. // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // InputColumns is a required field + InputColumns []*InputColumn `min:"1" type:"list" required:"true"` - // Port. - // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // Information about the format for the S3 source file or files. + UploadSettings *UploadSettings `type:"structure"` } // String returns the string representation -func (s PrestoParameters) String() string { +func (s S3Source) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s PrestoParameters) GoString() string { +func (s S3Source) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *PrestoParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PrestoParameters"} - if s.Catalog == nil { - invalidParams.Add(request.NewErrParamRequired("Catalog")) +func (s *S3Source) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Source"} + if s.DataSourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceArn")) } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) + if s.InputColumns == nil { + invalidParams.Add(request.NewErrParamRequired("InputColumns")) } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + if s.InputColumns != nil && len(s.InputColumns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InputColumns", 1)) } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) + if s.InputColumns != nil { + for i, v := range s.InputColumns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputColumns", i), err.(request.ErrInvalidParams)) + } + } } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + if s.UploadSettings != nil { + if err := s.UploadSettings.Validate(); err != nil { + invalidParams.AddNested("UploadSettings", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -18176,53 +22095,82 @@ func (s *PrestoParameters) Validate() error { return nil } -// SetCatalog sets the Catalog field's value. -func (s *PrestoParameters) SetCatalog(v string) *PrestoParameters { - s.Catalog = &v +// SetDataSourceArn sets the DataSourceArn field's value. +func (s *S3Source) SetDataSourceArn(v string) *S3Source { + s.DataSourceArn = &v return s } -// SetHost sets the Host field's value. -func (s *PrestoParameters) SetHost(v string) *PrestoParameters { - s.Host = &v +// SetInputColumns sets the InputColumns field's value. +func (s *S3Source) SetInputColumns(v []*InputColumn) *S3Source { + s.InputColumns = v return s } -// SetPort sets the Port field's value. -func (s *PrestoParameters) SetPort(v int64) *PrestoParameters { - s.Port = &v +// SetUploadSettings sets the UploadSettings field's value. +func (s *S3Source) SetUploadSettings(v *UploadSettings) *S3Source { + s.UploadSettings = v return s } -// A transform operation that projects columns. Operations that come after a -// projection can only refer to projected columns. -type ProjectOperation struct { +type SearchDashboardsInput struct { _ struct{} `type:"structure"` - // Projected columns. + // The ID of the AWS account that contains the user whose dashboards you're + // searching for. // - // ProjectedColumns is a required field - ProjectedColumns []*string `min:"1" type:"list" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + + // The filters to apply to the search. Currently, you can search only by user + // name, for example, "Filters": [ { "Name": "QUICKSIGHT_USER", "Operator": + // "StringEquals", "Value": "arn:aws:quicksight:us-east-1:1:user/default/UserName1" + // } ] + // + // Filters is a required field + Filters []*DashboardSearchFilter `type:"list" required:"true"` + + // The maximum number of results to be returned per request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` } // String returns the string representation -func (s ProjectOperation) String() string { +func (s SearchDashboardsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ProjectOperation) GoString() string { +func (s SearchDashboardsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ProjectOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ProjectOperation"} - if s.ProjectedColumns == nil { - invalidParams.Add(request.NewErrParamRequired("ProjectedColumns")) +func (s *SearchDashboardsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchDashboardsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.ProjectedColumns != nil && len(s.ProjectedColumns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProjectedColumns", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) + } + if s.Filters == nil { + invalidParams.Add(request.NewErrParamRequired("Filters")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -18231,154 +22179,108 @@ func (s *ProjectOperation) Validate() error { return nil } -// SetProjectedColumns sets the ProjectedColumns field's value. -func (s *ProjectOperation) SetProjectedColumns(v []*string) *ProjectOperation { - s.ProjectedColumns = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *SearchDashboardsInput) SetAwsAccountId(v string) *SearchDashboardsInput { + s.AwsAccountId = &v return s } -// Information about a queued dataset SPICE ingestion. -type QueueInfo struct { - _ struct{} `type:"structure"` - - // The ID of the ongoing ingestion. The queued ingestion is waiting for the - // ongoing ingestion to complete. - // - // QueuedIngestion is a required field - QueuedIngestion *string `type:"string" required:"true"` - - // The ID of the queued ingestion. - // - // WaitingOnIngestion is a required field - WaitingOnIngestion *string `type:"string" required:"true"` -} - -// String returns the string representation -func (s QueueInfo) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s QueueInfo) GoString() string { - return s.String() +// SetFilters sets the Filters field's value. +func (s *SearchDashboardsInput) SetFilters(v []*DashboardSearchFilter) *SearchDashboardsInput { + s.Filters = v + return s } -// SetQueuedIngestion sets the QueuedIngestion field's value. -func (s *QueueInfo) SetQueuedIngestion(v string) *QueueInfo { - s.QueuedIngestion = &v +// SetMaxResults sets the MaxResults field's value. +func (s *SearchDashboardsInput) SetMaxResults(v int64) *SearchDashboardsInput { + s.MaxResults = &v return s } -// SetWaitingOnIngestion sets the WaitingOnIngestion field's value. -func (s *QueueInfo) SetWaitingOnIngestion(v string) *QueueInfo { - s.WaitingOnIngestion = &v +// SetNextToken sets the NextToken field's value. +func (s *SearchDashboardsInput) SetNextToken(v string) *SearchDashboardsInput { + s.NextToken = &v return s } -// Amazon RDS parameters. -type RdsParameters struct { +type SearchDashboardsOutput struct { _ struct{} `type:"structure"` - // Database. - // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // The list of dashboards owned by the user specified in Filters in your request. + DashboardSummaryList []*DashboardSummary `type:"list"` - // Instance ID. - // - // InstanceId is a required field - InstanceId *string `min:"1" type:"string" required:"true"` + // The token for the next set of results, or null if there are no more results. + NextToken *string `type:"string"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s RdsParameters) String() string { +func (s SearchDashboardsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RdsParameters) GoString() string { +func (s SearchDashboardsOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *RdsParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RdsParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) - } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) - } - if s.InstanceId == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceId")) - } - if s.InstanceId != nil && len(*s.InstanceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDashboardSummaryList sets the DashboardSummaryList field's value. +func (s *SearchDashboardsOutput) SetDashboardSummaryList(v []*DashboardSummary) *SearchDashboardsOutput { + s.DashboardSummaryList = v + return s } -// SetDatabase sets the Database field's value. -func (s *RdsParameters) SetDatabase(v string) *RdsParameters { - s.Database = &v +// SetNextToken sets the NextToken field's value. +func (s *SearchDashboardsOutput) SetNextToken(v string) *SearchDashboardsOutput { + s.NextToken = &v return s } -// SetInstanceId sets the InstanceId field's value. -func (s *RdsParameters) SetInstanceId(v string) *RdsParameters { - s.InstanceId = &v +// SetRequestId sets the RequestId field's value. +func (s *SearchDashboardsOutput) SetRequestId(v string) *SearchDashboardsOutput { + s.RequestId = &v 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 -// field is set. -type RedshiftParameters struct { - _ struct{} `type:"structure"` - - // Cluster ID. This field can be blank if the Host and Port are provided. - ClusterId *string `min:"1" type:"string"` - - // Database. - // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` +// SetStatus sets the Status field's value. +func (s *SearchDashboardsOutput) SetStatus(v int64) *SearchDashboardsOutput { + s.Status = &v + return s +} - // Host. This field can be blank if ClusterId is provided. - Host *string `min:"1" type:"string"` +// ServiceNow parameters. +type ServiceNowParameters struct { + _ struct{} `type:"structure"` - // Port. This field can be blank if the ClusterId is provided. - Port *int64 `type:"integer"` + // URL of the base site. + // + // SiteBaseUrl is a required field + SiteBaseUrl *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s RedshiftParameters) String() string { +func (s ServiceNowParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RedshiftParameters) GoString() string { +func (s ServiceNowParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *RedshiftParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RedshiftParameters"} - if s.ClusterId != nil && len(*s.ClusterId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClusterId", 1)) - } - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) - } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) +func (s *ServiceNowParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ServiceNowParameters"} + if s.SiteBaseUrl == nil { + invalidParams.Add(request.NewErrParamRequired("SiteBaseUrl")) } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + if s.SiteBaseUrl != nil && len(*s.SiteBaseUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SiteBaseUrl", 1)) } if invalidParams.Len() > 0 { @@ -18387,301 +22289,241 @@ func (s *RedshiftParameters) Validate() error { return nil } -// SetClusterId sets the ClusterId field's value. -func (s *RedshiftParameters) SetClusterId(v string) *RedshiftParameters { - s.ClusterId = &v +// SetSiteBaseUrl sets the SiteBaseUrl field's value. +func (s *ServiceNowParameters) SetSiteBaseUrl(v string) *ServiceNowParameters { + s.SiteBaseUrl = &v return s } -// SetDatabase sets the Database field's value. -func (s *RedshiftParameters) SetDatabase(v string) *RedshiftParameters { - s.Database = &v - return s +// The number of minutes specified for the lifetime of a session isn't valid. +// The session lifetime must be 15-600 minutes. +type SessionLifetimeInMinutesInvalidException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The AWS request ID for this request. + RequestId *string `type:"string"` } -// SetHost sets the Host field's value. -func (s *RedshiftParameters) SetHost(v string) *RedshiftParameters { - s.Host = &v - return s +// String returns the string representation +func (s SessionLifetimeInMinutesInvalidException) String() string { + return awsutil.Prettify(s) } -// SetPort sets the Port field's value. -func (s *RedshiftParameters) SetPort(v int64) *RedshiftParameters { - s.Port = &v - return s +// GoString returns the string representation +func (s SessionLifetimeInMinutesInvalidException) GoString() string { + return s.String() } -type RegisterUserInput struct { - _ struct{} `type:"structure"` +func newErrorSessionLifetimeInMinutesInvalidException(v protocol.ResponseMetadata) error { + return &SessionLifetimeInMinutesInvalidException{ + RespMetadata: v, + } +} - // The ID for the AWS account that the user is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` +// Code returns the exception type name. +func (s *SessionLifetimeInMinutesInvalidException) Code() string { + return "SessionLifetimeInMinutesInvalidException" +} - // The email address of the user that you want to register. - // - // Email is a required field - Email *string `type:"string" required:"true"` +// Message returns the exception's message. +func (s *SessionLifetimeInMinutesInvalidException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. - IamArn *string `type:"string"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *SessionLifetimeInMinutesInvalidException) OrigErr() error { + return nil +} - // 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. - // - // IdentityType is a required field - IdentityType *string `type:"string" required:"true" enum:"IdentityType"` +func (s *SessionLifetimeInMinutesInvalidException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} - // The namespace. Currently, you should set this to default. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` +// Status code returns the HTTP status code for the request's response error. +func (s *SessionLifetimeInMinutesInvalidException) StatusCode() int { + return s.RespMetadata.StatusCode +} - // 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://awscli.amazonaws.com/v2/documentation/api/latest/reference/sts/assume-role.html) - // in the AWS CLI Reference. - SessionName *string `min:"2" type:"string"` +// RequestID returns the service's response RequestID for request. +func (s *SessionLifetimeInMinutesInvalidException) RequestID() string { + return s.RespMetadata.RequestID +} - // The Amazon QuickSight user name that you want to create for the user you - // are registering. - UserName *string `min:"1" type:"string"` +// Sheet controls option. +type SheetControlsOption struct { + _ struct{} `type:"structure"` - // 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. - // - // UserRole is a required field - UserRole *string `type:"string" required:"true" enum:"UserRole"` + // Visibility state. + VisibilityState *string `type:"string" enum:"DashboardUIState"` } // String returns the string representation -func (s RegisterUserInput) String() string { +func (s SheetControlsOption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RegisterUserInput) GoString() string { +func (s SheetControlsOption) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *RegisterUserInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RegisterUserInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) - } - if s.Email == nil { - invalidParams.Add(request.NewErrParamRequired("Email")) - } - if s.IdentityType == nil { - invalidParams.Add(request.NewErrParamRequired("IdentityType")) - } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) - } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) - } - if s.SessionName != nil && len(*s.SessionName) < 2 { - invalidParams.Add(request.NewErrParamMinLen("SessionName", 2)) - } - if s.UserName != nil && len(*s.UserName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) - } - if s.UserRole == nil { - invalidParams.Add(request.NewErrParamRequired("UserRole")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *RegisterUserInput) SetAwsAccountId(v string) *RegisterUserInput { - s.AwsAccountId = &v +// SetVisibilityState sets the VisibilityState field's value. +func (s *SheetControlsOption) SetVisibilityState(v string) *SheetControlsOption { + s.VisibilityState = &v return s } -// SetEmail sets the Email field's value. -func (s *RegisterUserInput) SetEmail(v string) *RegisterUserInput { - s.Email = &v - return s -} +// The theme display options for sheets. +type SheetStyle struct { + _ struct{} `type:"structure"` -// SetIamArn sets the IamArn field's value. -func (s *RegisterUserInput) SetIamArn(v string) *RegisterUserInput { - s.IamArn = &v - return s -} + // The display options for tiles. + Tile *TileStyle `type:"structure"` -// SetIdentityType sets the IdentityType field's value. -func (s *RegisterUserInput) SetIdentityType(v string) *RegisterUserInput { - s.IdentityType = &v - return s + // The layout options for tiles. + TileLayout *TileLayoutStyle `type:"structure"` } -// SetNamespace sets the Namespace field's value. -func (s *RegisterUserInput) SetNamespace(v string) *RegisterUserInput { - s.Namespace = &v - return s +// String returns the string representation +func (s SheetStyle) String() string { + return awsutil.Prettify(s) } -// SetSessionName sets the SessionName field's value. -func (s *RegisterUserInput) SetSessionName(v string) *RegisterUserInput { - s.SessionName = &v - return s +// GoString returns the string representation +func (s SheetStyle) GoString() string { + return s.String() } -// SetUserName sets the UserName field's value. -func (s *RegisterUserInput) SetUserName(v string) *RegisterUserInput { - s.UserName = &v +// SetTile sets the Tile field's value. +func (s *SheetStyle) SetTile(v *TileStyle) *SheetStyle { + s.Tile = v return s } -// SetUserRole sets the UserRole field's value. -func (s *RegisterUserInput) SetUserRole(v string) *RegisterUserInput { - s.UserRole = &v +// SetTileLayout sets the TileLayout field's value. +func (s *SheetStyle) SetTileLayout(v *TileLayoutStyle) *SheetStyle { + s.TileLayout = v return s } -type RegisterUserOutput struct { +// Snowflake parameters. +type SnowflakeParameters struct { _ struct{} `type:"structure"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` - - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // Database. + // + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // The user name. - User *User `type:"structure"` + // Host. + // + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` - // The URL the user visits to complete registration and provide a password. - // This is returned only for users with an identity type of QUICKSIGHT. - UserInvitationUrl *string `type:"string"` + // Warehouse. + // + // Warehouse is a required field + Warehouse *string `type:"string" required:"true"` } // String returns the string representation -func (s RegisterUserOutput) String() string { +func (s SnowflakeParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RegisterUserOutput) GoString() string { +func (s SnowflakeParameters) GoString() string { return s.String() } -// SetRequestId sets the RequestId field's value. -func (s *RegisterUserOutput) SetRequestId(v string) *RegisterUserOutput { - s.RequestId = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *SnowflakeParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SnowflakeParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) + } + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + } + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) + } + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Warehouse == nil { + invalidParams.Add(request.NewErrParamRequired("Warehouse")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStatus sets the Status field's value. -func (s *RegisterUserOutput) SetStatus(v int64) *RegisterUserOutput { - s.Status = &v +// SetDatabase sets the Database field's value. +func (s *SnowflakeParameters) SetDatabase(v string) *SnowflakeParameters { + s.Database = &v return s } -// SetUser sets the User field's value. -func (s *RegisterUserOutput) SetUser(v *User) *RegisterUserOutput { - s.User = v +// SetHost sets the Host field's value. +func (s *SnowflakeParameters) SetHost(v string) *SnowflakeParameters { + s.Host = &v return s } -// SetUserInvitationUrl sets the UserInvitationUrl field's value. -func (s *RegisterUserOutput) SetUserInvitationUrl(v string) *RegisterUserOutput { - s.UserInvitationUrl = &v +// SetWarehouse sets the Warehouse field's value. +func (s *SnowflakeParameters) SetWarehouse(v string) *SnowflakeParameters { + s.Warehouse = &v return s } -// A physical table type for relational data sources. -type RelationalTable struct { +// Spark parameters. +type SparkParameters struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the data source. - // - // DataSourceArn is a required field - DataSourceArn *string `type:"string" required:"true"` - - // The column schema of the table. + // Host. // - // InputColumns is a required field - InputColumns []*InputColumn `min:"1" type:"list" required:"true"` + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` - // The name of the relational table. + // Port. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` - - // The schema name. This name applies to certain relational database engines. - Schema *string `type:"string"` + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation -func (s RelationalTable) String() string { +func (s SparkParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RelationalTable) GoString() string { +func (s SparkParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *RelationalTable) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RelationalTable"} - if s.DataSourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceArn")) - } - if s.InputColumns == nil { - invalidParams.Add(request.NewErrParamRequired("InputColumns")) - } - if s.InputColumns != nil && len(s.InputColumns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("InputColumns", 1)) +func (s *SparkParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SparkParameters"} + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) } - if s.Name != nil && len(*s.Name) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) } - if s.InputColumns != nil { - for i, v := range s.InputColumns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputColumns", i), err.(request.ErrInvalidParams)) - } - } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if invalidParams.Len() > 0 { @@ -18690,69 +22532,68 @@ func (s *RelationalTable) Validate() error { return nil } -// SetDataSourceArn sets the DataSourceArn field's value. -func (s *RelationalTable) SetDataSourceArn(v string) *RelationalTable { - s.DataSourceArn = &v - return s -} - -// SetInputColumns sets the InputColumns field's value. -func (s *RelationalTable) SetInputColumns(v []*InputColumn) *RelationalTable { - s.InputColumns = v - return s -} - -// SetName sets the Name field's value. -func (s *RelationalTable) SetName(v string) *RelationalTable { - s.Name = &v +// SetHost sets the Host field's value. +func (s *SparkParameters) SetHost(v string) *SparkParameters { + s.Host = &v return s } -// SetSchema sets the Schema field's value. -func (s *RelationalTable) SetSchema(v string) *RelationalTable { - s.Schema = &v +// SetPort sets the Port field's value. +func (s *SparkParameters) SetPort(v int64) *SparkParameters { + s.Port = &v return s } -// A transform operation that renames a column. -type RenameColumnOperation struct { +// SQL Server parameters. +type SqlServerParameters struct { _ struct{} `type:"structure"` - // The name of the column to be renamed. + // Database. // - // ColumnName is a required field - ColumnName *string `min:"1" type:"string" required:"true"` + // Database is a required field + Database *string `min:"1" type:"string" required:"true"` - // The new name for the column. + // Host. // - // NewColumnName is a required field - NewColumnName *string `min:"1" type:"string" required:"true"` + // Host is a required field + Host *string `min:"1" type:"string" required:"true"` + + // Port. + // + // Port is a required field + Port *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation -func (s RenameColumnOperation) String() string { +func (s SqlServerParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RenameColumnOperation) GoString() string { +func (s SqlServerParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *RenameColumnOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RenameColumnOperation"} - if s.ColumnName == nil { - invalidParams.Add(request.NewErrParamRequired("ColumnName")) +func (s *SqlServerParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SqlServerParameters"} + if s.Database == nil { + invalidParams.Add(request.NewErrParamRequired("Database")) } - if s.ColumnName != nil && len(*s.ColumnName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ColumnName", 1)) + if s.Database != nil && len(*s.Database) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Database", 1)) } - if s.NewColumnName == nil { - invalidParams.Add(request.NewErrParamRequired("NewColumnName")) + if s.Host == nil { + invalidParams.Add(request.NewErrParamRequired("Host")) } - if s.NewColumnName != nil && len(*s.NewColumnName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NewColumnName", 1)) + if s.Host != nil && len(*s.Host) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + } + if s.Port == nil { + invalidParams.Add(request.NewErrParamRequired("Port")) + } + if s.Port != nil && *s.Port < 1 { + invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if invalidParams.Len() > 0 { @@ -18761,184 +22602,203 @@ func (s *RenameColumnOperation) Validate() error { return nil } -// SetColumnName sets the ColumnName field's value. -func (s *RenameColumnOperation) SetColumnName(v string) *RenameColumnOperation { - s.ColumnName = &v +// SetDatabase sets the Database field's value. +func (s *SqlServerParameters) SetDatabase(v string) *SqlServerParameters { + s.Database = &v return s } -// SetNewColumnName sets the NewColumnName field's value. -func (s *RenameColumnOperation) SetNewColumnName(v string) *RenameColumnOperation { - s.NewColumnName = &v +// SetHost sets the Host field's value. +func (s *SqlServerParameters) SetHost(v string) *SqlServerParameters { + s.Host = &v return s } -// The resource specified already exists. -type ResourceExistsException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` +// SetPort sets the Port field's value. +func (s *SqlServerParameters) SetPort(v int64) *SqlServerParameters { + s.Port = &v + return s +} - // The AWS request ID for this request. - RequestId *string `type:"string"` +// Secure Socket Layer (SSL) properties that apply when QuickSight connects +// to your underlying data source. +type SslProperties struct { + _ struct{} `type:"structure"` - // The resource type for this request. - ResourceType *string `type:"string" enum:"ExceptionResourceType"` + // A Boolean option to control whether SSL should be disabled. + DisableSsl *bool `type:"boolean"` } // String returns the string representation -func (s ResourceExistsException) String() string { +func (s SslProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceExistsException) GoString() string { +func (s SslProperties) GoString() string { return s.String() } -func newErrorResourceExistsException(v protocol.ResponseMetadata) error { - return &ResourceExistsException{ - RespMetadata: v, - } +// SetDisableSsl sets the DisableSsl field's value. +func (s *SslProperties) SetDisableSsl(v bool) *SslProperties { + s.DisableSsl = &v + return s +} + +// String parameter. +type StringParameter struct { + _ struct{} `type:"structure"` + + // A display name for the dataset. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Values. + // + // Values is a required field + Values []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s StringParameter) String() string { + return awsutil.Prettify(s) } -// Code returns the exception type name. -func (s *ResourceExistsException) Code() string { - return "ResourceExistsException" +// GoString returns the string representation +func (s StringParameter) GoString() string { + return s.String() } -// Message returns the exception's message. -func (s *ResourceExistsException) Message() string { - if s.Message_ != nil { - return *s.Message_ +// Validate inspects the fields of the type to determine if they are valid. +func (s *StringParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StringParameter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceExistsException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *ResourceExistsException) 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 *ResourceExistsException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetName sets the Name field's value. +func (s *StringParameter) SetName(v string) *StringParameter { + s.Name = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ResourceExistsException) RequestID() string { - return s.RespMetadata.RequestID +// SetValues sets the Values field's value. +func (s *StringParameter) SetValues(v []*string) *StringParameter { + s.Values = v + return s } -// One or more resources can't be found. -type ResourceNotFoundException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` +// The key or keys of the key-value pairs for the resource tag or tags assigned +// to the resource. +type Tag struct { + _ struct{} `type:"structure"` - // The AWS request ID for this request. - RequestId *string `type:"string"` + // Tag key. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` - // The resource type for this request. - ResourceType *string `type:"string" enum:"ExceptionResourceType"` + // Tag value. + // + // Value is a required field + Value *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ResourceNotFoundException) String() string { +func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceNotFoundException) GoString() string { +func (s Tag) GoString() string { return s.String() } -func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { - return &ResourceNotFoundException{ - RespMetadata: v, +// 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")) } -} - -// Code returns the exception type name. -func (s *ResourceNotFoundException) Code() string { - return "ResourceNotFoundException" -} - -// Message returns the exception's message. -func (s *ResourceNotFoundException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceNotFoundException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *ResourceNotFoundException) 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 *ResourceNotFoundException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ResourceNotFoundException) RequestID() string { - return s.RespMetadata.RequestID +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s } -// Permission for the resource. -type ResourcePermission struct { +// A transform operation that tags a column with additional information. +type TagColumnOperation struct { _ struct{} `type:"structure"` - // The action to grant or revoke permissions on, for example "quicksight:DescribeDashboard". + // The column that this operation acts on. // - // Actions is a required field - Actions []*string `min:"1" type:"list" required:"true"` + // ColumnName is a required field + ColumnName *string `min:"1" type:"string" required:"true"` - // The Amazon Resource Name (ARN) of an Amazon QuickSight user or group, or - // an IAM ARN. If you are using cross-account resource sharing, this is the - // IAM ARN of an account root. Otherwise, it is the ARN of a QuickSight user - // or group. . + // The dataset column tag, currently only used for geospatial type tagging. . // - // Principal is a required field - Principal *string `min:"1" type:"string" required:"true"` + // This is not tags for the AWS tagging feature. . + // + // Tags is a required field + Tags []*ColumnTag `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s ResourcePermission) String() string { +func (s TagColumnOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourcePermission) GoString() string { +func (s TagColumnOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ResourcePermission) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ResourcePermission"} - if s.Actions == nil { - invalidParams.Add(request.NewErrParamRequired("Actions")) +func (s *TagColumnOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagColumnOperation"} + if s.ColumnName == nil { + invalidParams.Add(request.NewErrParamRequired("ColumnName")) } - if s.Actions != nil && len(s.Actions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Actions", 1)) + if s.ColumnName != nil && len(*s.ColumnName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnName", 1)) } - if s.Principal == nil { - invalidParams.Add(request.NewErrParamRequired("Principal")) + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) } - if s.Principal != nil && len(*s.Principal) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Principal", 1)) + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if invalidParams.Len() > 0 { @@ -18947,347 +22807,316 @@ func (s *ResourcePermission) Validate() error { return nil } -// SetActions sets the Actions field's value. -func (s *ResourcePermission) SetActions(v []*string) *ResourcePermission { - s.Actions = v +// SetColumnName sets the ColumnName field's value. +func (s *TagColumnOperation) SetColumnName(v string) *TagColumnOperation { + s.ColumnName = &v return s } -// SetPrincipal sets the Principal field's value. -func (s *ResourcePermission) SetPrincipal(v string) *ResourcePermission { - s.Principal = &v +// SetTags sets the Tags field's value. +func (s *TagColumnOperation) SetTags(v []*ColumnTag) *TagColumnOperation { + s.Tags = v return s } -// This resource is currently unavailable. -type ResourceUnavailableException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` +type TagResourceInput struct { + _ struct{} `type:"structure"` - // The AWS request ID for this request. - RequestId *string `type:"string"` + // The Amazon Resource Name (ARN) of the resource that you want to tag. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` - // The resource type for this request. - ResourceType *string `type:"string" enum:"ExceptionResourceType"` + // Contains a map of the key-value pairs for the resource tag or tags assigned + // to the resource. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s ResourceUnavailableException) String() string { +func (s TagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ResourceUnavailableException) GoString() string { +func (s TagResourceInput) GoString() string { return s.String() } -func newErrorResourceUnavailableException(v protocol.ResponseMetadata) error { - return &ResourceUnavailableException{ - 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")) } -} - -// Code returns the exception type name. -func (s *ResourceUnavailableException) Code() string { - return "ResourceUnavailableException" -} - -// Message returns the exception's message. -func (s *ResourceUnavailableException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + 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)) + } + } } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceUnavailableException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *ResourceUnavailableException) 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 *ResourceUnavailableException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ResourceUnavailableException) RequestID() string { - return s.RespMetadata.RequestID +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s } -// Information about rows for a data set SPICE ingestion. -type RowInfo struct { +type TagResourceOutput struct { _ struct{} `type:"structure"` - // The number of rows that were not ingested. - RowsDropped *int64 `type:"long"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // The number of rows that were ingested. - RowsIngested *int64 `type:"long"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s RowInfo) String() string { +func (s TagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RowInfo) GoString() string { +func (s TagResourceOutput) GoString() string { return s.String() } -// SetRowsDropped sets the RowsDropped field's value. -func (s *RowInfo) SetRowsDropped(v int64) *RowInfo { - s.RowsDropped = &v +// SetRequestId sets the RequestId field's value. +func (s *TagResourceOutput) SetRequestId(v string) *TagResourceOutput { + s.RequestId = &v return s } -// SetRowsIngested sets the RowsIngested field's value. -func (s *RowInfo) SetRowsIngested(v int64) *RowInfo { - s.RowsIngested = &v +// SetStatus sets the Status field's value. +func (s *TagResourceOutput) SetStatus(v int64) *TagResourceOutput { + s.Status = &v return s } -// The row-level security configuration for the dataset. -type RowLevelPermissionDataSet struct { +// 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 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. +// +// You can share templates across AWS accounts by allowing users in other AWS +// accounts to create a template or a dashboard from an existing template. +type Template struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the permission dataset. - // - // Arn is a required field - Arn *string `type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the template. + Arn *string `type:"string"` - // Permission policy. - // - // PermissionPolicy is a required field - PermissionPolicy *string `type:"string" required:"true" enum:"RowLevelPermissionPolicy"` + // Time when this was created. + CreatedTime *time.Time `type:"timestamp"` + + // Time when this was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The display name of the template. + Name *string `min:"1" type:"string"` + + // The ID for the template. This is unique per AWS Region for each AWS account. + TemplateId *string `min:"1" type:"string"` + + // A structure describing the versions of the template. + Version *TemplateVersion `type:"structure"` } // String returns the string representation -func (s RowLevelPermissionDataSet) String() string { +func (s Template) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RowLevelPermissionDataSet) GoString() string { +func (s Template) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *RowLevelPermissionDataSet) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RowLevelPermissionDataSet"} - if s.Arn == nil { - invalidParams.Add(request.NewErrParamRequired("Arn")) - } - if s.PermissionPolicy == nil { - invalidParams.Add(request.NewErrParamRequired("PermissionPolicy")) - } +// SetArn sets the Arn field's value. +func (s *Template) SetArn(v string) *Template { + s.Arn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreatedTime sets the CreatedTime field's value. +func (s *Template) SetCreatedTime(v time.Time) *Template { + s.CreatedTime = &v + return s } -// SetArn sets the Arn field's value. -func (s *RowLevelPermissionDataSet) SetArn(v string) *RowLevelPermissionDataSet { - s.Arn = &v +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *Template) SetLastUpdatedTime(v time.Time) *Template { + s.LastUpdatedTime = &v return s } -// SetPermissionPolicy sets the PermissionPolicy field's value. -func (s *RowLevelPermissionDataSet) SetPermissionPolicy(v string) *RowLevelPermissionDataSet { - s.PermissionPolicy = &v +// SetName sets the Name field's value. +func (s *Template) SetName(v string) *Template { + s.Name = &v return s } -// S3 parameters. -type S3Parameters struct { +// SetTemplateId sets the TemplateId field's value. +func (s *Template) SetTemplateId(v string) *Template { + s.TemplateId = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *Template) SetVersion(v *TemplateVersion) *Template { + s.Version = v + return s +} + +// The template alias. +type TemplateAlias struct { _ struct{} `type:"structure"` - // Location of the Amazon S3 manifest file. This is NULL if the manifest file - // was uploaded in the console. - // - // ManifestFileLocation is a required field - ManifestFileLocation *ManifestFileLocation `type:"structure" required:"true"` + // The display name of the template alias. + AliasName *string `min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the template alias. + Arn *string `type:"string"` + + // The version number of the template alias. + TemplateVersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s S3Parameters) String() string { +func (s TemplateAlias) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s S3Parameters) GoString() string { +func (s TemplateAlias) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *S3Parameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "S3Parameters"} - if s.ManifestFileLocation == nil { - invalidParams.Add(request.NewErrParamRequired("ManifestFileLocation")) - } - if s.ManifestFileLocation != nil { - if err := s.ManifestFileLocation.Validate(); err != nil { - invalidParams.AddNested("ManifestFileLocation", err.(request.ErrInvalidParams)) - } - } +// SetAliasName sets the AliasName field's value. +func (s *TemplateAlias) SetAliasName(v string) *TemplateAlias { + s.AliasName = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetArn sets the Arn field's value. +func (s *TemplateAlias) SetArn(v string) *TemplateAlias { + s.Arn = &v + return s } -// SetManifestFileLocation sets the ManifestFileLocation field's value. -func (s *S3Parameters) SetManifestFileLocation(v *ManifestFileLocation) *S3Parameters { - s.ManifestFileLocation = v +// SetTemplateVersionNumber sets the TemplateVersionNumber field's value. +func (s *TemplateAlias) SetTemplateVersionNumber(v int64) *TemplateAlias { + s.TemplateVersionNumber = &v return s } -// A physical table type for as S3 data source. -type S3Source struct { +// List of errors that occurred when the template version creation failed. +type TemplateError struct { _ struct{} `type:"structure"` - // The amazon Resource Name (ARN) for the data source. - // - // DataSourceArn is a required field - DataSourceArn *string `type:"string" required:"true"` - - // A physical table type for as S3 data source. - // - // InputColumns is a required field - InputColumns []*InputColumn `min:"1" type:"list" required:"true"` + // Description of the error type. + Message *string `type:"string"` - // Information about the format for the S3 source file or files. - UploadSettings *UploadSettings `type:"structure"` + // Type of error. + Type *string `type:"string" enum:"TemplateErrorType"` } // String returns the string representation -func (s S3Source) String() string { +func (s TemplateError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s S3Source) GoString() string { +func (s TemplateError) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *S3Source) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "S3Source"} - if s.DataSourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceArn")) - } - if s.InputColumns == nil { - invalidParams.Add(request.NewErrParamRequired("InputColumns")) - } - if s.InputColumns != nil && len(s.InputColumns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("InputColumns", 1)) - } - if s.InputColumns != nil { - for i, v := range s.InputColumns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputColumns", i), err.(request.ErrInvalidParams)) - } - } - } - if s.UploadSettings != nil { - if err := s.UploadSettings.Validate(); err != nil { - invalidParams.AddNested("UploadSettings", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDataSourceArn sets the DataSourceArn field's value. -func (s *S3Source) SetDataSourceArn(v string) *S3Source { - s.DataSourceArn = &v - return s -} - -// SetInputColumns sets the InputColumns field's value. -func (s *S3Source) SetInputColumns(v []*InputColumn) *S3Source { - s.InputColumns = v +// SetMessage sets the Message field's value. +func (s *TemplateError) SetMessage(v string) *TemplateError { + s.Message = &v return s } -// SetUploadSettings sets the UploadSettings field's value. -func (s *S3Source) SetUploadSettings(v *UploadSettings) *S3Source { - s.UploadSettings = v +// SetType sets the Type field's value. +func (s *TemplateError) SetType(v string) *TemplateError { + s.Type = &v return s } -type SearchDashboardsInput struct { - _ struct{} `type:"structure"` - - // The ID of the AWS account that contains the user whose dashboards you're - // searching for. - // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` +// The source analysis of the template. +type TemplateSourceAnalysis struct { + _ struct{} `type:"structure"` - // The filters to apply to the search. Currently, you can search only by user - // name, for example, "Filters": [ { "Name": "QUICKSIGHT_USER", "Operator": - // "StringEquals", "Value": "arn:aws:quicksight:us-east-1:1:user/default/UserName1" - // } ] + // The Amazon Resource Name (ARN) of the resource. // - // Filters is a required field - Filters []*DashboardSearchFilter `type:"list" required:"true"` - - // The maximum number of results to be returned per request. - MaxResults *int64 `min:"1" type:"integer"` + // Arn is a required field + Arn *string `type:"string" required:"true"` - // The token for the next set of results, or null if there are no more results. - NextToken *string `type:"string"` + // A structure containing information about the dataset references used as placeholders + // in the template. + // + // DataSetReferences is a required field + DataSetReferences []*DataSetReference `min:"1" type:"list" required:"true"` } // String returns the string representation -func (s SearchDashboardsInput) String() string { +func (s TemplateSourceAnalysis) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SearchDashboardsInput) GoString() string { +func (s TemplateSourceAnalysis) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *SearchDashboardsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SearchDashboardsInput"} - if s.AwsAccountId == nil { - invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) - } - if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { - invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) +func (s *TemplateSourceAnalysis) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TemplateSourceAnalysis"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) } - if s.Filters == nil { - invalidParams.Add(request.NewErrParamRequired("Filters")) + if s.DataSetReferences == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetReferences")) } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + if s.DataSetReferences != nil && len(s.DataSetReferences) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetReferences", 1)) } - if s.Filters != nil { - for i, v := range s.Filters { + if s.DataSetReferences != nil { + for i, v := range s.DataSetReferences { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSetReferences", i), err.(request.ErrInvalidParams)) } } } @@ -19298,108 +23127,96 @@ func (s *SearchDashboardsInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *SearchDashboardsInput) SetAwsAccountId(v string) *SearchDashboardsInput { - s.AwsAccountId = &v - return s -} - -// SetFilters sets the Filters field's value. -func (s *SearchDashboardsInput) SetFilters(v []*DashboardSearchFilter) *SearchDashboardsInput { - s.Filters = v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *SearchDashboardsInput) SetMaxResults(v int64) *SearchDashboardsInput { - s.MaxResults = &v +// SetArn sets the Arn field's value. +func (s *TemplateSourceAnalysis) SetArn(v string) *TemplateSourceAnalysis { + s.Arn = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *SearchDashboardsInput) SetNextToken(v string) *SearchDashboardsInput { - s.NextToken = &v +// SetDataSetReferences sets the DataSetReferences field's value. +func (s *TemplateSourceAnalysis) SetDataSetReferences(v []*DataSetReference) *TemplateSourceAnalysis { + s.DataSetReferences = v return s } -type SearchDashboardsOutput struct { +// The source entity of the template. +type TemplateSourceEntity struct { _ struct{} `type:"structure"` - // The list of dashboards owned by the user specified in Filters in your request. - DashboardSummaryList []*DashboardSummary `type:"list"` - - // The token for the next set of results, or null if there are no more results. - NextToken *string `type:"string"` - - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // The source analysis, if it is based on an analysis. + SourceAnalysis *TemplateSourceAnalysis `type:"structure"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // The source template, if it is based on an template. + SourceTemplate *TemplateSourceTemplate `type:"structure"` } // String returns the string representation -func (s SearchDashboardsOutput) String() string { +func (s TemplateSourceEntity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SearchDashboardsOutput) GoString() string { +func (s TemplateSourceEntity) GoString() string { return s.String() } -// SetDashboardSummaryList sets the DashboardSummaryList field's value. -func (s *SearchDashboardsOutput) SetDashboardSummaryList(v []*DashboardSummary) *SearchDashboardsOutput { - s.DashboardSummaryList = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *TemplateSourceEntity) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TemplateSourceEntity"} + if s.SourceAnalysis != nil { + if err := s.SourceAnalysis.Validate(); err != nil { + invalidParams.AddNested("SourceAnalysis", err.(request.ErrInvalidParams)) + } + } + if s.SourceTemplate != nil { + if err := s.SourceTemplate.Validate(); err != nil { + invalidParams.AddNested("SourceTemplate", err.(request.ErrInvalidParams)) + } + } -// SetNextToken sets the NextToken field's value. -func (s *SearchDashboardsOutput) SetNextToken(v string) *SearchDashboardsOutput { - s.NextToken = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetRequestId sets the RequestId field's value. -func (s *SearchDashboardsOutput) SetRequestId(v string) *SearchDashboardsOutput { - s.RequestId = &v +// SetSourceAnalysis sets the SourceAnalysis field's value. +func (s *TemplateSourceEntity) SetSourceAnalysis(v *TemplateSourceAnalysis) *TemplateSourceEntity { + s.SourceAnalysis = v return s } -// SetStatus sets the Status field's value. -func (s *SearchDashboardsOutput) SetStatus(v int64) *SearchDashboardsOutput { - s.Status = &v +// SetSourceTemplate sets the SourceTemplate field's value. +func (s *TemplateSourceEntity) SetSourceTemplate(v *TemplateSourceTemplate) *TemplateSourceEntity { + s.SourceTemplate = v return s } -// ServiceNow parameters. -type ServiceNowParameters struct { +// The source template of the template. +type TemplateSourceTemplate struct { _ struct{} `type:"structure"` - // URL of the base site. + // The Amazon Resource Name (ARN) of the resource. // - // SiteBaseUrl is a required field - SiteBaseUrl *string `min:"1" type:"string" required:"true"` + // Arn is a required field + Arn *string `type:"string" required:"true"` } // String returns the string representation -func (s ServiceNowParameters) String() string { +func (s TemplateSourceTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ServiceNowParameters) GoString() string { +func (s TemplateSourceTemplate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ServiceNowParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ServiceNowParameters"} - if s.SiteBaseUrl == nil { - invalidParams.Add(request.NewErrParamRequired("SiteBaseUrl")) - } - if s.SiteBaseUrl != nil && len(*s.SiteBaseUrl) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SiteBaseUrl", 1)) +func (s *TemplateSourceTemplate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TemplateSourceTemplate"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) } if invalidParams.Len() > 0 { @@ -19408,230 +23225,224 @@ func (s *ServiceNowParameters) Validate() error { return nil } -// SetSiteBaseUrl sets the SiteBaseUrl field's value. -func (s *ServiceNowParameters) SetSiteBaseUrl(v string) *ServiceNowParameters { - s.SiteBaseUrl = &v +// SetArn sets the Arn field's value. +func (s *TemplateSourceTemplate) SetArn(v string) *TemplateSourceTemplate { + s.Arn = &v return s } -// The number of minutes specified for the lifetime of a session isn't valid. -// The session lifetime must be 15-600 minutes. -type SessionLifetimeInMinutesInvalidException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// The template summary. +type TemplateSummary struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"Message" type:"string"` + // A summary of a template. + Arn *string `type:"string"` - // The AWS request ID for this request. - RequestId *string `type:"string"` + // The last time that this template was created. + CreatedTime *time.Time `type:"timestamp"` + + // The last time that this template was updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // A structure containing a list of version numbers for the template summary. + LatestVersionNumber *int64 `min:"1" type:"long"` + + // A display name for the template. + Name *string `min:"1" type:"string"` + + // The ID of the template. This ID is unique per AWS Region for each AWS account. + TemplateId *string `min:"1" type:"string"` } // String returns the string representation -func (s SessionLifetimeInMinutesInvalidException) String() string { +func (s TemplateSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SessionLifetimeInMinutesInvalidException) GoString() string { +func (s TemplateSummary) GoString() string { return s.String() } -func newErrorSessionLifetimeInMinutesInvalidException(v protocol.ResponseMetadata) error { - return &SessionLifetimeInMinutesInvalidException{ - RespMetadata: v, - } +// SetArn sets the Arn field's value. +func (s *TemplateSummary) SetArn(v string) *TemplateSummary { + s.Arn = &v + return s } -// Code returns the exception type name. -func (s *SessionLifetimeInMinutesInvalidException) Code() string { - return "SessionLifetimeInMinutesInvalidException" +// SetCreatedTime sets the CreatedTime field's value. +func (s *TemplateSummary) SetCreatedTime(v time.Time) *TemplateSummary { + s.CreatedTime = &v + return s } -// Message returns the exception's message. -func (s *SessionLifetimeInMinutesInvalidException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *TemplateSummary) SetLastUpdatedTime(v time.Time) *TemplateSummary { + s.LastUpdatedTime = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *SessionLifetimeInMinutesInvalidException) OrigErr() error { - return nil +// SetLatestVersionNumber sets the LatestVersionNumber field's value. +func (s *TemplateSummary) SetLatestVersionNumber(v int64) *TemplateSummary { + s.LatestVersionNumber = &v + return s } -func (s *SessionLifetimeInMinutesInvalidException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetName sets the Name field's value. +func (s *TemplateSummary) SetName(v string) *TemplateSummary { + s.Name = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *SessionLifetimeInMinutesInvalidException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetTemplateId sets the TemplateId field's value. +func (s *TemplateSummary) SetTemplateId(v string) *TemplateSummary { + s.TemplateId = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *SessionLifetimeInMinutesInvalidException) RequestID() string { - return s.RespMetadata.RequestID -} +// A version of a template. +type TemplateVersion struct { + _ struct{} `type:"structure"` + + // The time that this template version was created. + CreatedTime *time.Time `type:"timestamp"` + + // Schema of the dataset identified by the placeholder. The idea is that any + // dashboard created from the template should be bound to new datasets matching + // the same schema described through this API. . + DataSetConfigurations []*DataSetConfiguration `type:"list"` + + // The description of the template. + Description *string `min:"1" type:"string"` + + // Errors associated with the template. + Errors []*TemplateError `min:"1" type:"list"` + + // The Amazon Resource Name (ARN) of the analysis or template which was used + // to create this template. + SourceEntityArn *string `type:"string"` -// Sheet controls option. -type SheetControlsOption struct { - _ struct{} `type:"structure"` + // The HTTP status of the request. + Status *string `type:"string" enum:"ResourceStatus"` - // Visibility state. - VisibilityState *string `type:"string" enum:"DashboardUIState"` + // The version number of the template. + VersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s SheetControlsOption) String() string { +func (s TemplateVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SheetControlsOption) GoString() string { +func (s TemplateVersion) GoString() string { return s.String() } -// SetVisibilityState sets the VisibilityState field's value. -func (s *SheetControlsOption) SetVisibilityState(v string) *SheetControlsOption { - s.VisibilityState = &v +// SetCreatedTime sets the CreatedTime field's value. +func (s *TemplateVersion) SetCreatedTime(v time.Time) *TemplateVersion { + s.CreatedTime = &v return s } -// Snowflake parameters. -type SnowflakeParameters struct { - _ struct{} `type:"structure"` - - // Database. - // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` - - // Host. - // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` - - // Warehouse. - // - // Warehouse is a required field - Warehouse *string `type:"string" required:"true"` -} - -// String returns the string representation -func (s SnowflakeParameters) String() string { - return awsutil.Prettify(s) +// SetDataSetConfigurations sets the DataSetConfigurations field's value. +func (s *TemplateVersion) SetDataSetConfigurations(v []*DataSetConfiguration) *TemplateVersion { + s.DataSetConfigurations = v + return s } -// GoString returns the string representation -func (s SnowflakeParameters) GoString() string { - return s.String() +// SetDescription sets the Description field's value. +func (s *TemplateVersion) SetDescription(v string) *TemplateVersion { + s.Description = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *SnowflakeParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SnowflakeParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) - } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) - } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) - } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) - } - if s.Warehouse == nil { - invalidParams.Add(request.NewErrParamRequired("Warehouse")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetErrors sets the Errors field's value. +func (s *TemplateVersion) SetErrors(v []*TemplateError) *TemplateVersion { + s.Errors = v + return s } -// SetDatabase sets the Database field's value. -func (s *SnowflakeParameters) SetDatabase(v string) *SnowflakeParameters { - s.Database = &v +// SetSourceEntityArn sets the SourceEntityArn field's value. +func (s *TemplateVersion) SetSourceEntityArn(v string) *TemplateVersion { + s.SourceEntityArn = &v return s } -// SetHost sets the Host field's value. -func (s *SnowflakeParameters) SetHost(v string) *SnowflakeParameters { - s.Host = &v +// SetStatus sets the Status field's value. +func (s *TemplateVersion) SetStatus(v string) *TemplateVersion { + s.Status = &v return s } -// SetWarehouse sets the Warehouse field's value. -func (s *SnowflakeParameters) SetWarehouse(v string) *SnowflakeParameters { - s.Warehouse = &v +// SetVersionNumber sets the VersionNumber field's value. +func (s *TemplateVersion) SetVersionNumber(v int64) *TemplateVersion { + s.VersionNumber = &v return s } -// Spark parameters. -type SparkParameters struct { +// The template version. +type TemplateVersionSummary struct { _ struct{} `type:"structure"` - // Host. - // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the template version. + Arn *string `type:"string"` - // Port. - // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // The time that this template version was created. + CreatedTime *time.Time `type:"timestamp"` + + // The description of the template version. + Description *string `min:"1" type:"string"` + + // The status of the template version. + Status *string `type:"string" enum:"ResourceStatus"` + + // The version number of the template version. + VersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s SparkParameters) String() string { +func (s TemplateVersionSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SparkParameters) GoString() string { +func (s TemplateVersionSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *SparkParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SparkParameters"} - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) - } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) - } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) - } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) - } +// SetArn sets the Arn field's value. +func (s *TemplateVersionSummary) SetArn(v string) *TemplateVersionSummary { + s.Arn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreatedTime sets the CreatedTime field's value. +func (s *TemplateVersionSummary) SetCreatedTime(v time.Time) *TemplateVersionSummary { + s.CreatedTime = &v + return s } -// SetHost sets the Host field's value. -func (s *SparkParameters) SetHost(v string) *SparkParameters { - s.Host = &v +// SetDescription sets the Description field's value. +func (s *TemplateVersionSummary) SetDescription(v string) *TemplateVersionSummary { + s.Description = &v return s } -// SetPort sets the Port field's value. -func (s *SparkParameters) SetPort(v int64) *SparkParameters { - s.Port = &v +// SetStatus sets the Status field's value. +func (s *TemplateVersionSummary) SetStatus(v string) *TemplateVersionSummary { + s.Status = &v return s } -// SQL Server parameters. -type SqlServerParameters struct { +// SetVersionNumber sets the VersionNumber field's value. +func (s *TemplateVersionSummary) SetVersionNumber(v int64) *TemplateVersionSummary { + s.VersionNumber = &v + return s +} + +// Teradata parameters. +type TeradataParameters struct { _ struct{} `type:"structure"` // Database. @@ -19651,18 +23462,18 @@ type SqlServerParameters struct { } // String returns the string representation -func (s SqlServerParameters) String() string { +func (s TeradataParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SqlServerParameters) GoString() string { +func (s TeradataParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *SqlServerParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "SqlServerParameters"} +func (s *TeradataParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TeradataParameters"} if s.Database == nil { invalidParams.Add(request.NewErrParamRequired("Database")) } @@ -19689,521 +23500,620 @@ func (s *SqlServerParameters) Validate() error { } // SetDatabase sets the Database field's value. -func (s *SqlServerParameters) SetDatabase(v string) *SqlServerParameters { +func (s *TeradataParameters) SetDatabase(v string) *TeradataParameters { s.Database = &v return s } // SetHost sets the Host field's value. -func (s *SqlServerParameters) SetHost(v string) *SqlServerParameters { +func (s *TeradataParameters) SetHost(v string) *TeradataParameters { s.Host = &v return s } // SetPort sets the Port field's value. -func (s *SqlServerParameters) SetPort(v int64) *SqlServerParameters { +func (s *TeradataParameters) SetPort(v int64) *TeradataParameters { s.Port = &v return s } -// Secure Socket Layer (SSL) properties that apply when QuickSight connects -// to your underlying data source. -type SslProperties struct { +type Theme struct { _ struct{} `type:"structure"` - // A Boolean option to control whether SSL should be disabled. - DisableSsl *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the theme. + Arn *string `type:"string"` + + // The date and time that the theme was created. + CreatedTime *time.Time `type:"timestamp"` + + // The date and time that the theme was last updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The name that the user gives to the theme. + Name *string `min:"1" type:"string"` + + // The identifier that the user gives to the theme. + ThemeId *string `min:"1" type:"string"` + + // The type of theme, based on how it was created. Valid values include: QUICKSIGHT + // and CUSTOM. + Type *string `type:"string" enum:"ThemeType"` + + // A version of a theme. + Version *ThemeVersion `type:"structure"` } // String returns the string representation -func (s SslProperties) String() string { +func (s Theme) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s SslProperties) GoString() string { +func (s Theme) GoString() string { return s.String() } -// SetDisableSsl sets the DisableSsl field's value. -func (s *SslProperties) SetDisableSsl(v bool) *SslProperties { - s.DisableSsl = &v +// SetArn sets the Arn field's value. +func (s *Theme) SetArn(v string) *Theme { + s.Arn = &v return s } -// String parameter. -type StringParameter struct { +// SetCreatedTime sets the CreatedTime field's value. +func (s *Theme) SetCreatedTime(v time.Time) *Theme { + s.CreatedTime = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *Theme) SetLastUpdatedTime(v time.Time) *Theme { + s.LastUpdatedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *Theme) SetName(v string) *Theme { + s.Name = &v + return s +} + +// SetThemeId sets the ThemeId field's value. +func (s *Theme) SetThemeId(v string) *Theme { + s.ThemeId = &v + return s +} + +// SetType sets the Type field's value. +func (s *Theme) SetType(v string) *Theme { + s.Type = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *Theme) SetVersion(v *ThemeVersion) *Theme { + s.Version = v + return s +} + +// An alias for a theme. +type ThemeAlias struct { _ struct{} `type:"structure"` - // A display name for the dataset. - // - // Name is a required field - Name *string `type:"string" required:"true"` + // The display name of the theme alias. + AliasName *string `min:"1" type:"string"` - // Values. - // - // Values is a required field - Values []*string `type:"list" required:"true"` + // The Amazon Resource Name (ARN) of the theme alias. + Arn *string `type:"string"` + + // The version number of the theme alias. + ThemeVersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s StringParameter) String() string { +func (s ThemeAlias) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s StringParameter) GoString() string { +func (s ThemeAlias) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *StringParameter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "StringParameter"} - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.Values == nil { - invalidParams.Add(request.NewErrParamRequired("Values")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetAliasName sets the AliasName field's value. +func (s *ThemeAlias) SetAliasName(v string) *ThemeAlias { + s.AliasName = &v + return s } -// SetName sets the Name field's value. -func (s *StringParameter) SetName(v string) *StringParameter { - s.Name = &v +// SetArn sets the Arn field's value. +func (s *ThemeAlias) SetArn(v string) *ThemeAlias { + s.Arn = &v return s } -// SetValues sets the Values field's value. -func (s *StringParameter) SetValues(v []*string) *StringParameter { - s.Values = v +// SetThemeVersionNumber sets the ThemeVersionNumber field's value. +func (s *ThemeAlias) SetThemeVersionNumber(v int64) *ThemeAlias { + s.ThemeVersionNumber = &v return s } -// The key or keys of the key-value pairs for the resource tag or tags assigned -// to the resource. -type Tag struct { +// The theme configuration. This configuration contains all of the display properties +// for a theme. +type ThemeConfiguration struct { _ struct{} `type:"structure"` - // Tag key. - // - // Key is a required field - Key *string `min:"1" type:"string" required:"true"` + // Color properties that apply to chart data colors. + DataColorPalette *DataColorPalette `type:"structure"` - // Tag value. - // - // Value is a required field - Value *string `min:"1" type:"string" required:"true"` + // Display options related to sheets. + Sheet *SheetStyle `type:"structure"` + + // Color properties that apply to the UI and to charts, excluding the colors + // that apply to data. + UIColorPalette *UIColorPalette `type:"structure"` } // String returns the string representation -func (s Tag) String() string { +func (s ThemeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Tag) GoString() string { +func (s ThemeConfiguration) 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")) - } - if s.Key != nil && len(*s.Key) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Key", 1)) - } - if s.Value == nil { - invalidParams.Add(request.NewErrParamRequired("Value")) - } - if s.Value != nil && len(*s.Value) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Value", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDataColorPalette sets the DataColorPalette field's value. +func (s *ThemeConfiguration) SetDataColorPalette(v *DataColorPalette) *ThemeConfiguration { + s.DataColorPalette = v + return s } -// SetKey sets the Key field's value. -func (s *Tag) SetKey(v string) *Tag { - s.Key = &v +// SetSheet sets the Sheet field's value. +func (s *ThemeConfiguration) SetSheet(v *SheetStyle) *ThemeConfiguration { + s.Sheet = v return s } -// SetValue sets the Value field's value. -func (s *Tag) SetValue(v string) *Tag { - s.Value = &v +// SetUIColorPalette sets the UIColorPalette field's value. +func (s *ThemeConfiguration) SetUIColorPalette(v *UIColorPalette) *ThemeConfiguration { + s.UIColorPalette = v return s } -// A transform operation that tags a column with additional information. -type TagColumnOperation struct { +// Theme error. +type ThemeError 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 error message. + Message *string `type:"string"` - // The dataset column tag, currently only used for geospatial type tagging. . - // - // This is not tags for the AWS tagging feature. . - // - // Tags is a required field - Tags []*ColumnTag `min:"1" type:"list" required:"true"` + // The type of error. + Type *string `type:"string" enum:"ThemeErrorType"` } // String returns the string representation -func (s TagColumnOperation) String() string { +func (s ThemeError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagColumnOperation) GoString() string { +func (s ThemeError) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *TagColumnOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TagColumnOperation"} - 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.Tags == nil { - invalidParams.Add(request.NewErrParamRequired("Tags")) - } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetColumnName sets the ColumnName field's value. -func (s *TagColumnOperation) SetColumnName(v string) *TagColumnOperation { - s.ColumnName = &v +// SetMessage sets the Message field's value. +func (s *ThemeError) SetMessage(v string) *ThemeError { + s.Message = &v return s } -// SetTags sets the Tags field's value. -func (s *TagColumnOperation) SetTags(v []*ColumnTag) *TagColumnOperation { - s.Tags = v +// SetType sets the Type field's value. +func (s *ThemeError) SetType(v string) *ThemeError { + s.Type = &v return s } -type TagResourceInput struct { +// The theme summary. +type ThemeSummary struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource that you want to tag. - // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` - // Contains a map of the key-value pairs for the resource tag or tags assigned - // to the resource. - // - // Tags is a required field - Tags []*Tag `min:"1" type:"list" required:"true"` + // The date and time that this theme was created. + CreatedTime *time.Time `type:"timestamp"` + + // The last date and time that this theme was updated. + LastUpdatedTime *time.Time `type:"timestamp"` + + // The latest version number for the theme. + LatestVersionNumber *int64 `min:"1" type:"long"` + + // the display name for the theme. + Name *string `min:"1" type:"string"` + + // The ID of the theme. This ID is unique per AWS Region for each AWS account. + ThemeId *string `min:"1" type:"string"` } // String returns the string representation -func (s TagResourceInput) String() string { +func (s ThemeSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagResourceInput) GoString() string { +func (s ThemeSummary) 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")) - } - if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) - } - 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)) - } - } - } +// SetArn sets the Arn field's value. +func (s *ThemeSummary) SetArn(v string) *ThemeSummary { + s.Arn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreatedTime sets the CreatedTime field's value. +func (s *ThemeSummary) SetCreatedTime(v time.Time) *ThemeSummary { + s.CreatedTime = &v + return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { - s.ResourceArn = &v +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *ThemeSummary) SetLastUpdatedTime(v time.Time) *ThemeSummary { + s.LastUpdatedTime = &v return s } -// SetTags sets the Tags field's value. -func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { - s.Tags = v +// SetLatestVersionNumber sets the LatestVersionNumber field's value. +func (s *ThemeSummary) SetLatestVersionNumber(v int64) *ThemeSummary { + s.LatestVersionNumber = &v return s } -type TagResourceOutput struct { +// SetName sets the Name field's value. +func (s *ThemeSummary) SetName(v string) *ThemeSummary { + s.Name = &v + return s +} + +// SetThemeId sets the ThemeId field's value. +func (s *ThemeSummary) SetThemeId(v string) *ThemeSummary { + s.ThemeId = &v + return s +} + +// A version of a theme. +type ThemeVersion struct { _ struct{} `type:"structure"` - // The AWS request ID for this operation. - RequestId *string `type:"string"` + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` - // The HTTP status of the request. - Status *int64 `location:"statusCode" type:"integer"` + // The Amazon QuickSight-defined ID of the theme that a custom theme inherits + // from. All themes initially inherit from a default QuickSight theme. + BaseThemeId *string `min:"1" type:"string"` + + // The theme configuration, which contains all the theme display properties. + Configuration *ThemeConfiguration `type:"structure"` + + // The date and time that this theme version was created. + CreatedTime *time.Time `type:"timestamp"` + + // The description of the theme. + Description *string `min:"1" type:"string"` + + // Errors associated with the theme. + Errors []*ThemeError `min:"1" type:"list"` + + // The status of the theme version. + Status *string `type:"string" enum:"ResourceStatus"` + + // The version number of the theme. + VersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s TagResourceOutput) String() string { +func (s ThemeVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagResourceOutput) GoString() string { +func (s ThemeVersion) GoString() string { return s.String() } -// SetRequestId sets the RequestId field's value. -func (s *TagResourceOutput) SetRequestId(v string) *TagResourceOutput { - s.RequestId = &v +// SetArn sets the Arn field's value. +func (s *ThemeVersion) SetArn(v string) *ThemeVersion { + s.Arn = &v return s } -// SetStatus sets the Status field's value. -func (s *TagResourceOutput) SetStatus(v int64) *TagResourceOutput { - s.Status = &v +// SetBaseThemeId sets the BaseThemeId field's value. +func (s *ThemeVersion) SetBaseThemeId(v string) *ThemeVersion { + s.BaseThemeId = &v return s } -// 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 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. -// -// You can share templates across AWS accounts by allowing users in other AWS -// accounts to create a template or a dashboard from an existing template. -type Template struct { +// SetConfiguration sets the Configuration field's value. +func (s *ThemeVersion) SetConfiguration(v *ThemeConfiguration) *ThemeVersion { + s.Configuration = v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ThemeVersion) SetCreatedTime(v time.Time) *ThemeVersion { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ThemeVersion) SetDescription(v string) *ThemeVersion { + s.Description = &v + return s +} + +// SetErrors sets the Errors field's value. +func (s *ThemeVersion) SetErrors(v []*ThemeError) *ThemeVersion { + s.Errors = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ThemeVersion) SetStatus(v string) *ThemeVersion { + s.Status = &v + return s +} + +// SetVersionNumber sets the VersionNumber field's value. +func (s *ThemeVersion) SetVersionNumber(v int64) *ThemeVersion { + s.VersionNumber = &v + return s +} + +// The theme version. +type ThemeVersionSummary struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the template. + // The Amazon Resource Name (ARN) of the theme version. Arn *string `type:"string"` - // Time when this was created. + // The date and time that this theme version was created. CreatedTime *time.Time `type:"timestamp"` - // Time when this was last updated. - LastUpdatedTime *time.Time `type:"timestamp"` - - // The display name of the template. - Name *string `min:"1" type:"string"` + // The description of the theme version. + Description *string `min:"1" type:"string"` - // The ID for the template. This is unique per AWS Region for each AWS account. - TemplateId *string `min:"1" type:"string"` + // The status of the theme version. + Status *string `type:"string" enum:"ResourceStatus"` - // A structure describing the versions of the template. - Version *TemplateVersion `type:"structure"` + // The version number of the theme version. + VersionNumber *int64 `min:"1" type:"long"` } // String returns the string representation -func (s Template) String() string { +func (s ThemeVersionSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Template) GoString() string { +func (s ThemeVersionSummary) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *Template) SetArn(v string) *Template { +func (s *ThemeVersionSummary) SetArn(v string) *ThemeVersionSummary { s.Arn = &v return s } // SetCreatedTime sets the CreatedTime field's value. -func (s *Template) SetCreatedTime(v time.Time) *Template { +func (s *ThemeVersionSummary) SetCreatedTime(v time.Time) *ThemeVersionSummary { s.CreatedTime = &v return s } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *Template) SetLastUpdatedTime(v time.Time) *Template { - s.LastUpdatedTime = &v - return s -} - -// SetName sets the Name field's value. -func (s *Template) SetName(v string) *Template { - s.Name = &v +// SetDescription sets the Description field's value. +func (s *ThemeVersionSummary) SetDescription(v string) *ThemeVersionSummary { + s.Description = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *Template) SetTemplateId(v string) *Template { - s.TemplateId = &v +// SetStatus sets the Status field's value. +func (s *ThemeVersionSummary) SetStatus(v string) *ThemeVersionSummary { + s.Status = &v return s } -// SetVersion sets the Version field's value. -func (s *Template) SetVersion(v *TemplateVersion) *Template { - s.Version = v +// SetVersionNumber sets the VersionNumber field's value. +func (s *ThemeVersionSummary) SetVersionNumber(v int64) *ThemeVersionSummary { + s.VersionNumber = &v return s } -// The template alias. -type TemplateAlias struct { - _ struct{} `type:"structure"` - - // The display name of the template alias. - AliasName *string `min:"1" type:"string"` +// Access is throttled. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The Amazon Resource Name (ARN) of the template alias. - Arn *string `type:"string"` + Message_ *string `locationName:"Message" type:"string"` - // The version number of the template alias. - TemplateVersionNumber *int64 `min:"1" type:"long"` + // The AWS request ID for this request. + RequestId *string `type:"string"` } // String returns the string representation -func (s TemplateAlias) String() string { +func (s ThrottlingException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateAlias) GoString() string { +func (s ThrottlingException) GoString() string { return s.String() } -// SetAliasName sets the AliasName field's value. -func (s *TemplateAlias) SetAliasName(v string) *TemplateAlias { - s.AliasName = &v - return s +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } } -// SetArn sets the Arn field's value. -func (s *TemplateAlias) SetArn(v string) *TemplateAlias { - s.Arn = &v - return s +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" } -// SetTemplateVersionNumber sets the TemplateVersionNumber field's value. -func (s *TemplateAlias) SetTemplateVersionNumber(v int64) *TemplateAlias { - s.TemplateVersionNumber = &v - return s +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// List of errors that occurred when the template version creation failed. -type TemplateError struct { +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) 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 *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The display options for the layout of tiles on a sheet. +type TileLayoutStyle struct { _ struct{} `type:"structure"` - // Description of the error type. - Message *string `type:"string"` + // The gutter settings that apply between tiles. + Gutter *GutterStyle `type:"structure"` - // Type of error. - Type *string `type:"string" enum:"TemplateErrorType"` + // The margin settings that apply around the outside edge of sheets. + Margin *MarginStyle `type:"structure"` } // String returns the string representation -func (s TemplateError) String() string { +func (s TileLayoutStyle) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateError) GoString() string { +func (s TileLayoutStyle) GoString() string { return s.String() } -// SetMessage sets the Message field's value. -func (s *TemplateError) SetMessage(v string) *TemplateError { - s.Message = &v +// SetGutter sets the Gutter field's value. +func (s *TileLayoutStyle) SetGutter(v *GutterStyle) *TileLayoutStyle { + s.Gutter = v return s } -// SetType sets the Type field's value. -func (s *TemplateError) SetType(v string) *TemplateError { - s.Type = &v +// SetMargin sets the Margin field's value. +func (s *TileLayoutStyle) SetMargin(v *MarginStyle) *TileLayoutStyle { + s.Margin = v return s } -// The source analysis of the template. -type TemplateSourceAnalysis struct { +// Display options related to tiles on a sheet. +type TileStyle struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. - // - // Arn is a required field - Arn *string `type:"string" required:"true"` + // The border around a tile. + Border *BorderStyle `type:"structure"` +} - // A structure containing information about the dataset references used as placeholders - // in the template. - // - // DataSetReferences is a required field - DataSetReferences []*DataSetReference `min:"1" type:"list" required:"true"` +// String returns the string representation +func (s TileStyle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TileStyle) GoString() string { + return s.String() +} + +// SetBorder sets the Border field's value. +func (s *TileStyle) SetBorder(v *BorderStyle) *TileStyle { + s.Border = v + return s +} + +// A data transformation on a logical table. This is a variant type structure. +// For this structure to be valid, only one of the attributes can be non-null. +type TransformOperation struct { + _ struct{} `type:"structure"` + + // A transform operation that casts a column to a different type. + CastColumnTypeOperation *CastColumnTypeOperation `type:"structure"` + + // An operation that creates calculated columns. Columns created in one such + // operation form a lexical closure. + CreateColumnsOperation *CreateColumnsOperation `type:"structure"` + + // An operation that filters rows based on some condition. + FilterOperation *FilterOperation `type:"structure"` + + // An operation that projects columns. Operations that come after a projection + // can only refer to projected columns. + ProjectOperation *ProjectOperation `type:"structure"` + + // An operation that renames a column. + RenameColumnOperation *RenameColumnOperation `type:"structure"` + + // An operation that tags a column with additional information. + TagColumnOperation *TagColumnOperation `type:"structure"` } // String returns the string representation -func (s TemplateSourceAnalysis) String() string { +func (s TransformOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateSourceAnalysis) GoString() string { +func (s TransformOperation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TemplateSourceAnalysis) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TemplateSourceAnalysis"} - if s.Arn == nil { - invalidParams.Add(request.NewErrParamRequired("Arn")) +func (s *TransformOperation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TransformOperation"} + if s.CastColumnTypeOperation != nil { + if err := s.CastColumnTypeOperation.Validate(); err != nil { + invalidParams.AddNested("CastColumnTypeOperation", err.(request.ErrInvalidParams)) + } } - if s.DataSetReferences == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetReferences")) + if s.CreateColumnsOperation != nil { + if err := s.CreateColumnsOperation.Validate(); err != nil { + invalidParams.AddNested("CreateColumnsOperation", err.(request.ErrInvalidParams)) + } } - if s.DataSetReferences != nil && len(s.DataSetReferences) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetReferences", 1)) + if s.FilterOperation != nil { + if err := s.FilterOperation.Validate(); err != nil { + invalidParams.AddNested("FilterOperation", err.(request.ErrInvalidParams)) + } } - if s.DataSetReferences != nil { - for i, v := range s.DataSetReferences { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DataSetReferences", i), err.(request.ErrInvalidParams)) - } + if s.ProjectOperation != nil { + if err := s.ProjectOperation.Validate(); err != nil { + invalidParams.AddNested("ProjectOperation", err.(request.ErrInvalidParams)) + } + } + if s.RenameColumnOperation != nil { + if err := s.RenameColumnOperation.Validate(); err != nil { + invalidParams.AddNested("RenameColumnOperation", err.(request.ErrInvalidParams)) + } + } + if s.TagColumnOperation != nil { + if err := s.TagColumnOperation.Validate(); err != nil { + invalidParams.AddNested("TagColumnOperation", err.(request.ErrInvalidParams)) } } @@ -20213,51 +24123,81 @@ func (s *TemplateSourceAnalysis) Validate() error { return nil } -// SetArn sets the Arn field's value. -func (s *TemplateSourceAnalysis) SetArn(v string) *TemplateSourceAnalysis { - s.Arn = &v +// SetCastColumnTypeOperation sets the CastColumnTypeOperation field's value. +func (s *TransformOperation) SetCastColumnTypeOperation(v *CastColumnTypeOperation) *TransformOperation { + s.CastColumnTypeOperation = v return s } -// SetDataSetReferences sets the DataSetReferences field's value. -func (s *TemplateSourceAnalysis) SetDataSetReferences(v []*DataSetReference) *TemplateSourceAnalysis { - s.DataSetReferences = v +// SetCreateColumnsOperation sets the CreateColumnsOperation field's value. +func (s *TransformOperation) SetCreateColumnsOperation(v *CreateColumnsOperation) *TransformOperation { + s.CreateColumnsOperation = v return s } -// The source entity of the template. -type TemplateSourceEntity struct { +// SetFilterOperation sets the FilterOperation field's value. +func (s *TransformOperation) SetFilterOperation(v *FilterOperation) *TransformOperation { + s.FilterOperation = v + return s +} + +// SetProjectOperation sets the ProjectOperation field's value. +func (s *TransformOperation) SetProjectOperation(v *ProjectOperation) *TransformOperation { + s.ProjectOperation = v + return s +} + +// SetRenameColumnOperation sets the RenameColumnOperation field's value. +func (s *TransformOperation) SetRenameColumnOperation(v *RenameColumnOperation) *TransformOperation { + s.RenameColumnOperation = v + return s +} + +// SetTagColumnOperation sets the TagColumnOperation field's value. +func (s *TransformOperation) SetTagColumnOperation(v *TagColumnOperation) *TransformOperation { + s.TagColumnOperation = v + return s +} + +// Twitter parameters. +type TwitterParameters struct { _ struct{} `type:"structure"` - // The source analysis, if it is based on an analysis. - SourceAnalysis *TemplateSourceAnalysis `type:"structure"` + // Maximum number of rows to query Twitter. + // + // MaxRows is a required field + MaxRows *int64 `min:"1" type:"integer" required:"true"` - // The source template, if it is based on an template. - SourceTemplate *TemplateSourceTemplate `type:"structure"` + // Twitter query string. + // + // Query is a required field + Query *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s TemplateSourceEntity) String() string { +func (s TwitterParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateSourceEntity) GoString() string { +func (s TwitterParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TemplateSourceEntity) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TemplateSourceEntity"} - if s.SourceAnalysis != nil { - if err := s.SourceAnalysis.Validate(); err != nil { - invalidParams.AddNested("SourceAnalysis", err.(request.ErrInvalidParams)) - } +func (s *TwitterParameters) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TwitterParameters"} + if s.MaxRows == nil { + invalidParams.Add(request.NewErrParamRequired("MaxRows")) } - if s.SourceTemplate != nil { - if err := s.SourceTemplate.Validate(); err != nil { - invalidParams.AddNested("SourceTemplate", err.(request.ErrInvalidParams)) - } + if s.MaxRows != nil && *s.MaxRows < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxRows", 1)) + } + if s.Query == nil { + invalidParams.Add(request.NewErrParamRequired("Query")) + } + if s.Query != nil && len(*s.Query) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Query", 1)) } if invalidParams.Len() > 0 { @@ -20266,317 +24206,454 @@ func (s *TemplateSourceEntity) Validate() error { return nil } -// SetSourceAnalysis sets the SourceAnalysis field's value. -func (s *TemplateSourceEntity) SetSourceAnalysis(v *TemplateSourceAnalysis) *TemplateSourceEntity { - s.SourceAnalysis = v +// SetMaxRows sets the MaxRows field's value. +func (s *TwitterParameters) SetMaxRows(v int64) *TwitterParameters { + s.MaxRows = &v return s } -// SetSourceTemplate sets the SourceTemplate field's value. -func (s *TemplateSourceEntity) SetSourceTemplate(v *TemplateSourceTemplate) *TemplateSourceEntity { - s.SourceTemplate = v +// SetQuery sets the Query field's value. +func (s *TwitterParameters) SetQuery(v string) *TwitterParameters { + s.Query = &v return s } -// The source template of the template. -type TemplateSourceTemplate struct { +// The theme colors that apply to UI and to charts, excluding data colors. The +// colors description is a hexidecimal color code that consists of six alphanumerical +// characters, prefixed with #, for example #37BFF5. For more information, see +// Using Themes in Amazon QuickSight (https://docs.aws.amazon.com/quicksight/latest/user/themes-in-quicksight.html) +// in the Amazon QuickSight User Guide. +type UIColorPalette struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. - // - // Arn is a required field - Arn *string `type:"string" required:"true"` -} + // This color is that applies to selected states and buttons. + Accent *string `type:"string"` -// String returns the string representation -func (s TemplateSourceTemplate) String() string { - return awsutil.Prettify(s) -} + // The foreground color that applies to any text or other elements that appear + // over the accent color. + AccentForeground *string `type:"string"` -// GoString returns the string representation -func (s TemplateSourceTemplate) GoString() string { - return s.String() -} + // The color that applies to error messages. + Danger *string `type:"string"` -// Validate inspects the fields of the type to determine if they are valid. -func (s *TemplateSourceTemplate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TemplateSourceTemplate"} - if s.Arn == nil { - invalidParams.Add(request.NewErrParamRequired("Arn")) - } + // The foreground color that applies to any text or other elements that appear + // over the error color. + DangerForeground *string `type:"string"` - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} + // The color that applies to the names of fields that are identified as dimensions. + Dimension *string `type:"string"` -// SetArn sets the Arn field's value. -func (s *TemplateSourceTemplate) SetArn(v string) *TemplateSourceTemplate { - s.Arn = &v - return s -} + // The foreground color that applies to any text or other elements that appear + // over the dimension color. + DimensionForeground *string `type:"string"` -// The template summary. -type TemplateSummary struct { - _ struct{} `type:"structure"` + // The color that applies to the names of fields that are identified as measures. + Measure *string `type:"string"` - // A summary of a template. - Arn *string `type:"string"` + // The foreground color that applies to any text or other elements that appear + // over the measure color. + MeasureForeground *string `type:"string"` - // The last time that this template was created. - CreatedTime *time.Time `type:"timestamp"` + // The background color that applies to visuals and other high emphasis UI. + PrimaryBackground *string `type:"string"` - // The last time that this template was updated. - LastUpdatedTime *time.Time `type:"timestamp"` + // The color of text and other foreground elements that appear over the primary + // background regions, such as grid lines, borders, table banding, icons, and + // so on. + PrimaryForeground *string `type:"string"` - // A structure containing a list of version numbers for the template summary. - LatestVersionNumber *int64 `min:"1" type:"long"` + // The background color that applies to the sheet background and sheet controls. + SecondaryBackground *string `type:"string"` - // A display name for the template. - Name *string `min:"1" type:"string"` + // The foreground color that applies to any sheet title, sheet control text, + // or UI that appears over the secondary background. + SecondaryForeground *string `type:"string"` - // The ID of the template. This ID is unique per AWS Region for each AWS account. - TemplateId *string `min:"1" type:"string"` + // The color that applies to success messages, for example the check mark for + // a successful download. + Success *string `type:"string"` + + // The foreground color that applies to any text or other elements that appear + // over the success color. + SuccessForeground *string `type:"string"` + + // This color that applies to warning and informational messages. + Warning *string `type:"string"` + + // The foreground color that applies to any text or other elements that appear + // over the warning color. + WarningForeground *string `type:"string"` } // String returns the string representation -func (s TemplateSummary) String() string { +func (s UIColorPalette) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateSummary) GoString() string { +func (s UIColorPalette) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *TemplateSummary) SetArn(v string) *TemplateSummary { - s.Arn = &v +// SetAccent sets the Accent field's value. +func (s *UIColorPalette) SetAccent(v string) *UIColorPalette { + s.Accent = &v return s } -// SetCreatedTime sets the CreatedTime field's value. -func (s *TemplateSummary) SetCreatedTime(v time.Time) *TemplateSummary { - s.CreatedTime = &v +// SetAccentForeground sets the AccentForeground field's value. +func (s *UIColorPalette) SetAccentForeground(v string) *UIColorPalette { + s.AccentForeground = &v return s } -// SetLastUpdatedTime sets the LastUpdatedTime field's value. -func (s *TemplateSummary) SetLastUpdatedTime(v time.Time) *TemplateSummary { - s.LastUpdatedTime = &v +// SetDanger sets the Danger field's value. +func (s *UIColorPalette) SetDanger(v string) *UIColorPalette { + s.Danger = &v return s } -// SetLatestVersionNumber sets the LatestVersionNumber field's value. -func (s *TemplateSummary) SetLatestVersionNumber(v int64) *TemplateSummary { - s.LatestVersionNumber = &v +// SetDangerForeground sets the DangerForeground field's value. +func (s *UIColorPalette) SetDangerForeground(v string) *UIColorPalette { + s.DangerForeground = &v return s } -// SetName sets the Name field's value. -func (s *TemplateSummary) SetName(v string) *TemplateSummary { - s.Name = &v +// SetDimension sets the Dimension field's value. +func (s *UIColorPalette) SetDimension(v string) *UIColorPalette { + s.Dimension = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *TemplateSummary) SetTemplateId(v string) *TemplateSummary { - s.TemplateId = &v +// SetDimensionForeground sets the DimensionForeground field's value. +func (s *UIColorPalette) SetDimensionForeground(v string) *UIColorPalette { + s.DimensionForeground = &v return s } -// A version of a template. -type TemplateVersion struct { - _ struct{} `type:"structure"` +// SetMeasure sets the Measure field's value. +func (s *UIColorPalette) SetMeasure(v string) *UIColorPalette { + s.Measure = &v + return s +} - // The time that this template version was created. - CreatedTime *time.Time `type:"timestamp"` +// SetMeasureForeground sets the MeasureForeground field's value. +func (s *UIColorPalette) SetMeasureForeground(v string) *UIColorPalette { + s.MeasureForeground = &v + return s +} - // Schema of the dataset identified by the placeholder. The idea is that any - // dashboard created from the template should be bound to new datasets matching - // the same schema described through this API. . - DataSetConfigurations []*DataSetConfiguration `type:"list"` +// SetPrimaryBackground sets the PrimaryBackground field's value. +func (s *UIColorPalette) SetPrimaryBackground(v string) *UIColorPalette { + s.PrimaryBackground = &v + return s +} - // The description of the template. - Description *string `min:"1" type:"string"` +// SetPrimaryForeground sets the PrimaryForeground field's value. +func (s *UIColorPalette) SetPrimaryForeground(v string) *UIColorPalette { + s.PrimaryForeground = &v + return s +} - // Errors associated with the template. - Errors []*TemplateError `min:"1" type:"list"` +// SetSecondaryBackground sets the SecondaryBackground field's value. +func (s *UIColorPalette) SetSecondaryBackground(v string) *UIColorPalette { + s.SecondaryBackground = &v + return s +} - // The Amazon Resource Name (ARN) of the analysis or template which was used - // to create this template. - SourceEntityArn *string `type:"string"` +// SetSecondaryForeground sets the SecondaryForeground field's value. +func (s *UIColorPalette) SetSecondaryForeground(v string) *UIColorPalette { + s.SecondaryForeground = &v + return s +} - // The HTTP status of the request. - Status *string `type:"string" enum:"ResourceStatus"` +// SetSuccess sets the Success field's value. +func (s *UIColorPalette) SetSuccess(v string) *UIColorPalette { + s.Success = &v + return s +} - // The version number of the template. - VersionNumber *int64 `min:"1" type:"long"` +// SetSuccessForeground sets the SuccessForeground field's value. +func (s *UIColorPalette) SetSuccessForeground(v string) *UIColorPalette { + s.SuccessForeground = &v + return s +} + +// SetWarning sets the Warning field's value. +func (s *UIColorPalette) SetWarning(v string) *UIColorPalette { + s.Warning = &v + return s +} + +// SetWarningForeground sets the WarningForeground field's value. +func (s *UIColorPalette) SetWarningForeground(v string) *UIColorPalette { + s.WarningForeground = &v + return s +} + +// 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. +type UnsupportedUserEditionException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` + + // The AWS request ID for this request. + RequestId *string `type:"string"` } // String returns the string representation -func (s TemplateVersion) String() string { +func (s UnsupportedUserEditionException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateVersion) GoString() string { +func (s UnsupportedUserEditionException) GoString() string { return s.String() } -// SetCreatedTime sets the CreatedTime field's value. -func (s *TemplateVersion) SetCreatedTime(v time.Time) *TemplateVersion { - s.CreatedTime = &v - return s +func newErrorUnsupportedUserEditionException(v protocol.ResponseMetadata) error { + return &UnsupportedUserEditionException{ + RespMetadata: v, + } } -// SetDataSetConfigurations sets the DataSetConfigurations field's value. -func (s *TemplateVersion) SetDataSetConfigurations(v []*DataSetConfiguration) *TemplateVersion { - s.DataSetConfigurations = v - return s +// Code returns the exception type name. +func (s *UnsupportedUserEditionException) Code() string { + return "UnsupportedUserEditionException" } -// SetDescription sets the Description field's value. -func (s *TemplateVersion) SetDescription(v string) *TemplateVersion { - s.Description = &v - return s +// Message returns the exception's message. +func (s *UnsupportedUserEditionException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetErrors sets the Errors field's value. -func (s *TemplateVersion) SetErrors(v []*TemplateError) *TemplateVersion { - s.Errors = v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnsupportedUserEditionException) OrigErr() error { + return nil +} + +func (s *UnsupportedUserEditionException) 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 *UnsupportedUserEditionException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *UnsupportedUserEditionException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that you want to untag. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` + + // The keys of the key-value pairs for the resource tag or tags assigned to + // the resource. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"keys" min:"1" type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceInput) GoString() string { + return s.String() } -// SetSourceEntityArn sets the SourceEntityArn field's value. -func (s *TemplateVersion) SetSourceEntityArn(v string) *TemplateVersion { - s.SourceEntityArn = &v - return s +// 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")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStatus sets the Status field's value. -func (s *TemplateVersion) SetStatus(v string) *TemplateVersion { - s.Status = &v +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *TemplateVersion) SetVersionNumber(v int64) *TemplateVersion { - s.VersionNumber = &v +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v return s } -// The template version. -type TemplateVersionSummary struct { +type UntagResourceOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the template version. - Arn *string `type:"string"` - - // The time that this template version was created. - CreatedTime *time.Time `type:"timestamp"` - - // The description of the template version. - Description *string `min:"1" type:"string"` - - // The status of the template version. - Status *string `type:"string" enum:"ResourceStatus"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // The version number of the template version. - VersionNumber *int64 `min:"1" type:"long"` + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s TemplateVersionSummary) String() string { +func (s UntagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TemplateVersionSummary) GoString() string { +func (s UntagResourceOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *TemplateVersionSummary) SetArn(v string) *TemplateVersionSummary { - s.Arn = &v - return s -} - -// SetCreatedTime sets the CreatedTime field's value. -func (s *TemplateVersionSummary) SetCreatedTime(v time.Time) *TemplateVersionSummary { - s.CreatedTime = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *TemplateVersionSummary) SetDescription(v string) *TemplateVersionSummary { - s.Description = &v +// SetRequestId sets the RequestId field's value. +func (s *UntagResourceOutput) SetRequestId(v string) *UntagResourceOutput { + s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *TemplateVersionSummary) SetStatus(v string) *TemplateVersionSummary { +func (s *UntagResourceOutput) SetStatus(v int64) *UntagResourceOutput { s.Status = &v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *TemplateVersionSummary) SetVersionNumber(v int64) *TemplateVersionSummary { - s.VersionNumber = &v - return s -} - -// Teradata parameters. -type TeradataParameters struct { +type UpdateDashboardInput struct { _ struct{} `type:"structure"` - // Database. + // The ID of the AWS account that contains the dashboard that you're updating. // - // Database is a required field - Database *string `min:"1" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Host. + // The ID for the dashboard. // - // Host is a required field - Host *string `min:"1" type:"string" required:"true"` + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` - // Port. + // Options for publishing the dashboard when you create it: // - // Port is a required field - Port *int64 `min:"1" type:"integer" required:"true"` + // * 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. + DashboardPublishOptions *DashboardPublishOptions `type:"structure"` + + // The display name of the dashboard. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // A structure that contains the parameters of the dashboard. These are parameter + // overrides for a dashboard. A dashboard can have any type of parameters, and + // some parameters might accept multiple values. + Parameters *Parameters `type:"structure"` + + // 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 AWS Account and any QuickSight-supported + // AWS 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. + // + // SourceEntity is a required field + SourceEntity *DashboardSourceEntity `type:"structure" required:"true"` + + // 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 AWS account + // where you create the dashboard. + ThemeArn *string `type:"string"` + + // A description for the first version of the dashboard being created. + VersionDescription *string `min:"1" type:"string"` } // String returns the string representation -func (s TeradataParameters) String() string { +func (s UpdateDashboardInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TeradataParameters) GoString() string { +func (s UpdateDashboardInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TeradataParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TeradataParameters"} - if s.Database == nil { - invalidParams.Add(request.NewErrParamRequired("Database")) +func (s *UpdateDashboardInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDashboardInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.Database != nil && len(*s.Database) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Database", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Host == nil { - invalidParams.Add(request.NewErrParamRequired("Host")) + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) } - if s.Host != nil && len(*s.Host) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Host", 1)) + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) } - if s.Port == nil { - invalidParams.Add(request.NewErrParamRequired("Port")) + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.Port != nil && *s.Port < 1 { - invalidParams.Add(request.NewErrParamMinValue("Port", 1)) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SourceEntity == nil { + invalidParams.Add(request.NewErrParamRequired("SourceEntity")) + } + if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + } + if s.Parameters != nil { + if err := s.Parameters.Validate(); err != nil { + invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) + } + } + if s.SourceEntity != nil { + if err := s.SourceEntity.Validate(); err != nil { + invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -20585,234 +24662,187 @@ func (s *TeradataParameters) Validate() error { return nil } -// SetDatabase sets the Database field's value. -func (s *TeradataParameters) SetDatabase(v string) *TeradataParameters { - s.Database = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateDashboardInput) SetAwsAccountId(v string) *UpdateDashboardInput { + s.AwsAccountId = &v return s } -// SetHost sets the Host field's value. -func (s *TeradataParameters) SetHost(v string) *TeradataParameters { - s.Host = &v +// SetDashboardId sets the DashboardId field's value. +func (s *UpdateDashboardInput) SetDashboardId(v string) *UpdateDashboardInput { + s.DashboardId = &v return s } -// SetPort sets the Port field's value. -func (s *TeradataParameters) SetPort(v int64) *TeradataParameters { - s.Port = &v +// SetDashboardPublishOptions sets the DashboardPublishOptions field's value. +func (s *UpdateDashboardInput) SetDashboardPublishOptions(v *DashboardPublishOptions) *UpdateDashboardInput { + s.DashboardPublishOptions = v return s } -// Access is throttled. -type ThrottlingException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` - - // The AWS request ID for this request. - RequestId *string `type:"string"` -} - -// String returns the string representation -func (s ThrottlingException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s ThrottlingException) GoString() string { - return s.String() -} - -func newErrorThrottlingException(v protocol.ResponseMetadata) error { - return &ThrottlingException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ThrottlingException) Code() string { - return "ThrottlingException" -} - -// Message returns the exception's message. -func (s *ThrottlingException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ThrottlingException) OrigErr() error { - return nil +// SetName sets the Name field's value. +func (s *UpdateDashboardInput) SetName(v string) *UpdateDashboardInput { + s.Name = &v + return s } -func (s *ThrottlingException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetParameters sets the Parameters field's value. +func (s *UpdateDashboardInput) SetParameters(v *Parameters) *UpdateDashboardInput { + s.Parameters = v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ThrottlingException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetSourceEntity sets the SourceEntity field's value. +func (s *UpdateDashboardInput) SetSourceEntity(v *DashboardSourceEntity) *UpdateDashboardInput { + s.SourceEntity = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ThrottlingException) RequestID() string { - return s.RespMetadata.RequestID +// SetThemeArn sets the ThemeArn field's value. +func (s *UpdateDashboardInput) SetThemeArn(v string) *UpdateDashboardInput { + s.ThemeArn = &v + return s } -// A data transformation on a logical table. This is a variant type structure. -// For this structure to be valid, only one of the attributes can be non-null. -type TransformOperation struct { +// SetVersionDescription sets the VersionDescription field's value. +func (s *UpdateDashboardInput) SetVersionDescription(v string) *UpdateDashboardInput { + s.VersionDescription = &v + return s +} + +type UpdateDashboardOutput struct { _ struct{} `type:"structure"` - // A transform operation that casts a column to a different type. - CastColumnTypeOperation *CastColumnTypeOperation `type:"structure"` + // The Amazon Resource Name (ARN) of the resource. + Arn *string `type:"string"` - // An operation that creates calculated columns. Columns created in one such - // operation form a lexical closure. - CreateColumnsOperation *CreateColumnsOperation `type:"structure"` + // The creation status of the request. + CreationStatus *string `type:"string" enum:"ResourceStatus"` - // An operation that filters rows based on some condition. - FilterOperation *FilterOperation `type:"structure"` + // The ID for the dashboard. + DashboardId *string `min:"1" type:"string"` - // An operation that projects columns. Operations that come after a projection - // can only refer to projected columns. - ProjectOperation *ProjectOperation `type:"structure"` + // The AWS request ID for this operation. + RequestId *string `type:"string"` - // An operation that renames a column. - RenameColumnOperation *RenameColumnOperation `type:"structure"` + // The HTTP status of the request. + Status *int64 `type:"integer"` - // An operation that tags a column with additional information. - TagColumnOperation *TagColumnOperation `type:"structure"` + // The ARN of the dashboard, including the version number. + VersionArn *string `type:"string"` } // String returns the string representation -func (s TransformOperation) String() string { +func (s UpdateDashboardOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TransformOperation) GoString() string { +func (s UpdateDashboardOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *TransformOperation) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TransformOperation"} - if s.CastColumnTypeOperation != nil { - if err := s.CastColumnTypeOperation.Validate(); err != nil { - invalidParams.AddNested("CastColumnTypeOperation", err.(request.ErrInvalidParams)) - } - } - if s.CreateColumnsOperation != nil { - if err := s.CreateColumnsOperation.Validate(); err != nil { - invalidParams.AddNested("CreateColumnsOperation", err.(request.ErrInvalidParams)) - } - } - if s.FilterOperation != nil { - if err := s.FilterOperation.Validate(); err != nil { - invalidParams.AddNested("FilterOperation", err.(request.ErrInvalidParams)) - } - } - if s.ProjectOperation != nil { - if err := s.ProjectOperation.Validate(); err != nil { - invalidParams.AddNested("ProjectOperation", err.(request.ErrInvalidParams)) - } - } - if s.RenameColumnOperation != nil { - if err := s.RenameColumnOperation.Validate(); err != nil { - invalidParams.AddNested("RenameColumnOperation", err.(request.ErrInvalidParams)) - } - } - if s.TagColumnOperation != nil { - if err := s.TagColumnOperation.Validate(); err != nil { - invalidParams.AddNested("TagColumnOperation", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetCastColumnTypeOperation sets the CastColumnTypeOperation field's value. -func (s *TransformOperation) SetCastColumnTypeOperation(v *CastColumnTypeOperation) *TransformOperation { - s.CastColumnTypeOperation = v +// SetArn sets the Arn field's value. +func (s *UpdateDashboardOutput) SetArn(v string) *UpdateDashboardOutput { + s.Arn = &v return s } -// SetCreateColumnsOperation sets the CreateColumnsOperation field's value. -func (s *TransformOperation) SetCreateColumnsOperation(v *CreateColumnsOperation) *TransformOperation { - s.CreateColumnsOperation = v +// SetCreationStatus sets the CreationStatus field's value. +func (s *UpdateDashboardOutput) SetCreationStatus(v string) *UpdateDashboardOutput { + s.CreationStatus = &v return s } -// SetFilterOperation sets the FilterOperation field's value. -func (s *TransformOperation) SetFilterOperation(v *FilterOperation) *TransformOperation { - s.FilterOperation = v +// SetDashboardId sets the DashboardId field's value. +func (s *UpdateDashboardOutput) SetDashboardId(v string) *UpdateDashboardOutput { + s.DashboardId = &v return s } -// SetProjectOperation sets the ProjectOperation field's value. -func (s *TransformOperation) SetProjectOperation(v *ProjectOperation) *TransformOperation { - s.ProjectOperation = v +// SetRequestId sets the RequestId field's value. +func (s *UpdateDashboardOutput) SetRequestId(v string) *UpdateDashboardOutput { + s.RequestId = &v return s } -// SetRenameColumnOperation sets the RenameColumnOperation field's value. -func (s *TransformOperation) SetRenameColumnOperation(v *RenameColumnOperation) *TransformOperation { - s.RenameColumnOperation = v +// SetStatus sets the Status field's value. +func (s *UpdateDashboardOutput) SetStatus(v int64) *UpdateDashboardOutput { + s.Status = &v return s } -// SetTagColumnOperation sets the TagColumnOperation field's value. -func (s *TransformOperation) SetTagColumnOperation(v *TagColumnOperation) *TransformOperation { - s.TagColumnOperation = v +// SetVersionArn sets the VersionArn field's value. +func (s *UpdateDashboardOutput) SetVersionArn(v string) *UpdateDashboardOutput { + s.VersionArn = &v return s } -// Twitter parameters. -type TwitterParameters struct { +type UpdateDashboardPermissionsInput struct { _ struct{} `type:"structure"` - // Maximum number of rows to query Twitter. + // The ID of the AWS account that contains the dashboard whose permissions you're + // updating. // - // MaxRows is a required field - MaxRows *int64 `min:"1" type:"integer" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // Twitter query string. + // The ID for the dashboard. // - // Query is a required field - Query *string `min:"1" type:"string" required:"true"` + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + + // The permissions that you want to grant on this resource. + GrantPermissions []*ResourcePermission `type:"list"` + + // The permissions that you want to revoke from this resource. + RevokePermissions []*ResourcePermission `type:"list"` } // String returns the string representation -func (s TwitterParameters) String() string { +func (s UpdateDashboardPermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TwitterParameters) GoString() string { +func (s UpdateDashboardPermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TwitterParameters) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TwitterParameters"} - if s.MaxRows == nil { - invalidParams.Add(request.NewErrParamRequired("MaxRows")) +func (s *UpdateDashboardPermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDashboardPermissionsInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.MaxRows != nil && *s.MaxRows < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxRows", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Query == nil { - invalidParams.Add(request.NewErrParamRequired("Query")) + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) } - if s.Query != nil && len(*s.Query) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Query", 1)) + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + } + if s.GrantPermissions != nil { + for i, v := range s.GrantPermissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GrantPermissions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.RevokePermissions != nil { + for i, v := range s.RevokePermissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RevokePermissions", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -20821,119 +24851,138 @@ func (s *TwitterParameters) Validate() error { return nil } -// SetMaxRows sets the MaxRows field's value. -func (s *TwitterParameters) SetMaxRows(v int64) *TwitterParameters { - s.MaxRows = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateDashboardPermissionsInput) SetAwsAccountId(v string) *UpdateDashboardPermissionsInput { + s.AwsAccountId = &v return s } -// SetQuery sets the Query field's value. -func (s *TwitterParameters) SetQuery(v string) *TwitterParameters { - s.Query = &v +// SetDashboardId sets the DashboardId field's value. +func (s *UpdateDashboardPermissionsInput) SetDashboardId(v string) *UpdateDashboardPermissionsInput { + s.DashboardId = &v return s } -// 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. -type UnsupportedUserEditionException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` - - // The AWS request ID for this request. - RequestId *string `type:"string"` +// SetGrantPermissions sets the GrantPermissions field's value. +func (s *UpdateDashboardPermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateDashboardPermissionsInput { + s.GrantPermissions = v + return s } -// String returns the string representation -func (s UnsupportedUserEditionException) String() string { - return awsutil.Prettify(s) +// SetRevokePermissions sets the RevokePermissions field's value. +func (s *UpdateDashboardPermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateDashboardPermissionsInput { + s.RevokePermissions = v + return s } -// GoString returns the string representation -func (s UnsupportedUserEditionException) GoString() string { - return s.String() +type UpdateDashboardPermissionsOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the dashboard. + DashboardArn *string `type:"string"` + + // The ID for the dashboard. + DashboardId *string `min:"1" type:"string"` + + // Information about the permissions on the dashboard. + Permissions []*ResourcePermission `min:"1" type:"list"` + + // The AWS request ID for this operation. + RequestId *string `type:"string"` + + // The HTTP status of the request. + Status *int64 `location:"statusCode" type:"integer"` } -func newErrorUnsupportedUserEditionException(v protocol.ResponseMetadata) error { - return &UnsupportedUserEditionException{ - RespMetadata: v, - } +// String returns the string representation +func (s UpdateDashboardPermissionsOutput) String() string { + return awsutil.Prettify(s) } -// Code returns the exception type name. -func (s *UnsupportedUserEditionException) Code() string { - return "UnsupportedUserEditionException" +// GoString returns the string representation +func (s UpdateDashboardPermissionsOutput) GoString() string { + return s.String() } -// Message returns the exception's message. -func (s *UnsupportedUserEditionException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetDashboardArn sets the DashboardArn field's value. +func (s *UpdateDashboardPermissionsOutput) SetDashboardArn(v string) *UpdateDashboardPermissionsOutput { + s.DashboardArn = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *UnsupportedUserEditionException) OrigErr() error { - return nil +// SetDashboardId sets the DashboardId field's value. +func (s *UpdateDashboardPermissionsOutput) SetDashboardId(v string) *UpdateDashboardPermissionsOutput { + s.DashboardId = &v + return s } -func (s *UnsupportedUserEditionException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetPermissions sets the Permissions field's value. +func (s *UpdateDashboardPermissionsOutput) SetPermissions(v []*ResourcePermission) *UpdateDashboardPermissionsOutput { + s.Permissions = v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *UnsupportedUserEditionException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetRequestId sets the RequestId field's value. +func (s *UpdateDashboardPermissionsOutput) SetRequestId(v string) *UpdateDashboardPermissionsOutput { + s.RequestId = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *UnsupportedUserEditionException) RequestID() string { - return s.RespMetadata.RequestID +// SetStatus sets the Status field's value. +func (s *UpdateDashboardPermissionsOutput) SetStatus(v int64) *UpdateDashboardPermissionsOutput { + s.Status = &v + return s } -type UntagResourceInput struct { +type UpdateDashboardPublishedVersionInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource that you want to untag. + // The ID of the AWS account that contains the dashboard that you're updating. // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The keys of the key-value pairs for the resource tag or tags assigned to - // the resource. + // The ID for the dashboard. // - // TagKeys is a required field - TagKeys []*string `location:"querystring" locationName:"keys" min:"1" type:"list" required:"true"` + // DashboardId is a required field + DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + + // The version number of the dashboard. + // + // VersionNumber is a required field + VersionNumber *int64 `location:"uri" locationName:"VersionNumber" min:"1" type:"long" required:"true"` } // String returns the string representation -func (s UntagResourceInput) String() string { +func (s UpdateDashboardPublishedVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UntagResourceInput) GoString() string { +func (s UpdateDashboardPublishedVersionInput) 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 *UpdateDashboardPublishedVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDashboardPublishedVersionInput"} + if s.AwsAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } - if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.TagKeys == nil { - invalidParams.Add(request.NewErrParamRequired("TagKeys")) + if s.DashboardId == nil { + invalidParams.Add(request.NewErrParamRequired("DashboardId")) } - if s.TagKeys != nil && len(s.TagKeys) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + if s.DashboardId != nil && len(*s.DashboardId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + } + if s.VersionNumber == nil { + invalidParams.Add(request.NewErrParamRequired("VersionNumber")) + } + if s.VersionNumber != nil && *s.VersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -20942,21 +24991,33 @@ func (s *UntagResourceInput) Validate() error { return nil } -// SetResourceArn sets the ResourceArn field's value. -func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { - s.ResourceArn = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateDashboardPublishedVersionInput) SetAwsAccountId(v string) *UpdateDashboardPublishedVersionInput { + s.AwsAccountId = &v return s } -// SetTagKeys sets the TagKeys field's value. -func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { - s.TagKeys = v +// SetDashboardId sets the DashboardId field's value. +func (s *UpdateDashboardPublishedVersionInput) SetDashboardId(v string) *UpdateDashboardPublishedVersionInput { + s.DashboardId = &v return s } -type UntagResourceOutput struct { +// SetVersionNumber sets the VersionNumber field's value. +func (s *UpdateDashboardPublishedVersionInput) SetVersionNumber(v int64) *UpdateDashboardPublishedVersionInput { + s.VersionNumber = &v + return s +} + +type UpdateDashboardPublishedVersionOutput struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the dashboard. + DashboardArn *string `type:"string"` + + // The ID for the dashboard. + DashboardId *string `min:"1" type:"string"` + // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -20965,109 +25026,113 @@ type UntagResourceOutput struct { } // String returns the string representation -func (s UntagResourceOutput) String() string { +func (s UpdateDashboardPublishedVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UntagResourceOutput) GoString() string { +func (s UpdateDashboardPublishedVersionOutput) GoString() string { return s.String() } +// SetDashboardArn sets the DashboardArn field's value. +func (s *UpdateDashboardPublishedVersionOutput) SetDashboardArn(v string) *UpdateDashboardPublishedVersionOutput { + s.DashboardArn = &v + return s +} + +// SetDashboardId sets the DashboardId field's value. +func (s *UpdateDashboardPublishedVersionOutput) SetDashboardId(v string) *UpdateDashboardPublishedVersionOutput { + s.DashboardId = &v + return s +} + // SetRequestId sets the RequestId field's value. -func (s *UntagResourceOutput) SetRequestId(v string) *UntagResourceOutput { +func (s *UpdateDashboardPublishedVersionOutput) SetRequestId(v string) *UpdateDashboardPublishedVersionOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UntagResourceOutput) SetStatus(v int64) *UntagResourceOutput { +func (s *UpdateDashboardPublishedVersionOutput) SetStatus(v int64) *UpdateDashboardPublishedVersionOutput { s.Status = &v return s } -type UpdateDashboardInput struct { +type UpdateDataSetInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboard that you're updating. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard. - // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + // Groupings of columns that work together in certain QuickSight features. Currently, + // only geospatial hierarchy is supported. + ColumnGroups []*ColumnGroup `min:"1" type:"list"` - // 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. + // The ID for the dataset that you want to update. This ID is unique per AWS + // Region for each AWS account. // - // * 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. + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + + // Indicates whether you want to import the data into SPICE. // - // * VisibilityState for SheetControlsOption - This visibility state can - // be either COLLAPSED or EXPANDED. This option is COLLAPSED by default. - DashboardPublishOptions *DashboardPublishOptions `type:"structure"` + // ImportMode is a required field + ImportMode *string `type:"string" required:"true" enum:"DataSetImportMode"` - // The display name of the dashboard. + // Configures the combination and transformation of the data from the physical + // tables. + LogicalTableMap map[string]*LogicalTable `min:"1" type:"map"` + + // The display name for the dataset. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // A structure that contains the parameters of the dashboard. These are parameter - // overrides for a dashboard. A dashboard can have any type of parameters, and - // some parameters might accept multiple values. - Parameters *Parameters `type:"structure"` - - // 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 AWS Account and any QuickSight-supported - // AWS 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. + // Declares the physical tables that are available in the underlying data sources. // - // SourceEntity is a required field - SourceEntity *DashboardSourceEntity `type:"structure" required:"true"` + // PhysicalTableMap is a required field + PhysicalTableMap map[string]*PhysicalTable `min:"1" type:"map" required:"true"` - // A description for the first version of the dashboard being created. - VersionDescription *string `min:"1" type:"string"` + // The row-level security configuration for the data you want to create. + RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` } // String returns the string representation -func (s UpdateDashboardInput) String() string { +func (s UpdateDataSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDashboardInput) GoString() string { +func (s UpdateDataSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDashboardInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDashboardInput"} +func (s *UpdateDataSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSetInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) + if s.ColumnGroups != nil && len(s.ColumnGroups) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ColumnGroups", 1)) } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + } + if s.ImportMode == nil { + invalidParams.Add(request.NewErrParamRequired("ImportMode")) + } + if s.LogicalTableMap != nil && len(s.LogicalTableMap) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogicalTableMap", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) @@ -21075,20 +25140,45 @@ func (s *UpdateDashboardInput) Validate() error { if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.SourceEntity == nil { - invalidParams.Add(request.NewErrParamRequired("SourceEntity")) + if s.PhysicalTableMap == nil { + invalidParams.Add(request.NewErrParamRequired("PhysicalTableMap")) } - if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { - invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + 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 { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ColumnGroups", i), err.(request.ErrInvalidParams)) + } + } + } + if s.LogicalTableMap != nil { + for i, v := range s.LogicalTableMap { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogicalTableMap", i), err.(request.ErrInvalidParams)) + } + } } - if s.Parameters != nil { - if err := s.Parameters.Validate(); err != nil { - invalidParams.AddNested("Parameters", err.(request.ErrInvalidParams)) + if s.PhysicalTableMap != nil { + for i, v := range s.PhysicalTableMap { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PhysicalTableMap", i), err.(request.ErrInvalidParams)) + } } } - if s.SourceEntity != nil { - if err := s.SourceEntity.Validate(); err != nil { - invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) + if s.RowLevelPermissionDataSet != nil { + if err := s.RowLevelPermissionDataSet.Validate(); err != nil { + invalidParams.AddNested("RowLevelPermissionDataSet", err.(request.ErrInvalidParams)) } } @@ -21099,160 +25189,169 @@ func (s *UpdateDashboardInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDashboardInput) SetAwsAccountId(v string) *UpdateDashboardInput { +func (s *UpdateDataSetInput) SetAwsAccountId(v string) *UpdateDataSetInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *UpdateDashboardInput) SetDashboardId(v string) *UpdateDashboardInput { - s.DashboardId = &v +// SetColumnGroups sets the ColumnGroups field's value. +func (s *UpdateDataSetInput) SetColumnGroups(v []*ColumnGroup) *UpdateDataSetInput { + s.ColumnGroups = v return s } -// SetDashboardPublishOptions sets the DashboardPublishOptions field's value. -func (s *UpdateDashboardInput) SetDashboardPublishOptions(v *DashboardPublishOptions) *UpdateDashboardInput { - s.DashboardPublishOptions = v +// SetDataSetId sets the DataSetId field's value. +func (s *UpdateDataSetInput) SetDataSetId(v string) *UpdateDataSetInput { + s.DataSetId = &v return s } -// SetName sets the Name field's value. -func (s *UpdateDashboardInput) SetName(v string) *UpdateDashboardInput { - s.Name = &v +// SetImportMode sets the ImportMode field's value. +func (s *UpdateDataSetInput) SetImportMode(v string) *UpdateDataSetInput { + s.ImportMode = &v return s } -// SetParameters sets the Parameters field's value. -func (s *UpdateDashboardInput) SetParameters(v *Parameters) *UpdateDashboardInput { - s.Parameters = v +// SetLogicalTableMap sets the LogicalTableMap field's value. +func (s *UpdateDataSetInput) SetLogicalTableMap(v map[string]*LogicalTable) *UpdateDataSetInput { + s.LogicalTableMap = v return s } -// SetSourceEntity sets the SourceEntity field's value. -func (s *UpdateDashboardInput) SetSourceEntity(v *DashboardSourceEntity) *UpdateDashboardInput { - s.SourceEntity = v +// SetName sets the Name field's value. +func (s *UpdateDataSetInput) SetName(v string) *UpdateDataSetInput { + s.Name = &v return s } -// SetVersionDescription sets the VersionDescription field's value. -func (s *UpdateDashboardInput) SetVersionDescription(v string) *UpdateDashboardInput { - s.VersionDescription = &v +// SetPhysicalTableMap sets the PhysicalTableMap field's value. +func (s *UpdateDataSetInput) SetPhysicalTableMap(v map[string]*PhysicalTable) *UpdateDataSetInput { + s.PhysicalTableMap = v return s } -type UpdateDashboardOutput struct { +// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. +func (s *UpdateDataSetInput) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *UpdateDataSetInput { + s.RowLevelPermissionDataSet = v + return s +} + +type UpdateDataSetOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource. + // The Amazon Resource Name (ARN) of the dataset. Arn *string `type:"string"` - // The creation status of the request. - CreationStatus *string `type:"string" enum:"ResourceStatus"` + // The ID for the dataset that you want to create. This ID is unique per AWS + // Region for each AWS account. + DataSetId *string `type:"string"` - // The ID for the dashboard. - DashboardId *string `min:"1" type:"string"` + // The ARN for the ingestion, which is triggered as a result of dataset creation + // if the import mode is SPICE. + IngestionArn *string `type:"string"` + + // The ID of the ingestion, which is triggered as a result of dataset creation + // if the import mode is SPICE. + IngestionId *string `type:"string"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. - Status *int64 `type:"integer"` - - // The ARN of the dashboard, including the version number. - VersionArn *string `type:"string"` + Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation -func (s UpdateDashboardOutput) String() string { +func (s UpdateDataSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDashboardOutput) GoString() string { +func (s UpdateDataSetOutput) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *UpdateDashboardOutput) SetArn(v string) *UpdateDashboardOutput { +func (s *UpdateDataSetOutput) SetArn(v string) *UpdateDataSetOutput { s.Arn = &v return s } -// SetCreationStatus sets the CreationStatus field's value. -func (s *UpdateDashboardOutput) SetCreationStatus(v string) *UpdateDashboardOutput { - s.CreationStatus = &v +// SetDataSetId sets the DataSetId field's value. +func (s *UpdateDataSetOutput) SetDataSetId(v string) *UpdateDataSetOutput { + s.DataSetId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *UpdateDashboardOutput) SetDashboardId(v string) *UpdateDashboardOutput { - s.DashboardId = &v +// SetIngestionArn sets the IngestionArn field's value. +func (s *UpdateDataSetOutput) SetIngestionArn(v string) *UpdateDataSetOutput { + s.IngestionArn = &v + return s +} + +// SetIngestionId sets the IngestionId field's value. +func (s *UpdateDataSetOutput) SetIngestionId(v string) *UpdateDataSetOutput { + s.IngestionId = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateDashboardOutput) SetRequestId(v string) *UpdateDashboardOutput { +func (s *UpdateDataSetOutput) SetRequestId(v string) *UpdateDataSetOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateDashboardOutput) SetStatus(v int64) *UpdateDashboardOutput { +func (s *UpdateDataSetOutput) SetStatus(v int64) *UpdateDataSetOutput { s.Status = &v return s } -// SetVersionArn sets the VersionArn field's value. -func (s *UpdateDashboardOutput) SetVersionArn(v string) *UpdateDashboardOutput { - s.VersionArn = &v - return s -} - -type UpdateDashboardPermissionsInput struct { +type UpdateDataSetPermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboard whose permissions you're - // updating. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard. + // The ID for the dataset whose permissions you want to update. This ID is unique + // per AWS Region for each AWS account. // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + // DataSetId is a required field + DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` - // The permissions that you want to grant on this resource. + // The resource permissions that you want to grant to the dataset. GrantPermissions []*ResourcePermission `min:"1" type:"list"` - // The permissions that you want to revoke from this resource. + // The resource permissions that you want to revoke from the dataset. RevokePermissions []*ResourcePermission `min:"1" type:"list"` } // String returns the string representation -func (s UpdateDashboardPermissionsInput) String() string { +func (s UpdateDataSetPermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDashboardPermissionsInput) GoString() string { +func (s UpdateDataSetPermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDashboardPermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDashboardPermissionsInput"} +func (s *UpdateDataSetPermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSetPermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) } - if s.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.DataSetId != nil && len(*s.DataSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) } if s.GrantPermissions != nil && len(s.GrantPermissions) < 1 { invalidParams.Add(request.NewErrParamMinLen("GrantPermissions", 1)) @@ -21288,40 +25387,38 @@ func (s *UpdateDashboardPermissionsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDashboardPermissionsInput) SetAwsAccountId(v string) *UpdateDashboardPermissionsInput { +func (s *UpdateDataSetPermissionsInput) SetAwsAccountId(v string) *UpdateDataSetPermissionsInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *UpdateDashboardPermissionsInput) SetDashboardId(v string) *UpdateDashboardPermissionsInput { - s.DashboardId = &v +// SetDataSetId sets the DataSetId field's value. +func (s *UpdateDataSetPermissionsInput) SetDataSetId(v string) *UpdateDataSetPermissionsInput { + s.DataSetId = &v return s } // SetGrantPermissions sets the GrantPermissions field's value. -func (s *UpdateDashboardPermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateDashboardPermissionsInput { +func (s *UpdateDataSetPermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateDataSetPermissionsInput { s.GrantPermissions = v return s } // SetRevokePermissions sets the RevokePermissions field's value. -func (s *UpdateDashboardPermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateDashboardPermissionsInput { +func (s *UpdateDataSetPermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateDataSetPermissionsInput { s.RevokePermissions = v return s } -type UpdateDashboardPermissionsOutput struct { +type UpdateDataSetPermissionsOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dashboard. - DashboardArn *string `type:"string"` - - // The ID for the dashboard. - DashboardId *string `min:"1" type:"string"` + // The Amazon Resource Name (ARN) of the dataset. + DataSetArn *string `type:"string"` - // Information about the permissions on the dashboard. - Permissions []*ResourcePermission `min:"1" type:"list"` + // The ID for the dataset whose permissions you want to update. This ID is unique + // per AWS Region for each AWS account. + DataSetId *string `type:"string"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -21331,94 +25428,119 @@ type UpdateDashboardPermissionsOutput struct { } // String returns the string representation -func (s UpdateDashboardPermissionsOutput) String() string { +func (s UpdateDataSetPermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDashboardPermissionsOutput) GoString() string { +func (s UpdateDataSetPermissionsOutput) GoString() string { return s.String() } -// SetDashboardArn sets the DashboardArn field's value. -func (s *UpdateDashboardPermissionsOutput) SetDashboardArn(v string) *UpdateDashboardPermissionsOutput { - s.DashboardArn = &v - return s -} - -// SetDashboardId sets the DashboardId field's value. -func (s *UpdateDashboardPermissionsOutput) SetDashboardId(v string) *UpdateDashboardPermissionsOutput { - s.DashboardId = &v +// SetDataSetArn sets the DataSetArn field's value. +func (s *UpdateDataSetPermissionsOutput) SetDataSetArn(v string) *UpdateDataSetPermissionsOutput { + s.DataSetArn = &v return s } -// SetPermissions sets the Permissions field's value. -func (s *UpdateDashboardPermissionsOutput) SetPermissions(v []*ResourcePermission) *UpdateDashboardPermissionsOutput { - s.Permissions = v +// SetDataSetId sets the DataSetId field's value. +func (s *UpdateDataSetPermissionsOutput) SetDataSetId(v string) *UpdateDataSetPermissionsOutput { + s.DataSetId = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateDashboardPermissionsOutput) SetRequestId(v string) *UpdateDashboardPermissionsOutput { +func (s *UpdateDataSetPermissionsOutput) SetRequestId(v string) *UpdateDataSetPermissionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateDashboardPermissionsOutput) SetStatus(v int64) *UpdateDashboardPermissionsOutput { +func (s *UpdateDataSetPermissionsOutput) SetStatus(v int64) *UpdateDataSetPermissionsOutput { s.Status = &v return s } -type UpdateDashboardPublishedVersionInput struct { +type UpdateDataSourceInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the dashboard that you're updating. + // The AWS account ID. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The ID for the dashboard. + // The credentials that 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 AWS Region for each AWS + // account. // - // DashboardId is a required field - DashboardId *string `location:"uri" locationName:"DashboardId" min:"1" type:"string" required:"true"` + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` - // The version number of the dashboard. + // The parameters that QuickSight uses to connect to your underlying source. + DataSourceParameters *DataSourceParameters `type:"structure"` + + // A display name for the data source. // - // VersionNumber is a required field - VersionNumber *int64 `location:"uri" locationName:"VersionNumber" min:"1" type:"long" required:"true"` + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // Secure Socket Layer (SSL) properties that apply when QuickSight connects + // to your underlying source. + SslProperties *SslProperties `type:"structure"` + + // Use this parameter only when you want QuickSight to use a VPC connection + // when connecting to your underlying source. + VpcConnectionProperties *VpcConnectionProperties `type:"structure"` } // String returns the string representation -func (s UpdateDashboardPublishedVersionInput) String() string { +func (s UpdateDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDashboardPublishedVersionInput) GoString() string { +func (s UpdateDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDashboardPublishedVersionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDashboardPublishedVersionInput"} +func (s *UpdateDataSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DashboardId == nil { - invalidParams.Add(request.NewErrParamRequired("DashboardId")) + if s.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) + } + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 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.DashboardId != nil && len(*s.DashboardId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DashboardId", 1)) + if s.Credentials != nil { + if err := s.Credentials.Validate(); err != nil { + invalidParams.AddNested("Credentials", err.(request.ErrInvalidParams)) + } } - if s.VersionNumber == nil { - invalidParams.Add(request.NewErrParamRequired("VersionNumber")) + if s.DataSourceParameters != nil { + if err := s.DataSourceParameters.Validate(); err != nil { + invalidParams.AddNested("DataSourceParameters", err.(request.ErrInvalidParams)) + } } - if s.VersionNumber != nil && *s.VersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("VersionNumber", 1)) + if s.VpcConnectionProperties != nil { + if err := s.VpcConnectionProperties.Validate(); err != nil { + invalidParams.AddNested("VpcConnectionProperties", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -21428,74 +25550,108 @@ func (s *UpdateDashboardPublishedVersionInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDashboardPublishedVersionInput) SetAwsAccountId(v string) *UpdateDashboardPublishedVersionInput { +func (s *UpdateDataSourceInput) SetAwsAccountId(v string) *UpdateDataSourceInput { s.AwsAccountId = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *UpdateDashboardPublishedVersionInput) SetDashboardId(v string) *UpdateDashboardPublishedVersionInput { - s.DashboardId = &v +// SetCredentials sets the Credentials field's value. +func (s *UpdateDataSourceInput) SetCredentials(v *DataSourceCredentials) *UpdateDataSourceInput { + s.Credentials = v return s } -// SetVersionNumber sets the VersionNumber field's value. -func (s *UpdateDashboardPublishedVersionInput) SetVersionNumber(v int64) *UpdateDashboardPublishedVersionInput { - s.VersionNumber = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *UpdateDataSourceInput) SetDataSourceId(v string) *UpdateDataSourceInput { + s.DataSourceId = &v return s } -type UpdateDashboardPublishedVersionOutput struct { +// SetDataSourceParameters sets the DataSourceParameters field's value. +func (s *UpdateDataSourceInput) SetDataSourceParameters(v *DataSourceParameters) *UpdateDataSourceInput { + s.DataSourceParameters = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDataSourceInput) SetName(v string) *UpdateDataSourceInput { + s.Name = &v + return s +} + +// SetSslProperties sets the SslProperties field's value. +func (s *UpdateDataSourceInput) SetSslProperties(v *SslProperties) *UpdateDataSourceInput { + s.SslProperties = v + return s +} + +// SetVpcConnectionProperties sets the VpcConnectionProperties field's value. +func (s *UpdateDataSourceInput) SetVpcConnectionProperties(v *VpcConnectionProperties) *UpdateDataSourceInput { + s.VpcConnectionProperties = v + return s +} + +type UpdateDataSourceOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dashboard. - DashboardArn *string `type:"string"` + // The Amazon Resource Name (ARN) of the data source. + Arn *string `type:"string"` - // The ID for the dashboard. - DashboardId *string `min:"1" type:"string"` + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + DataSourceId *string `type:"string"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The update status of the data source's last update. + UpdateStatus *string `type:"string" enum:"ResourceStatus"` } // String returns the string representation -func (s UpdateDashboardPublishedVersionOutput) String() string { +func (s UpdateDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDashboardPublishedVersionOutput) GoString() string { +func (s UpdateDataSourceOutput) GoString() string { return s.String() } -// SetDashboardArn sets the DashboardArn field's value. -func (s *UpdateDashboardPublishedVersionOutput) SetDashboardArn(v string) *UpdateDashboardPublishedVersionOutput { - s.DashboardArn = &v +// SetArn sets the Arn field's value. +func (s *UpdateDataSourceOutput) SetArn(v string) *UpdateDataSourceOutput { + s.Arn = &v return s } -// SetDashboardId sets the DashboardId field's value. -func (s *UpdateDashboardPublishedVersionOutput) SetDashboardId(v string) *UpdateDashboardPublishedVersionOutput { - s.DashboardId = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *UpdateDataSourceOutput) SetDataSourceId(v string) *UpdateDataSourceOutput { + s.DataSourceId = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateDashboardPublishedVersionOutput) SetRequestId(v string) *UpdateDashboardPublishedVersionOutput { +func (s *UpdateDataSourceOutput) SetRequestId(v string) *UpdateDataSourceOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateDashboardPublishedVersionOutput) SetStatus(v int64) *UpdateDashboardPublishedVersionOutput { +func (s *UpdateDataSourceOutput) SetStatus(v int64) *UpdateDataSourceOutput { s.Status = &v return s } -type UpdateDataSetInput struct { +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *UpdateDataSourceOutput) SetUpdateStatus(v string) *UpdateDataSourceOutput { + s.UpdateStatus = &v + return s +} + +type UpdateDataSourcePermissionsInput struct { _ struct{} `type:"structure"` // The AWS account ID. @@ -21503,120 +25659,70 @@ type UpdateDataSetInput struct { // 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. - ColumnGroups []*ColumnGroup `min:"1" type:"list"` - - // The ID for the dataset that you want to update. This ID is unique per AWS - // Region for each AWS account. - // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` - - // Indicates whether you want to import the data into SPICE. - // - // ImportMode is a required field - ImportMode *string `type:"string" required:"true" enum:"DataSetImportMode"` - - // Configures the combination and transformation of the data from the physical - // tables. - LogicalTableMap map[string]*LogicalTable `min:"1" type:"map"` - - // The display name for the dataset. + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` + // DataSourceId is a required field + DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` - // 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"` + // A list of resource permissions that you want to grant on the data source. + GrantPermissions []*ResourcePermission `min:"1" type:"list"` - // The row-level security configuration for the data you want to create. - RowLevelPermissionDataSet *RowLevelPermissionDataSet `type:"structure"` + // A list of resource permissions that you want to revoke on the data source. + RevokePermissions []*ResourcePermission `min:"1" type:"list"` } // String returns the string representation -func (s UpdateDataSetInput) String() string { +func (s UpdateDataSourcePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSetInput) GoString() string { +func (s UpdateDataSourcePermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDataSetInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDataSetInput"} +func (s *UpdateDataSourcePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourcePermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.ColumnGroups != nil && len(s.ColumnGroups) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ColumnGroups", 1)) - } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) - } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) - } - if s.ImportMode == nil { - invalidParams.Add(request.NewErrParamRequired("ImportMode")) - } - if s.LogicalTableMap != nil && len(s.LogicalTableMap) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LogicalTableMap", 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.DataSourceId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } - if s.PhysicalTableMap == nil { - invalidParams.Add(request.NewErrParamRequired("PhysicalTableMap")) + if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } - if s.PhysicalTableMap != nil && len(s.PhysicalTableMap) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PhysicalTableMap", 1)) + if s.GrantPermissions != nil && len(s.GrantPermissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GrantPermissions", 1)) } - if s.ColumnGroups != nil { - for i, v := range s.ColumnGroups { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ColumnGroups", i), err.(request.ErrInvalidParams)) - } - } + if s.RevokePermissions != nil && len(s.RevokePermissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RevokePermissions", 1)) } - if s.LogicalTableMap != nil { - for i, v := range s.LogicalTableMap { + if s.GrantPermissions != nil { + for i, v := range s.GrantPermissions { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogicalTableMap", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GrantPermissions", i), err.(request.ErrInvalidParams)) } } } - if s.PhysicalTableMap != nil { - for i, v := range s.PhysicalTableMap { + if s.RevokePermissions != nil { + for i, v := range s.RevokePermissions { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PhysicalTableMap", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RevokePermissions", i), err.(request.ErrInvalidParams)) } } } - if s.RowLevelPermissionDataSet != nil { - if err := s.RowLevelPermissionDataSet.Validate(); err != nil { - invalidParams.AddNested("RowLevelPermissionDataSet", err.(request.ErrInvalidParams)) - } - } if invalidParams.Len() > 0 { return invalidParams @@ -21625,70 +25731,38 @@ func (s *UpdateDataSetInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDataSetInput) SetAwsAccountId(v string) *UpdateDataSetInput { +func (s *UpdateDataSourcePermissionsInput) SetAwsAccountId(v string) *UpdateDataSourcePermissionsInput { s.AwsAccountId = &v return s } -// SetColumnGroups sets the ColumnGroups field's value. -func (s *UpdateDataSetInput) SetColumnGroups(v []*ColumnGroup) *UpdateDataSetInput { - s.ColumnGroups = v - return s -} - -// SetDataSetId sets the DataSetId field's value. -func (s *UpdateDataSetInput) SetDataSetId(v string) *UpdateDataSetInput { - s.DataSetId = &v - return s -} - -// SetImportMode sets the ImportMode field's value. -func (s *UpdateDataSetInput) SetImportMode(v string) *UpdateDataSetInput { - s.ImportMode = &v - return s -} - -// SetLogicalTableMap sets the LogicalTableMap field's value. -func (s *UpdateDataSetInput) SetLogicalTableMap(v map[string]*LogicalTable) *UpdateDataSetInput { - s.LogicalTableMap = v - return s -} - -// SetName sets the Name field's value. -func (s *UpdateDataSetInput) SetName(v string) *UpdateDataSetInput { - s.Name = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *UpdateDataSourcePermissionsInput) SetDataSourceId(v string) *UpdateDataSourcePermissionsInput { + s.DataSourceId = &v return s } -// SetPhysicalTableMap sets the PhysicalTableMap field's value. -func (s *UpdateDataSetInput) SetPhysicalTableMap(v map[string]*PhysicalTable) *UpdateDataSetInput { - s.PhysicalTableMap = v +// SetGrantPermissions sets the GrantPermissions field's value. +func (s *UpdateDataSourcePermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateDataSourcePermissionsInput { + s.GrantPermissions = v return s } -// SetRowLevelPermissionDataSet sets the RowLevelPermissionDataSet field's value. -func (s *UpdateDataSetInput) SetRowLevelPermissionDataSet(v *RowLevelPermissionDataSet) *UpdateDataSetInput { - s.RowLevelPermissionDataSet = v +// SetRevokePermissions sets the RevokePermissions field's value. +func (s *UpdateDataSourcePermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateDataSourcePermissionsInput { + s.RevokePermissions = v return s -} - -type UpdateDataSetOutput struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the dataset. - Arn *string `type:"string"` - - // The ID for the dataset that you want to create. This ID is unique per AWS - // Region for each AWS account. - DataSetId *string `type:"string"` +} - // The ARN for the ingestion, which is triggered as a result of dataset creation - // if the import mode is SPICE. - IngestionArn *string `type:"string"` +type UpdateDataSourcePermissionsOutput struct { + _ struct{} `type:"structure"` - // The ID of the ingestion, which is triggered as a result of dataset creation - // if the import mode is SPICE. - IngestionId *string `type:"string"` + // The Amazon Resource Name (ARN) of the data source. + DataSourceArn *string `type:"string"` + + // The ID of the data source. This ID is unique per AWS Region for each AWS + // account. + DataSourceId *string `type:"string"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -21698,122 +25772,95 @@ type UpdateDataSetOutput struct { } // String returns the string representation -func (s UpdateDataSetOutput) String() string { +func (s UpdateDataSourcePermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSetOutput) GoString() string { +func (s UpdateDataSourcePermissionsOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *UpdateDataSetOutput) SetArn(v string) *UpdateDataSetOutput { - s.Arn = &v - return s -} - -// SetDataSetId sets the DataSetId field's value. -func (s *UpdateDataSetOutput) SetDataSetId(v string) *UpdateDataSetOutput { - s.DataSetId = &v - return s -} - -// SetIngestionArn sets the IngestionArn field's value. -func (s *UpdateDataSetOutput) SetIngestionArn(v string) *UpdateDataSetOutput { - s.IngestionArn = &v +// SetDataSourceArn sets the DataSourceArn field's value. +func (s *UpdateDataSourcePermissionsOutput) SetDataSourceArn(v string) *UpdateDataSourcePermissionsOutput { + s.DataSourceArn = &v return s } -// SetIngestionId sets the IngestionId field's value. -func (s *UpdateDataSetOutput) SetIngestionId(v string) *UpdateDataSetOutput { - s.IngestionId = &v +// SetDataSourceId sets the DataSourceId field's value. +func (s *UpdateDataSourcePermissionsOutput) SetDataSourceId(v string) *UpdateDataSourcePermissionsOutput { + s.DataSourceId = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateDataSetOutput) SetRequestId(v string) *UpdateDataSetOutput { +func (s *UpdateDataSourcePermissionsOutput) SetRequestId(v string) *UpdateDataSourcePermissionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateDataSetOutput) SetStatus(v int64) *UpdateDataSetOutput { +func (s *UpdateDataSourcePermissionsOutput) SetStatus(v int64) *UpdateDataSourcePermissionsOutput { s.Status = &v return s } -type UpdateDataSetPermissionsInput struct { +type UpdateGroupInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The ID for the AWS account that the group is in. Currently, you use the ID + // for the AWS 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 ID for the dataset whose permissions you want to update. This ID is unique - // per AWS Region for each AWS account. - // - // DataSetId is a required field - DataSetId *string `location:"uri" locationName:"DataSetId" type:"string" required:"true"` + // The description for the group that you want to update. + Description *string `min:"1" type:"string"` - // The resource permissions that you want to grant to the dataset. - GrantPermissions []*ResourcePermission `min:"1" type:"list"` + // The name of the group that you want to update. + // + // GroupName is a required field + GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` - // The resource permissions that you want to revoke from the dataset. - RevokePermissions []*ResourcePermission `min:"1" type:"list"` + // The namespace. Currently, you should set this to default. + // + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` } // String returns the string representation -func (s UpdateDataSetPermissionsInput) String() string { +func (s UpdateGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSetPermissionsInput) GoString() string { +func (s UpdateGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDataSetPermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDataSetPermissionsInput"} +func (s *UpdateGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateGroupInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSetId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSetId")) - } - if s.DataSetId != nil && len(*s.DataSetId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSetId", 1)) + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } - if s.GrantPermissions != nil && len(s.GrantPermissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GrantPermissions", 1)) + if s.GroupName == nil { + invalidParams.Add(request.NewErrParamRequired("GroupName")) } - if s.RevokePermissions != nil && len(s.RevokePermissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RevokePermissions", 1)) + if s.GroupName != nil && len(*s.GroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } - if s.GrantPermissions != nil { - for i, v := range s.GrantPermissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GrantPermissions", i), err.(request.ErrInvalidParams)) - } - } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) } - if s.RevokePermissions != nil { - for i, v := range s.RevokePermissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RevokePermissions", i), err.(request.ErrInvalidParams)) - } - } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if invalidParams.Len() > 0 { @@ -21823,38 +25870,34 @@ func (s *UpdateDataSetPermissionsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDataSetPermissionsInput) SetAwsAccountId(v string) *UpdateDataSetPermissionsInput { +func (s *UpdateGroupInput) SetAwsAccountId(v string) *UpdateGroupInput { s.AwsAccountId = &v return s } -// SetDataSetId sets the DataSetId field's value. -func (s *UpdateDataSetPermissionsInput) SetDataSetId(v string) *UpdateDataSetPermissionsInput { - s.DataSetId = &v +// SetDescription sets the Description field's value. +func (s *UpdateGroupInput) SetDescription(v string) *UpdateGroupInput { + s.Description = &v return s } -// SetGrantPermissions sets the GrantPermissions field's value. -func (s *UpdateDataSetPermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateDataSetPermissionsInput { - s.GrantPermissions = v +// SetGroupName sets the GroupName field's value. +func (s *UpdateGroupInput) SetGroupName(v string) *UpdateGroupInput { + s.GroupName = &v return s } -// SetRevokePermissions sets the RevokePermissions field's value. -func (s *UpdateDataSetPermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateDataSetPermissionsInput { - s.RevokePermissions = v +// SetNamespace sets the Namespace field's value. +func (s *UpdateGroupInput) SetNamespace(v string) *UpdateGroupInput { + s.Namespace = &v return s } -type UpdateDataSetPermissionsOutput struct { +type UpdateGroupOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dataset. - DataSetArn *string `type:"string"` - - // The ID for the dataset whose permissions you want to update. This ID is unique - // per AWS Region for each AWS account. - DataSetId *string `type:"string"` + // The name of the group. + Group *Group `type:"structure"` // The AWS request ID for this operation. RequestId *string `type:"string"` @@ -21864,119 +25907,101 @@ type UpdateDataSetPermissionsOutput struct { } // String returns the string representation -func (s UpdateDataSetPermissionsOutput) String() string { +func (s UpdateGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSetPermissionsOutput) GoString() string { +func (s UpdateGroupOutput) GoString() string { return s.String() } -// SetDataSetArn sets the DataSetArn field's value. -func (s *UpdateDataSetPermissionsOutput) SetDataSetArn(v string) *UpdateDataSetPermissionsOutput { - s.DataSetArn = &v - return s -} - -// SetDataSetId sets the DataSetId field's value. -func (s *UpdateDataSetPermissionsOutput) SetDataSetId(v string) *UpdateDataSetPermissionsOutput { - s.DataSetId = &v +// SetGroup sets the Group field's value. +func (s *UpdateGroupOutput) SetGroup(v *Group) *UpdateGroupOutput { + s.Group = v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateDataSetPermissionsOutput) SetRequestId(v string) *UpdateDataSetPermissionsOutput { +func (s *UpdateGroupOutput) SetRequestId(v string) *UpdateGroupOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateDataSetPermissionsOutput) SetStatus(v int64) *UpdateDataSetPermissionsOutput { +func (s *UpdateGroupOutput) SetStatus(v int64) *UpdateGroupOutput { s.Status = &v return s } -type UpdateDataSourceInput struct { +type UpdateIAMPolicyAssignmentInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The name of the assignment. This name must be unique within an AWS account. // - // AwsAccountId is a required field - AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` + // AssignmentName is a required field + AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" 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. - Credentials *DataSourceCredentials `type:"structure" sensitive:"true"` + // The status of the assignment. Possible values are as follows: + // + // * ENABLED - Anything specified in this assignment is used when creating + // the data source. + // + // * DISABLED - This assignment isn't used when creating the data source. + // + // * DRAFT - This assignment is an unfinished draft and isn't used when creating + // the data source. + AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. + // The ID of the AWS account that contains the IAM policy assignment. // - // DataSourceId is a required field - DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` + // AwsAccountId is a required field + AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The parameters that QuickSight uses to connect to your underlying source. - DataSourceParameters *DataSourceParameters `type:"structure"` + // The QuickSight users, groups, or both that you want to assign the policy + // to. + Identities map[string][]*string `type:"map"` - // A display name for the data source. + // The namespace of the assignment. // - // Name is a required field - Name *string `min:"1" type:"string" required:"true"` - - // Secure Socket Layer (SSL) properties that apply when QuickSight connects - // to your underlying source. - SslProperties *SslProperties `type:"structure"` + // Namespace is a required field + Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` - // Use this parameter only when you want QuickSight to use a VPC connection - // when connecting to your underlying source. - VpcConnectionProperties *VpcConnectionProperties `type:"structure"` + // The ARN for the IAM policy to apply to the QuickSight users and groups specified + // in this assignment. + PolicyArn *string `type:"string"` } // String returns the string representation -func (s UpdateDataSourceInput) String() string { +func (s UpdateIAMPolicyAssignmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSourceInput) GoString() string { +func (s UpdateIAMPolicyAssignmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDataSourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} +func (s *UpdateIAMPolicyAssignmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateIAMPolicyAssignmentInput"} + if s.AssignmentName == nil { + invalidParams.Add(request.NewErrParamRequired("AssignmentName")) + } + if s.AssignmentName != nil && len(*s.AssignmentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssignmentName", 1)) + } if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSourceId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceId")) - } - if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 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.Credentials != nil { - if err := s.Credentials.Validate(); err != nil { - invalidParams.AddNested("Credentials", err.(request.ErrInvalidParams)) - } - } - if s.DataSourceParameters != nil { - if err := s.DataSourceParameters.Validate(); err != nil { - invalidParams.AddNested("DataSourceParameters", err.(request.ErrInvalidParams)) - } + if s.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) } - if s.VpcConnectionProperties != nil { - if err := s.VpcConnectionProperties.Validate(); err != nil { - invalidParams.AddNested("VpcConnectionProperties", err.(request.ErrInvalidParams)) - } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if invalidParams.Len() > 0 { @@ -21985,179 +26010,191 @@ func (s *UpdateDataSourceInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDataSourceInput) SetAwsAccountId(v string) *UpdateDataSourceInput { - s.AwsAccountId = &v - return s -} - -// SetCredentials sets the Credentials field's value. -func (s *UpdateDataSourceInput) SetCredentials(v *DataSourceCredentials) *UpdateDataSourceInput { - s.Credentials = v +// SetAssignmentName sets the AssignmentName field's value. +func (s *UpdateIAMPolicyAssignmentInput) SetAssignmentName(v string) *UpdateIAMPolicyAssignmentInput { + s.AssignmentName = &v return s } -// SetDataSourceId sets the DataSourceId field's value. -func (s *UpdateDataSourceInput) SetDataSourceId(v string) *UpdateDataSourceInput { - s.DataSourceId = &v +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *UpdateIAMPolicyAssignmentInput) SetAssignmentStatus(v string) *UpdateIAMPolicyAssignmentInput { + s.AssignmentStatus = &v return s } -// SetDataSourceParameters sets the DataSourceParameters field's value. -func (s *UpdateDataSourceInput) SetDataSourceParameters(v *DataSourceParameters) *UpdateDataSourceInput { - s.DataSourceParameters = v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateIAMPolicyAssignmentInput) SetAwsAccountId(v string) *UpdateIAMPolicyAssignmentInput { + s.AwsAccountId = &v return s } -// SetName sets the Name field's value. -func (s *UpdateDataSourceInput) SetName(v string) *UpdateDataSourceInput { - s.Name = &v +// SetIdentities sets the Identities field's value. +func (s *UpdateIAMPolicyAssignmentInput) SetIdentities(v map[string][]*string) *UpdateIAMPolicyAssignmentInput { + s.Identities = v return s } -// SetSslProperties sets the SslProperties field's value. -func (s *UpdateDataSourceInput) SetSslProperties(v *SslProperties) *UpdateDataSourceInput { - s.SslProperties = v +// SetNamespace sets the Namespace field's value. +func (s *UpdateIAMPolicyAssignmentInput) SetNamespace(v string) *UpdateIAMPolicyAssignmentInput { + s.Namespace = &v return s } -// SetVpcConnectionProperties sets the VpcConnectionProperties field's value. -func (s *UpdateDataSourceInput) SetVpcConnectionProperties(v *VpcConnectionProperties) *UpdateDataSourceInput { - s.VpcConnectionProperties = v +// SetPolicyArn sets the PolicyArn field's value. +func (s *UpdateIAMPolicyAssignmentInput) SetPolicyArn(v string) *UpdateIAMPolicyAssignmentInput { + s.PolicyArn = &v return s } -type UpdateDataSourceOutput struct { +type UpdateIAMPolicyAssignmentOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the data source. - Arn *string `type:"string"` + // The ID of the assignment. + AssignmentId *string `type:"string"` - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - DataSourceId *string `type:"string"` + // The name of the assignment. + AssignmentName *string `min:"1" type:"string"` + + // The status of the assignment. Possible values are as follows: + // + // * ENABLED - Anything specified in this assignment is used when creating + // the data source. + // + // * DISABLED - This assignment isn't used when creating the data source. + // + // * DRAFT - This assignment is an unfinished draft and isn't used when creating + // the data source. + AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` + + // The QuickSight users, groups, or both that the IAM policy 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. + PolicyArn *string `type:"string"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` - - // The update status of the data source's last update. - UpdateStatus *string `type:"string" enum:"ResourceStatus"` } // String returns the string representation -func (s UpdateDataSourceOutput) String() string { +func (s UpdateIAMPolicyAssignmentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSourceOutput) GoString() string { +func (s UpdateIAMPolicyAssignmentOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *UpdateDataSourceOutput) SetArn(v string) *UpdateDataSourceOutput { - s.Arn = &v +// SetAssignmentId sets the AssignmentId field's value. +func (s *UpdateIAMPolicyAssignmentOutput) SetAssignmentId(v string) *UpdateIAMPolicyAssignmentOutput { + s.AssignmentId = &v return s } -// SetDataSourceId sets the DataSourceId field's value. -func (s *UpdateDataSourceOutput) SetDataSourceId(v string) *UpdateDataSourceOutput { - s.DataSourceId = &v +// SetAssignmentName sets the AssignmentName field's value. +func (s *UpdateIAMPolicyAssignmentOutput) SetAssignmentName(v string) *UpdateIAMPolicyAssignmentOutput { + s.AssignmentName = &v + return s +} + +// SetAssignmentStatus sets the AssignmentStatus field's value. +func (s *UpdateIAMPolicyAssignmentOutput) SetAssignmentStatus(v string) *UpdateIAMPolicyAssignmentOutput { + s.AssignmentStatus = &v + return s +} + +// SetIdentities sets the Identities field's value. +func (s *UpdateIAMPolicyAssignmentOutput) SetIdentities(v map[string][]*string) *UpdateIAMPolicyAssignmentOutput { + s.Identities = v + return s +} + +// SetPolicyArn sets the PolicyArn field's value. +func (s *UpdateIAMPolicyAssignmentOutput) SetPolicyArn(v string) *UpdateIAMPolicyAssignmentOutput { + s.PolicyArn = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateDataSourceOutput) SetRequestId(v string) *UpdateDataSourceOutput { +func (s *UpdateIAMPolicyAssignmentOutput) SetRequestId(v string) *UpdateIAMPolicyAssignmentOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateDataSourceOutput) SetStatus(v int64) *UpdateDataSourceOutput { +func (s *UpdateIAMPolicyAssignmentOutput) SetStatus(v int64) *UpdateIAMPolicyAssignmentOutput { s.Status = &v return s } -// SetUpdateStatus sets the UpdateStatus field's value. -func (s *UpdateDataSourceOutput) SetUpdateStatus(v string) *UpdateDataSourceOutput { - s.UpdateStatus = &v - return s -} - -type UpdateDataSourcePermissionsInput struct { +type UpdateTemplateAliasInput struct { _ struct{} `type:"structure"` - // The AWS account ID. + // The alias of the template that you want to update. If you name a specific + // alias, you update the version that the alias points to. You can specify the + // latest version of the template by providing the keyword $LATEST in the AliasName + // parameter. The keyword $PUBLISHED doesn't apply to templates. + // + // AliasName is a required field + AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` + + // The ID of the AWS account that contains the template alias that you're updating. // // 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 AWS Region for each AWS - // account. + // The ID for the template. // - // DataSourceId is a required field - DataSourceId *string `location:"uri" locationName:"DataSourceId" type:"string" required:"true"` - - // A list of resource permissions that you want to grant on the data source. - GrantPermissions []*ResourcePermission `min:"1" type:"list"` + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` - // A list of resource permissions that you want to revoke on the data source. - RevokePermissions []*ResourcePermission `min:"1" type:"list"` + // The version number of the template. + // + // TemplateVersionNumber is a required field + TemplateVersionNumber *int64 `min:"1" type:"long" required:"true"` } // String returns the string representation -func (s UpdateDataSourcePermissionsInput) String() string { +func (s UpdateTemplateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSourcePermissionsInput) GoString() string { +func (s UpdateTemplateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateDataSourcePermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourcePermissionsInput"} +func (s *UpdateTemplateAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTemplateAliasInput"} + if s.AliasName == nil { + invalidParams.Add(request.NewErrParamRequired("AliasName")) + } + if s.AliasName != nil && len(*s.AliasName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) + } if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.DataSourceId == nil { - invalidParams.Add(request.NewErrParamRequired("DataSourceId")) - } - if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) - } - if s.GrantPermissions != nil && len(s.GrantPermissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GrantPermissions", 1)) + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) } - if s.RevokePermissions != nil && len(s.RevokePermissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RevokePermissions", 1)) + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) } - if s.GrantPermissions != nil { - for i, v := range s.GrantPermissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GrantPermissions", i), err.(request.ErrInvalidParams)) - } - } + if s.TemplateVersionNumber == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateVersionNumber")) } - if s.RevokePermissions != nil { - for i, v := range s.RevokePermissions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RevokePermissions", i), err.(request.ErrInvalidParams)) - } - } + if s.TemplateVersionNumber != nil && *s.TemplateVersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("TemplateVersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -22166,137 +26203,147 @@ func (s *UpdateDataSourcePermissionsInput) Validate() error { return nil } -// SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateDataSourcePermissionsInput) SetAwsAccountId(v string) *UpdateDataSourcePermissionsInput { - s.AwsAccountId = &v +// SetAliasName sets the AliasName field's value. +func (s *UpdateTemplateAliasInput) SetAliasName(v string) *UpdateTemplateAliasInput { + s.AliasName = &v return s } -// SetDataSourceId sets the DataSourceId field's value. -func (s *UpdateDataSourcePermissionsInput) SetDataSourceId(v string) *UpdateDataSourcePermissionsInput { - s.DataSourceId = &v +// SetAwsAccountId sets the AwsAccountId field's value. +func (s *UpdateTemplateAliasInput) SetAwsAccountId(v string) *UpdateTemplateAliasInput { + s.AwsAccountId = &v return s } -// SetGrantPermissions sets the GrantPermissions field's value. -func (s *UpdateDataSourcePermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateDataSourcePermissionsInput { - s.GrantPermissions = v +// SetTemplateId sets the TemplateId field's value. +func (s *UpdateTemplateAliasInput) SetTemplateId(v string) *UpdateTemplateAliasInput { + s.TemplateId = &v return s } -// SetRevokePermissions sets the RevokePermissions field's value. -func (s *UpdateDataSourcePermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateDataSourcePermissionsInput { - s.RevokePermissions = v +// SetTemplateVersionNumber sets the TemplateVersionNumber field's value. +func (s *UpdateTemplateAliasInput) SetTemplateVersionNumber(v int64) *UpdateTemplateAliasInput { + s.TemplateVersionNumber = &v return s } -type UpdateDataSourcePermissionsOutput struct { +type UpdateTemplateAliasOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the data source. - DataSourceArn *string `type:"string"` - - // The ID of the data source. This ID is unique per AWS Region for each AWS - // account. - DataSourceId *string `type:"string"` - // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The template alias. + TemplateAlias *TemplateAlias `type:"structure"` } // String returns the string representation -func (s UpdateDataSourcePermissionsOutput) String() string { +func (s UpdateTemplateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateDataSourcePermissionsOutput) GoString() string { +func (s UpdateTemplateAliasOutput) GoString() string { return s.String() } -// SetDataSourceArn sets the DataSourceArn field's value. -func (s *UpdateDataSourcePermissionsOutput) SetDataSourceArn(v string) *UpdateDataSourcePermissionsOutput { - s.DataSourceArn = &v - return s -} - -// SetDataSourceId sets the DataSourceId field's value. -func (s *UpdateDataSourcePermissionsOutput) SetDataSourceId(v string) *UpdateDataSourcePermissionsOutput { - s.DataSourceId = &v +// SetRequestId sets the RequestId field's value. +func (s *UpdateTemplateAliasOutput) SetRequestId(v string) *UpdateTemplateAliasOutput { + s.RequestId = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *UpdateDataSourcePermissionsOutput) SetRequestId(v string) *UpdateDataSourcePermissionsOutput { - s.RequestId = &v +// SetStatus sets the Status field's value. +func (s *UpdateTemplateAliasOutput) SetStatus(v int64) *UpdateTemplateAliasOutput { + s.Status = &v return s } -// SetStatus sets the Status field's value. -func (s *UpdateDataSourcePermissionsOutput) SetStatus(v int64) *UpdateDataSourcePermissionsOutput { - s.Status = &v +// SetTemplateAlias sets the TemplateAlias field's value. +func (s *UpdateTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *UpdateTemplateAliasOutput { + s.TemplateAlias = v return s } -type UpdateGroupInput struct { +type UpdateTemplateInput struct { _ struct{} `type:"structure"` - // The ID for the AWS account that the group is in. Currently, you use the ID - // for the AWS account that contains your Amazon QuickSight account. + // The ID of the AWS account that contains the template that you're updating. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The description for the group that you want to update. - Description *string `min:"1" type:"string"` + // The name for the template. + Name *string `min:"1" type:"string"` - // The name of the group that you want to update. + // 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 AWS Account and any QuickSight-supported + // AWS Region. // - // GroupName is a required field - GroupName *string `location:"uri" locationName:"GroupName" min:"1" type:"string" required:"true"` + // 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. + // + // SourceEntity is a required field + SourceEntity *TemplateSourceEntity `type:"structure" required:"true"` - // The namespace. Currently, you should set this to default. + // The ID for the template. // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + + // A description of the current template version that is being updated. Every + // time you call UpdateTemplate, you create a new version of the template. Each + // version of the template maintains a description of the version in the VersionDescription + // field. + VersionDescription *string `min:"1" type:"string"` } // String returns the string representation -func (s UpdateGroupInput) String() string { +func (s UpdateTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateGroupInput) GoString() string { +func (s UpdateTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateGroupInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateGroupInput"} +func (s *UpdateTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTemplateInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Description != nil && len(*s.Description) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.GroupName == nil { - invalidParams.Add(request.NewErrParamRequired("GroupName")) + if s.SourceEntity == nil { + invalidParams.Add(request.NewErrParamRequired("SourceEntity")) } - if s.GroupName != nil && len(*s.GroupName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) + } + if s.SourceEntity != nil { + if err := s.SourceEntity.Validate(); err != nil { + invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -22306,138 +26353,168 @@ func (s *UpdateGroupInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateGroupInput) SetAwsAccountId(v string) *UpdateGroupInput { +func (s *UpdateTemplateInput) SetAwsAccountId(v string) *UpdateTemplateInput { s.AwsAccountId = &v return s } -// SetDescription sets the Description field's value. -func (s *UpdateGroupInput) SetDescription(v string) *UpdateGroupInput { - s.Description = &v +// SetName sets the Name field's value. +func (s *UpdateTemplateInput) SetName(v string) *UpdateTemplateInput { + s.Name = &v return s } -// SetGroupName sets the GroupName field's value. -func (s *UpdateGroupInput) SetGroupName(v string) *UpdateGroupInput { - s.GroupName = &v +// SetSourceEntity sets the SourceEntity field's value. +func (s *UpdateTemplateInput) SetSourceEntity(v *TemplateSourceEntity) *UpdateTemplateInput { + s.SourceEntity = v return s } -// SetNamespace sets the Namespace field's value. -func (s *UpdateGroupInput) SetNamespace(v string) *UpdateGroupInput { - s.Namespace = &v +// SetTemplateId sets the TemplateId field's value. +func (s *UpdateTemplateInput) SetTemplateId(v string) *UpdateTemplateInput { + s.TemplateId = &v return s } -type UpdateGroupOutput struct { +// SetVersionDescription sets the VersionDescription field's value. +func (s *UpdateTemplateInput) SetVersionDescription(v string) *UpdateTemplateInput { + s.VersionDescription = &v + return s +} + +type UpdateTemplateOutput struct { _ struct{} `type:"structure"` - // The name of the group. - Group *Group `type:"structure"` + // The Amazon Resource Name (ARN) for the template. + Arn *string `type:"string"` + + // The creation status of the template. + CreationStatus *string `type:"string" enum:"ResourceStatus"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The ID for the template. + TemplateId *string `min:"1" type:"string"` + + // The ARN for the template, including the version information of the first + // version. + VersionArn *string `type:"string"` } // String returns the string representation -func (s UpdateGroupOutput) String() string { +func (s UpdateTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateGroupOutput) GoString() string { +func (s UpdateTemplateOutput) GoString() string { return s.String() } -// SetGroup sets the Group field's value. -func (s *UpdateGroupOutput) SetGroup(v *Group) *UpdateGroupOutput { - s.Group = v +// SetArn sets the Arn field's value. +func (s *UpdateTemplateOutput) SetArn(v string) *UpdateTemplateOutput { + s.Arn = &v + return s +} + +// SetCreationStatus sets the CreationStatus field's value. +func (s *UpdateTemplateOutput) SetCreationStatus(v string) *UpdateTemplateOutput { + s.CreationStatus = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateGroupOutput) SetRequestId(v string) *UpdateGroupOutput { +func (s *UpdateTemplateOutput) SetRequestId(v string) *UpdateTemplateOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateGroupOutput) SetStatus(v int64) *UpdateGroupOutput { +func (s *UpdateTemplateOutput) SetStatus(v int64) *UpdateTemplateOutput { s.Status = &v return s } -type UpdateIAMPolicyAssignmentInput struct { - _ struct{} `type:"structure"` +// SetTemplateId sets the TemplateId field's value. +func (s *UpdateTemplateOutput) SetTemplateId(v string) *UpdateTemplateOutput { + s.TemplateId = &v + return s +} - // The name of the assignment. This name must be unique within an AWS account. - // - // AssignmentName is a required field - AssignmentName *string `location:"uri" locationName:"AssignmentName" min:"1" type:"string" required:"true"` +// SetVersionArn sets the VersionArn field's value. +func (s *UpdateTemplateOutput) SetVersionArn(v string) *UpdateTemplateOutput { + s.VersionArn = &v + return s +} - // The status of the assignment. Possible values are as follows: - // - // * ENABLED - Anything specified in this assignment is used when creating - // the data source. - // - // * DISABLED - This assignment isn't used when creating the data source. - // - // * DRAFT - This assignment is an unfinished draft and isn't used when creating - // the data source. - AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` +type UpdateTemplatePermissionsInput struct { + _ struct{} `type:"structure"` - // The ID of the AWS account that contains the IAM policy assignment. + // The ID of the AWS account that contains the template. // // 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. - Identities map[string][]*string `type:"map"` + // A list of resource permissions to be granted on the template. + GrantPermissions []*ResourcePermission `type:"list"` - // The namespace of the assignment. - // - // Namespace is a required field - Namespace *string `location:"uri" locationName:"Namespace" type:"string" required:"true"` + // A list of resource permissions to be revoked from the template. + RevokePermissions []*ResourcePermission `type:"list"` - // The ARN for the IAM policy to apply to the QuickSight users and groups specified - // in this assignment. - PolicyArn *string `type:"string"` + // The ID for the template. + // + // TemplateId is a required field + TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s UpdateIAMPolicyAssignmentInput) String() string { +func (s UpdateTemplatePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateIAMPolicyAssignmentInput) GoString() string { +func (s UpdateTemplatePermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateIAMPolicyAssignmentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateIAMPolicyAssignmentInput"} - if s.AssignmentName == nil { - invalidParams.Add(request.NewErrParamRequired("AssignmentName")) - } - if s.AssignmentName != nil && len(*s.AssignmentName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AssignmentName", 1)) - } +func (s *UpdateTemplatePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTemplatePermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.Namespace == nil { - invalidParams.Add(request.NewErrParamRequired("Namespace")) + if s.TemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateId")) } - if s.Namespace != nil && len(*s.Namespace) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + if s.TemplateId != nil && len(*s.TemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + } + if s.GrantPermissions != nil { + for i, v := range s.GrantPermissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GrantPermissions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.RevokePermissions != nil { + for i, v := range s.RevokePermissions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RevokePermissions", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -22446,168 +26523,126 @@ func (s *UpdateIAMPolicyAssignmentInput) Validate() error { return nil } -// SetAssignmentName sets the AssignmentName field's value. -func (s *UpdateIAMPolicyAssignmentInput) SetAssignmentName(v string) *UpdateIAMPolicyAssignmentInput { - s.AssignmentName = &v - return s -} - -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *UpdateIAMPolicyAssignmentInput) SetAssignmentStatus(v string) *UpdateIAMPolicyAssignmentInput { - s.AssignmentStatus = &v - return s -} - // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateIAMPolicyAssignmentInput) SetAwsAccountId(v string) *UpdateIAMPolicyAssignmentInput { +func (s *UpdateTemplatePermissionsInput) SetAwsAccountId(v string) *UpdateTemplatePermissionsInput { s.AwsAccountId = &v return s } -// SetIdentities sets the Identities field's value. -func (s *UpdateIAMPolicyAssignmentInput) SetIdentities(v map[string][]*string) *UpdateIAMPolicyAssignmentInput { - s.Identities = v +// SetGrantPermissions sets the GrantPermissions field's value. +func (s *UpdateTemplatePermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateTemplatePermissionsInput { + s.GrantPermissions = v return s } -// SetNamespace sets the Namespace field's value. -func (s *UpdateIAMPolicyAssignmentInput) SetNamespace(v string) *UpdateIAMPolicyAssignmentInput { - s.Namespace = &v +// SetRevokePermissions sets the RevokePermissions field's value. +func (s *UpdateTemplatePermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateTemplatePermissionsInput { + s.RevokePermissions = v return s } -// SetPolicyArn sets the PolicyArn field's value. -func (s *UpdateIAMPolicyAssignmentInput) SetPolicyArn(v string) *UpdateIAMPolicyAssignmentInput { - s.PolicyArn = &v +// SetTemplateId sets the TemplateId field's value. +func (s *UpdateTemplatePermissionsInput) SetTemplateId(v string) *UpdateTemplatePermissionsInput { + s.TemplateId = &v return s } -type UpdateIAMPolicyAssignmentOutput struct { +type UpdateTemplatePermissionsOutput struct { _ struct{} `type:"structure"` - // The ID of the assignment. - AssignmentId *string `type:"string"` - - // The name of the assignment. - AssignmentName *string `min:"1" type:"string"` - - // The status of the assignment. Possible values are as follows: - // - // * ENABLED - Anything specified in this assignment is used when creating - // the data source. - // - // * DISABLED - This assignment isn't used when creating the data source. - // - // * DRAFT - This assignment is an unfinished draft and isn't used when creating - // the data source. - AssignmentStatus *string `type:"string" enum:"AssignmentStatus"` - - // The QuickSight users, groups, or both that the IAM policy 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. - PolicyArn *string `type:"string"` + // A list of resource permissions to be set on the template. + Permissions []*ResourcePermission `min:"1" type:"list"` // The AWS request ID for this operation. RequestId *string `type:"string"` // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` + + // The Amazon Resource Name (ARN) of the template. + TemplateArn *string `type:"string"` + + // The ID for the template. + TemplateId *string `min:"1" type:"string"` } // String returns the string representation -func (s UpdateIAMPolicyAssignmentOutput) String() string { +func (s UpdateTemplatePermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateIAMPolicyAssignmentOutput) GoString() string { +func (s UpdateTemplatePermissionsOutput) GoString() string { return s.String() } -// SetAssignmentId sets the AssignmentId field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetAssignmentId(v string) *UpdateIAMPolicyAssignmentOutput { - s.AssignmentId = &v - return s -} - -// SetAssignmentName sets the AssignmentName field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetAssignmentName(v string) *UpdateIAMPolicyAssignmentOutput { - s.AssignmentName = &v - return s -} - -// SetAssignmentStatus sets the AssignmentStatus field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetAssignmentStatus(v string) *UpdateIAMPolicyAssignmentOutput { - s.AssignmentStatus = &v +// SetPermissions sets the Permissions field's value. +func (s *UpdateTemplatePermissionsOutput) SetPermissions(v []*ResourcePermission) *UpdateTemplatePermissionsOutput { + s.Permissions = v return s } -// SetIdentities sets the Identities field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetIdentities(v map[string][]*string) *UpdateIAMPolicyAssignmentOutput { - s.Identities = v +// SetRequestId sets the RequestId field's value. +func (s *UpdateTemplatePermissionsOutput) SetRequestId(v string) *UpdateTemplatePermissionsOutput { + s.RequestId = &v return s } -// SetPolicyArn sets the PolicyArn field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetPolicyArn(v string) *UpdateIAMPolicyAssignmentOutput { - s.PolicyArn = &v +// SetStatus sets the Status field's value. +func (s *UpdateTemplatePermissionsOutput) SetStatus(v int64) *UpdateTemplatePermissionsOutput { + s.Status = &v return s } -// SetRequestId sets the RequestId field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetRequestId(v string) *UpdateIAMPolicyAssignmentOutput { - s.RequestId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateTemplatePermissionsOutput) SetTemplateArn(v string) *UpdateTemplatePermissionsOutput { + s.TemplateArn = &v return s } -// SetStatus sets the Status field's value. -func (s *UpdateIAMPolicyAssignmentOutput) SetStatus(v int64) *UpdateIAMPolicyAssignmentOutput { - s.Status = &v +// SetTemplateId sets the TemplateId field's value. +func (s *UpdateTemplatePermissionsOutput) SetTemplateId(v string) *UpdateTemplatePermissionsOutput { + s.TemplateId = &v return s } -type UpdateTemplateAliasInput struct { +type UpdateThemeAliasInput struct { _ struct{} `type:"structure"` - // The alias of the template that you want to update. If you name a specific - // alias, you update the version that the alias points to. You can specify the - // latest version of the template by providing the keyword $LATEST in the AliasName - // parameter. The keyword $PUBLISHED doesn't apply to templates. + // The name of the theme alias that you want to update. // // AliasName is a required field AliasName *string `location:"uri" locationName:"AliasName" min:"1" type:"string" required:"true"` - // The ID of the AWS account that contains the template alias that you're updating. + // The ID of the AWS 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"` - // The ID for the template. + // The ID for the theme. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` - // The version number of the template. + // The version number of the theme that the alias should reference. // - // TemplateVersionNumber is a required field - TemplateVersionNumber *int64 `min:"1" type:"long" required:"true"` + // ThemeVersionNumber is a required field + ThemeVersionNumber *int64 `min:"1" type:"long" required:"true"` } // String returns the string representation -func (s UpdateTemplateAliasInput) String() string { +func (s UpdateThemeAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateTemplateAliasInput) GoString() string { +func (s UpdateThemeAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateTemplateAliasInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateTemplateAliasInput"} +func (s *UpdateThemeAliasInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateThemeAliasInput"} if s.AliasName == nil { invalidParams.Add(request.NewErrParamRequired("AliasName")) } @@ -22620,17 +26655,17 @@ func (s *UpdateTemplateAliasInput) Validate() error { if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } - if s.TemplateVersionNumber == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateVersionNumber")) + if s.ThemeVersionNumber == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeVersionNumber")) } - if s.TemplateVersionNumber != nil && *s.TemplateVersionNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("TemplateVersionNumber", 1)) + if s.ThemeVersionNumber != nil && *s.ThemeVersionNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("ThemeVersionNumber", 1)) } if invalidParams.Len() > 0 { @@ -22640,30 +26675,30 @@ func (s *UpdateTemplateAliasInput) Validate() error { } // SetAliasName sets the AliasName field's value. -func (s *UpdateTemplateAliasInput) SetAliasName(v string) *UpdateTemplateAliasInput { +func (s *UpdateThemeAliasInput) SetAliasName(v string) *UpdateThemeAliasInput { s.AliasName = &v return s } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateTemplateAliasInput) SetAwsAccountId(v string) *UpdateTemplateAliasInput { +func (s *UpdateThemeAliasInput) SetAwsAccountId(v string) *UpdateThemeAliasInput { s.AwsAccountId = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *UpdateTemplateAliasInput) SetTemplateId(v string) *UpdateTemplateAliasInput { - s.TemplateId = &v +// SetThemeId sets the ThemeId field's value. +func (s *UpdateThemeAliasInput) SetThemeId(v string) *UpdateThemeAliasInput { + s.ThemeId = &v return s } -// SetTemplateVersionNumber sets the TemplateVersionNumber field's value. -func (s *UpdateTemplateAliasInput) SetTemplateVersionNumber(v int64) *UpdateTemplateAliasInput { - s.TemplateVersionNumber = &v +// SetThemeVersionNumber sets the ThemeVersionNumber field's value. +func (s *UpdateThemeAliasInput) SetThemeVersionNumber(v int64) *UpdateThemeAliasInput { + s.ThemeVersionNumber = &v return s } -type UpdateTemplateAliasOutput struct { +type UpdateThemeAliasOutput struct { _ struct{} `type:"structure"` // The AWS request ID for this operation. @@ -22672,115 +26707,106 @@ type UpdateTemplateAliasOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` - // The template alias. - TemplateAlias *TemplateAlias `type:"structure"` + // Information about the theme alias. + ThemeAlias *ThemeAlias `type:"structure"` } // String returns the string representation -func (s UpdateTemplateAliasOutput) String() string { +func (s UpdateThemeAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateTemplateAliasOutput) GoString() string { +func (s UpdateThemeAliasOutput) GoString() string { return s.String() } // SetRequestId sets the RequestId field's value. -func (s *UpdateTemplateAliasOutput) SetRequestId(v string) *UpdateTemplateAliasOutput { +func (s *UpdateThemeAliasOutput) SetRequestId(v string) *UpdateThemeAliasOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateTemplateAliasOutput) SetStatus(v int64) *UpdateTemplateAliasOutput { +func (s *UpdateThemeAliasOutput) SetStatus(v int64) *UpdateThemeAliasOutput { s.Status = &v return s } -// SetTemplateAlias sets the TemplateAlias field's value. -func (s *UpdateTemplateAliasOutput) SetTemplateAlias(v *TemplateAlias) *UpdateTemplateAliasOutput { - s.TemplateAlias = v +// SetThemeAlias sets the ThemeAlias field's value. +func (s *UpdateThemeAliasOutput) SetThemeAlias(v *ThemeAlias) *UpdateThemeAliasOutput { + s.ThemeAlias = v return s } -type UpdateTemplateInput struct { +type UpdateThemeInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the template that you're updating. + // The ID of the AWS account that contains the theme that you're updating. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // The name for the template. - Name *string `min:"1" type:"string"` - - // 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 AWS Account and any QuickSight-supported - // AWS 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 theme ID, defined by Amazon QuickSight, that a custom theme inherits + // from. All themes initially inherit from a default QuickSight theme. // - // SourceEntity is a required field - SourceEntity *TemplateSourceEntity `type:"structure" required:"true"` + // BaseThemeId is a required field + BaseThemeId *string `min:"1" type:"string" required:"true"` - // The ID for the template. + // The theme configuration, which contains the theme display properties. + Configuration *ThemeConfiguration `type:"structure"` + + // The name for the theme. + Name *string `min:"1" type:"string"` + + // The ID for the theme. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` - // A description of the current template version that is being updated. Every - // time you call UpdateTemplate, you create a new version of the template. Each - // version of the template maintains a description of the version in the VersionDescription - // field. + // A description of the theme version that you're updating Every time that you + // call UpdateTheme, you create a new version of the theme. Each version of + // the theme maintains a description of the version in VersionDescription. VersionDescription *string `min:"1" type:"string"` } // String returns the string representation -func (s UpdateTemplateInput) String() string { +func (s UpdateThemeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateTemplateInput) GoString() string { +func (s UpdateThemeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateTemplateInput"} +func (s *UpdateThemeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateThemeInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } + if s.BaseThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("BaseThemeId")) + } + if s.BaseThemeId != nil && len(*s.BaseThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaseThemeId", 1)) + } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } - if s.SourceEntity == nil { - invalidParams.Add(request.NewErrParamRequired("SourceEntity")) - } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if s.VersionDescription != nil && len(*s.VersionDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionDescription", 1)) } - if s.SourceEntity != nil { - if err := s.SourceEntity.Validate(); err != nil { - invalidParams.AddNested("SourceEntity", err.(request.ErrInvalidParams)) - } - } if invalidParams.Len() > 0 { return invalidParams @@ -22789,42 +26815,48 @@ func (s *UpdateTemplateInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateTemplateInput) SetAwsAccountId(v string) *UpdateTemplateInput { +func (s *UpdateThemeInput) SetAwsAccountId(v string) *UpdateThemeInput { s.AwsAccountId = &v return s } -// SetName sets the Name field's value. -func (s *UpdateTemplateInput) SetName(v string) *UpdateTemplateInput { - s.Name = &v +// SetBaseThemeId sets the BaseThemeId field's value. +func (s *UpdateThemeInput) SetBaseThemeId(v string) *UpdateThemeInput { + s.BaseThemeId = &v return s } -// SetSourceEntity sets the SourceEntity field's value. -func (s *UpdateTemplateInput) SetSourceEntity(v *TemplateSourceEntity) *UpdateTemplateInput { - s.SourceEntity = v +// SetConfiguration sets the Configuration field's value. +func (s *UpdateThemeInput) SetConfiguration(v *ThemeConfiguration) *UpdateThemeInput { + s.Configuration = v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *UpdateTemplateInput) SetTemplateId(v string) *UpdateTemplateInput { - s.TemplateId = &v +// SetName sets the Name field's value. +func (s *UpdateThemeInput) SetName(v string) *UpdateThemeInput { + s.Name = &v + return s +} + +// SetThemeId sets the ThemeId field's value. +func (s *UpdateThemeInput) SetThemeId(v string) *UpdateThemeInput { + s.ThemeId = &v return s } // SetVersionDescription sets the VersionDescription field's value. -func (s *UpdateTemplateInput) SetVersionDescription(v string) *UpdateTemplateInput { +func (s *UpdateThemeInput) SetVersionDescription(v string) *UpdateThemeInput { s.VersionDescription = &v return s } -type UpdateTemplateOutput struct { +type UpdateThemeOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the template. + // The Amazon Resource Name (ARN) for the theme. Arn *string `type:"string"` - // The creation status of the template. + // The creation status of the theme. CreationStatus *string `type:"string" enum:"ResourceStatus"` // The AWS request ID for this operation. @@ -22833,110 +26865,103 @@ type UpdateTemplateOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` - // The ID for the template. - TemplateId *string `min:"1" type:"string"` + // The ID for the theme. + ThemeId *string `min:"1" type:"string"` - // The ARN for the template, including the version information of the first - // version. + // The Amazon Resource Name (ARN) for the new version of the theme. VersionArn *string `type:"string"` } // String returns the string representation -func (s UpdateTemplateOutput) String() string { +func (s UpdateThemeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateTemplateOutput) GoString() string { +func (s UpdateThemeOutput) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *UpdateTemplateOutput) SetArn(v string) *UpdateTemplateOutput { +func (s *UpdateThemeOutput) SetArn(v string) *UpdateThemeOutput { s.Arn = &v return s } // SetCreationStatus sets the CreationStatus field's value. -func (s *UpdateTemplateOutput) SetCreationStatus(v string) *UpdateTemplateOutput { +func (s *UpdateThemeOutput) SetCreationStatus(v string) *UpdateThemeOutput { s.CreationStatus = &v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateTemplateOutput) SetRequestId(v string) *UpdateTemplateOutput { +func (s *UpdateThemeOutput) SetRequestId(v string) *UpdateThemeOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateTemplateOutput) SetStatus(v int64) *UpdateTemplateOutput { +func (s *UpdateThemeOutput) SetStatus(v int64) *UpdateThemeOutput { s.Status = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *UpdateTemplateOutput) SetTemplateId(v string) *UpdateTemplateOutput { - s.TemplateId = &v +// SetThemeId sets the ThemeId field's value. +func (s *UpdateThemeOutput) SetThemeId(v string) *UpdateThemeOutput { + s.ThemeId = &v return s } // SetVersionArn sets the VersionArn field's value. -func (s *UpdateTemplateOutput) SetVersionArn(v string) *UpdateTemplateOutput { +func (s *UpdateThemeOutput) SetVersionArn(v string) *UpdateThemeOutput { s.VersionArn = &v return s } -type UpdateTemplatePermissionsInput struct { +type UpdateThemePermissionsInput struct { _ struct{} `type:"structure"` - // The ID of the AWS account that contains the template. + // The ID of the AWS account that contains the theme. // // AwsAccountId is a required field AwsAccountId *string `location:"uri" locationName:"AwsAccountId" min:"12" type:"string" required:"true"` - // A list of resource permissions to be granted on the template. - GrantPermissions []*ResourcePermission `min:"1" type:"list"` + // A list of resource permissions to be granted for the theme. + GrantPermissions []*ResourcePermission `type:"list"` - // A list of resource permissions to be revoked from the template. - RevokePermissions []*ResourcePermission `min:"1" type:"list"` + // A list of resource permissions to be revoked from the theme. + RevokePermissions []*ResourcePermission `type:"list"` - // The ID for the template. + // The ID for the theme. // - // TemplateId is a required field - TemplateId *string `location:"uri" locationName:"TemplateId" min:"1" type:"string" required:"true"` + // ThemeId is a required field + ThemeId *string `location:"uri" locationName:"ThemeId" min:"1" type:"string" required:"true"` } // String returns the string representation -func (s UpdateTemplatePermissionsInput) String() string { +func (s UpdateThemePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateTemplatePermissionsInput) GoString() string { +func (s UpdateThemePermissionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateTemplatePermissionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateTemplatePermissionsInput"} +func (s *UpdateThemePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateThemePermissionsInput"} if s.AwsAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AwsAccountId")) } if s.AwsAccountId != nil && len(*s.AwsAccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AwsAccountId", 12)) } - if s.GrantPermissions != nil && len(s.GrantPermissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("GrantPermissions", 1)) - } - if s.RevokePermissions != nil && len(s.RevokePermissions) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RevokePermissions", 1)) - } - if s.TemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("TemplateId")) + if s.ThemeId == nil { + invalidParams.Add(request.NewErrParamRequired("ThemeId")) } - if s.TemplateId != nil && len(*s.TemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TemplateId", 1)) + if s.ThemeId != nil && len(*s.ThemeId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ThemeId", 1)) } if s.GrantPermissions != nil { for i, v := range s.GrantPermissions { @@ -22966,33 +26991,33 @@ func (s *UpdateTemplatePermissionsInput) Validate() error { } // SetAwsAccountId sets the AwsAccountId field's value. -func (s *UpdateTemplatePermissionsInput) SetAwsAccountId(v string) *UpdateTemplatePermissionsInput { +func (s *UpdateThemePermissionsInput) SetAwsAccountId(v string) *UpdateThemePermissionsInput { s.AwsAccountId = &v return s } // SetGrantPermissions sets the GrantPermissions field's value. -func (s *UpdateTemplatePermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateTemplatePermissionsInput { +func (s *UpdateThemePermissionsInput) SetGrantPermissions(v []*ResourcePermission) *UpdateThemePermissionsInput { s.GrantPermissions = v return s } // SetRevokePermissions sets the RevokePermissions field's value. -func (s *UpdateTemplatePermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateTemplatePermissionsInput { +func (s *UpdateThemePermissionsInput) SetRevokePermissions(v []*ResourcePermission) *UpdateThemePermissionsInput { s.RevokePermissions = v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *UpdateTemplatePermissionsInput) SetTemplateId(v string) *UpdateTemplatePermissionsInput { - s.TemplateId = &v +// SetThemeId sets the ThemeId field's value. +func (s *UpdateThemePermissionsInput) SetThemeId(v string) *UpdateThemePermissionsInput { + s.ThemeId = &v return s } -type UpdateTemplatePermissionsOutput struct { +type UpdateThemePermissionsOutput struct { _ struct{} `type:"structure"` - // A list of resource permissions to be set on the template. + // The resulting list of resource permissions for the theme. Permissions []*ResourcePermission `min:"1" type:"list"` // The AWS request ID for this operation. @@ -23001,50 +27026,50 @@ type UpdateTemplatePermissionsOutput struct { // The HTTP status of the request. Status *int64 `location:"statusCode" type:"integer"` - // The Amazon Resource Name (ARN) of the template. - TemplateArn *string `type:"string"` + // The Amazon Resource Name (ARN) of the theme. + ThemeArn *string `type:"string"` - // The ID for the template. - TemplateId *string `min:"1" type:"string"` + // The ID for the theme. + ThemeId *string `min:"1" type:"string"` } // String returns the string representation -func (s UpdateTemplatePermissionsOutput) String() string { +func (s UpdateThemePermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s UpdateTemplatePermissionsOutput) GoString() string { +func (s UpdateThemePermissionsOutput) GoString() string { return s.String() } // SetPermissions sets the Permissions field's value. -func (s *UpdateTemplatePermissionsOutput) SetPermissions(v []*ResourcePermission) *UpdateTemplatePermissionsOutput { +func (s *UpdateThemePermissionsOutput) SetPermissions(v []*ResourcePermission) *UpdateThemePermissionsOutput { s.Permissions = v return s } // SetRequestId sets the RequestId field's value. -func (s *UpdateTemplatePermissionsOutput) SetRequestId(v string) *UpdateTemplatePermissionsOutput { +func (s *UpdateThemePermissionsOutput) SetRequestId(v string) *UpdateThemePermissionsOutput { s.RequestId = &v return s } // SetStatus sets the Status field's value. -func (s *UpdateTemplatePermissionsOutput) SetStatus(v int64) *UpdateTemplatePermissionsOutput { +func (s *UpdateThemePermissionsOutput) SetStatus(v int64) *UpdateThemePermissionsOutput { s.Status = &v return s } -// SetTemplateArn sets the TemplateArn field's value. -func (s *UpdateTemplatePermissionsOutput) SetTemplateArn(v string) *UpdateTemplatePermissionsOutput { - s.TemplateArn = &v +// SetThemeArn sets the ThemeArn field's value. +func (s *UpdateThemePermissionsOutput) SetThemeArn(v string) *UpdateThemePermissionsOutput { + s.ThemeArn = &v return s } -// SetTemplateId sets the TemplateId field's value. -func (s *UpdateTemplatePermissionsOutput) SetTemplateId(v string) *UpdateTemplatePermissionsOutput { - s.TemplateId = &v +// SetThemeId sets the ThemeId field's value. +func (s *UpdateThemePermissionsOutput) SetThemeId(v string) *UpdateThemePermissionsOutput { + s.ThemeId = &v return s } @@ -23986,6 +28011,22 @@ const ( TextQualifierSingleQuote = "SINGLE_QUOTE" ) +const ( + // ThemeErrorTypeInternalFailure is a ThemeErrorType enum value + ThemeErrorTypeInternalFailure = "INTERNAL_FAILURE" +) + +const ( + // ThemeTypeQuicksight is a ThemeType enum value + ThemeTypeQuicksight = "QUICKSIGHT" + + // ThemeTypeCustom is a ThemeType enum value + ThemeTypeCustom = "CUSTOM" + + // ThemeTypeAll is a ThemeType enum value + ThemeTypeAll = "ALL" +) + const ( // UserRoleAdmin is a UserRole enum value UserRoleAdmin = "ADMIN" diff --git a/vendor/github.com/aws/aws-sdk-go/service/rds/api.go b/vendor/github.com/aws/aws-sdk-go/service/rds/api.go index 980b7220c89..ce4d8a17a4a 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/rds/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/rds/api.go @@ -2236,10 +2236,6 @@ func (c *RDS) CreateDBProxyRequest(input *CreateDBProxyInput) (req *request.Requ // CreateDBProxy API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Creates a new DB proxy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3645,10 +3641,6 @@ func (c *RDS) DeleteDBProxyRequest(input *DeleteDBProxyInput) (req *request.Requ // DeleteDBProxy API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Deletes an existing proxy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -4320,10 +4312,6 @@ func (c *RDS) DeregisterDBProxyTargetsRequest(input *DeregisterDBProxyTargetsInp // DeregisterDBProxyTargets API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Remove the association between one or more DBProxyTarget data structures // and a DBProxyTargetGroup. // @@ -6560,10 +6548,6 @@ func (c *RDS) DescribeDBProxiesRequest(input *DescribeDBProxiesInput) (req *requ // DescribeDBProxies API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Returns information about DB proxies. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -6702,10 +6686,6 @@ func (c *RDS) DescribeDBProxyTargetGroupsRequest(input *DescribeDBProxyTargetGro // DescribeDBProxyTargetGroups API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Returns information about DB proxy target groups, represented by DBProxyTargetGroup // data structures. // @@ -6852,10 +6832,6 @@ func (c *RDS) DescribeDBProxyTargetsRequest(input *DescribeDBProxyTargetsInput) // DescribeDBProxyTargets API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Returns information about DBProxyTarget objects. This API supports pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -10658,6 +10634,12 @@ func (c *RDS) ModifyDBInstanceRequest(input *ModifyDBInstanceInput) (req *reques // // * ErrCodeBackupPolicyNotFoundFault "BackupPolicyNotFoundFault" // +// * ErrCodeKMSKeyNotAccessibleFault "KMSKeyNotAccessibleFault" +// An error occurred accessing an AWS KMS key. +// +// * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" +// The requested operation can't be performed while the cluster is in this state. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBInstance func (c *RDS) ModifyDBInstance(input *ModifyDBInstanceInput) (*ModifyDBInstanceOutput, error) { req, out := c.ModifyDBInstanceRequest(input) @@ -10825,10 +10807,6 @@ func (c *RDS) ModifyDBProxyRequest(input *ModifyDBProxyInput) (req *request.Requ // ModifyDBProxy API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Changes the settings for an existing DB proxy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -10916,10 +10894,6 @@ func (c *RDS) ModifyDBProxyTargetGroupRequest(input *ModifyDBProxyTargetGroupInp // ModifyDBProxyTargetGroup API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Modifies the properties of a DBProxyTargetGroup. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -11912,10 +11886,6 @@ func (c *RDS) RegisterDBProxyTargetsRequest(input *RegisterDBProxyTargetsInput) // RegisterDBProxyTargets API operation for Amazon Relational Database Service. // -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Associate one or more DBProxyTarget data structures with a DBProxyTargetGroup. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -15609,10 +15579,6 @@ func (s *CloudwatchLogsExportConfiguration) SetEnableLogTypes(v []*string) *Clou return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Specifies the settings that control the size and behavior of the connection // pool associated with a DBProxyTargetGroup. type ConnectionPoolConfiguration struct { @@ -15633,8 +15599,6 @@ type ConnectionPoolConfiguration struct { // statements, use semicolons as the separator. You can also include multiple // variables in a single SET statement, such as SET x=1, y=2. // - // InitQuery is not currently supported for PostgreSQL. - // // Default: no initialization query InitQuery *string `type:"string"` @@ -15708,10 +15672,6 @@ func (s *ConnectionPoolConfiguration) SetSessionPinningFilters(v []*string) *Con return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Displays the settings that control the size and behavior of the connection // pool associated with a DBProxyTarget. type ConnectionPoolConfigurationInfo struct { @@ -15728,8 +15688,6 @@ type ConnectionPoolConfigurationInfo struct { // is empty by default. For multiple statements, use semicolons as the separator. // You can also include multiple variables in a single SET statement, such as // SET x=1, y=2. - // - // InitQuery is not currently supported for PostgreSQL. InitQuery *string `type:"string"` // The maximum size of the connection pool for each target in a target group. @@ -18942,7 +18900,7 @@ type CreateDBInstanceReadReplicaInput struct { // The Active Directory directory ID to create the DB instance in. // - // For Oracle DB instances, Amazon RDS can use Kerberos Authentication to authenticate + // For Oracle DB instances, Amazon RDS can use Kerberos authentication to authenticate // users that connect to the DB instance. For more information, see Using Kerberos // Authentication with Amazon RDS for Oracle (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-kerberos.html) // in the Amazon RDS User Guide. @@ -22987,10 +22945,6 @@ func (s *DBParameterGroupStatus) SetParameterApplyStatus(v string) *DBParameterG return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // The data structure representing a proxy managed by the RDS Proxy. // // This data type is used as a response element in the DescribeDBProxies action. @@ -23154,10 +23108,6 @@ func (s *DBProxy) SetVpcSubnetIds(v []*string) *DBProxy { return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Contains the details for an RDS Proxy target. It represents an RDS DB instance // or Aurora DB cluster that the proxy can connect to. One or more targets are // associated with an RDS Proxy target group. @@ -23245,10 +23195,6 @@ func (s *DBProxyTarget) SetType(v string) *DBProxyTarget { return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Represents a set of RDS DB instances, Aurora DB clusters, or both that a // proxy can connect to. Currently, each target group is associated with exactly // one RDS DB instance or Aurora DB cluster. @@ -33147,7 +33093,7 @@ type ModifyDBInstanceInput struct { // SQL Server (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_SQLServerWinAuth.html) // in the Amazon RDS User Guide. // - // For Oracle DB instances, Amazon RDS can use Kerberos Authentication to authenticate + // For Oracle DB instances, Amazon RDS can use Kerberos authentication to authenticate // users that connect to the DB instance. For more information, see Using Kerberos // Authentication with Amazon RDS for Oracle (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-kerberos.html) // in the Amazon RDS User Guide. @@ -35416,6 +35362,13 @@ type OrderableDBInstanceOption struct { // Indicates whether a DB instance is Multi-AZ capable. MultiAZCapable *bool `type:"boolean"` + // Whether a DB instance supports RDS on Outposts. + // + // For more information about RDS on Outposts, see Amazon RDS on AWS Outposts + // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) + // in the Amazon RDS User Guide. + OutpostCapable *bool `type:"boolean"` + // Indicates whether a DB instance can have a read replica. ReadReplicaCapable *bool `type:"boolean"` @@ -35550,6 +35503,12 @@ func (s *OrderableDBInstanceOption) SetMultiAZCapable(v bool) *OrderableDBInstan return s } +// SetOutpostCapable sets the OutpostCapable field's value. +func (s *OrderableDBInstanceOption) SetOutpostCapable(v bool) *OrderableDBInstanceOption { + s.OutpostCapable = &v + return s +} + // SetReadReplicaCapable sets the ReadReplicaCapable field's value. func (s *OrderableDBInstanceOption) SetReadReplicaCapable(v bool) *OrderableDBInstanceOption { s.ReadReplicaCapable = &v @@ -35616,6 +35575,34 @@ func (s *OrderableDBInstanceOption) SetVpc(v bool) *OrderableDBInstanceOption { return s } +// A data type that represents an Outpost. +// +// For more information about RDS on Outposts, see Amazon RDS on AWS Outposts +// (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) +// in the Amazon RDS User Guide. +type Outpost struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Outpost. + Arn *string `type:"string"` +} + +// String returns the string representation +func (s Outpost) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Outpost) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Outpost) SetArn(v string) *Outpost { + s.Arn = &v + return s +} + // This data type is used as a request parameter in the ModifyDBParameterGroup // and ResetDBParameterGroup actions. // @@ -38758,7 +38745,7 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // SQL Server (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_SQLServerWinAuth.html) // in the Amazon RDS User Guide. // - // For Oracle DB instances, Amazon RDS can use Kerberos Authentication to authenticate + // For Oracle DB instances, Amazon RDS can use Kerberos authentication to authenticate // users that connect to the DB instance. For more information, see Using Kerberos // Authentication with Amazon RDS for Oracle (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-kerberos.html) // in the Amazon RDS User Guide. @@ -39849,7 +39836,7 @@ type RestoreDBInstanceToPointInTimeInput struct { // SQL Server (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_SQLServerWinAuth.html) // in the Amazon RDS User Guide. // - // For Oracle DB instances, Amazon RDS can use Kerberos Authentication to authenticate + // For Oracle DB instances, Amazon RDS can use Kerberos authentication to authenticate // users that connect to the DB instance. For more information, see Using Kerberos // Authentication with Amazon RDS for Oracle (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-kerberos.html) // in the Amazon RDS User Guide. @@ -41423,8 +41410,8 @@ func (s *StopDBInstanceOutput) SetDBInstance(v *DBInstance) *StopDBInstanceOutpu return s } -// This data type is used as a response element in the DescribeDBSubnetGroups -// action. +// This data type is used as a response element for the DescribeDBSubnetGroups +// operation. type Subnet struct { _ struct{} `type:"structure"` @@ -41434,10 +41421,17 @@ type Subnet struct { // type. SubnetAvailabilityZone *AvailabilityZone `type:"structure"` - // Specifies the identifier of the subnet. + // The identifier of the subnet. SubnetIdentifier *string `type:"string"` - // Specifies the status of the subnet. + // If the subnet is associated with an Outpost, this value specifies the Outpost. + // + // For more information about RDS on Outposts, see Amazon RDS on AWS Outposts + // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) + // in the Amazon RDS User Guide. + SubnetOutpost *Outpost `type:"structure"` + + // The status of the subnet. SubnetStatus *string `type:"string"` } @@ -41463,6 +41457,12 @@ func (s *Subnet) SetSubnetIdentifier(v string) *Subnet { return s } +// SetSubnetOutpost sets the SubnetOutpost field's value. +func (s *Subnet) SetSubnetOutpost(v *Outpost) *Subnet { + s.SubnetOutpost = v + return s +} + // SetSubnetStatus sets the SubnetStatus field's value. func (s *Subnet) SetSubnetStatus(v string) *Subnet { s.SubnetStatus = &v @@ -41508,10 +41508,6 @@ func (s *Tag) SetValue(v string) *Tag { return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Information about the connection health of an RDS Proxy target. type TargetHealth struct { _ struct{} `type:"structure"` @@ -41646,10 +41642,6 @@ func (s *UpgradeTarget) SetIsMajorVersionUpgrade(v bool) *UpgradeTarget { return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Specifies the details of authentication used by a proxy to log in as a specific // database user. type UserAuthConfig struct { @@ -41716,10 +41708,6 @@ func (s *UserAuthConfig) SetUserName(v string) *UserAuthConfig { return s } -// -// This is prerelease documentation for the RDS Database Proxy feature in preview -// release. It is subject to change. -// // Returns the details of authentication used by a proxy to log in as a specific // database user. type UserAuthConfigInfo struct { diff --git a/vendor/github.com/aws/aws-sdk-go/service/sagemaker/api.go b/vendor/github.com/aws/aws-sdk-go/service/sagemaker/api.go index 22a06ab6bb5..ef9d7ee7931 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/sagemaker/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/sagemaker/api.go @@ -306,12 +306,10 @@ func (c *SageMaker) CreateAppRequest(input *CreateAppInput) (req *request.Reques // CreateApp API operation for Amazon SageMaker Service. // -// Creates a running App for the specified UserProfile. Supported Apps are JupyterServer, -// KernelGateway, and TensorBoard. This operation is automatically invoked by -// Amazon SageMaker Studio upon access to the associated Domain, and when new -// kernel configurations are selected by the user. A user may have multiple -// Apps active simultaneously. UserProfiles are limited to 5 concurrently running -// Apps at a time. +// Creates a running App for the specified UserProfile. Supported Apps are JupyterServer +// and KernelGateway. This operation is automatically invoked by Amazon SageMaker +// Studio upon access to the associated Domain, and when new kernel configurations +// are selected by the user. A user may have multiple Apps active simultaneously. // // 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 @@ -3441,6 +3439,90 @@ func (c *SageMaker) DeleteFlowDefinitionWithContext(ctx aws.Context, input *Dele return out, req.Send() } +const opDeleteHumanTaskUi = "DeleteHumanTaskUi" + +// DeleteHumanTaskUiRequest generates a "aws/request.Request" representing the +// client's request for the DeleteHumanTaskUi 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 DeleteHumanTaskUi for more information on using the DeleteHumanTaskUi +// 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 DeleteHumanTaskUiRequest method. +// req, resp := client.DeleteHumanTaskUiRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteHumanTaskUi +func (c *SageMaker) DeleteHumanTaskUiRequest(input *DeleteHumanTaskUiInput) (req *request.Request, output *DeleteHumanTaskUiOutput) { + op := &request.Operation{ + Name: opDeleteHumanTaskUi, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteHumanTaskUiInput{} + } + + output = &DeleteHumanTaskUiOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteHumanTaskUi API operation for Amazon SageMaker Service. +// +// Use this operation to delete a worker task template (HumanTaskUi). +// +// To see a list of human task user interfaces (work task templates) in your +// account, use . When you delete a worker task template, it no longer appears +// when you call ListHumanTaskUis. +// +// 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 SageMaker Service's +// API operation DeleteHumanTaskUi for usage and error information. +// +// Returned Error Types: +// * ResourceNotFound +// Resource being access is not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteHumanTaskUi +func (c *SageMaker) DeleteHumanTaskUi(input *DeleteHumanTaskUiInput) (*DeleteHumanTaskUiOutput, error) { + req, out := c.DeleteHumanTaskUiRequest(input) + return out, req.Send() +} + +// DeleteHumanTaskUiWithContext is the same as DeleteHumanTaskUi with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteHumanTaskUi 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 *SageMaker) DeleteHumanTaskUiWithContext(ctx aws.Context, input *DeleteHumanTaskUiInput, opts ...request.Option) (*DeleteHumanTaskUiOutput, error) { + req, out := c.DeleteHumanTaskUiRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteModel = "DeleteModel" // DeleteModelRequest generates a "aws/request.Request" representing the @@ -5060,7 +5142,8 @@ func (c *SageMaker) DescribeHumanTaskUiRequest(input *DescribeHumanTaskUiInput) // DescribeHumanTaskUi API operation for Amazon SageMaker Service. // -// Returns information about the requested human task user interface. +// Returns information about the requested human task user interface (worker +// task template). // // 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 @@ -12745,7 +12828,7 @@ func (c *SageMaker) UpdateWorkforceRequest(input *UpdateWorkforceInput) (req *re // // Restricts access to tasks assigned to workers in the specified workforce // to those within specific ranges of IP addresses. You specify allowed IP addresses -// by creating a list of up to four CIDRs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html). +// by creating a list of up to ten CIDRs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html). // // By default, a workforce isn't restricted to specific IP addresses. If you // specify a range of IP addresses, workers who attempt to access tasks using @@ -13384,16 +13467,20 @@ func (s *AlgorithmValidationSpecification) SetValidationRole(v string) *Algorith return s } -// Configures how labels are consolidated across human workers. +// Configures how labels are consolidated across human workers and processes +// output data. type AnnotationConsolidationConfig struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of a Lambda function implements the logic - // for annotation consolidation. + // for annotation consolidation (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html) + // and to process output data. // - // For the built-in bounding box, image classification, semantic segmentation, - // and text classification task types, Amazon SageMaker Ground Truth provides - // the following Lambda functions: + // This parameter is required for all labeling jobs. For built-in task types + // (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html), use + // one of the following Amazon SageMaker Ground Truth Lambda function ARNs for + // AnnotationConsolidationLambdaArn. For custom labeling workflows, see Post-annotation + // Lambda (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step3.html#sms-custom-templates-step3-postlambda). // // Bounding box - Finds the most similar boxes from different workers based // on the Jaccard index of the boxes. @@ -13496,22 +13583,81 @@ type AnnotationConsolidationConfig struct { // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-NamedEntityRecognition // arn:aws:lambda:ca-central-1:918755190332:function:ACS-NamedEntityRecognition // - // Bounding box verification - Uses a variant of the Expectation Maximization - // approach to estimate the true class of verification judgement for bounding - // box labels based on annotations from individual workers. + // 3D point cloud object detection - Use this task type when you want workers + // to classify objects in a 3D point cloud by drawing 3D cuboids around objects. + // For example, you can use this task type to ask workers to identify different + // types of objects in a point cloud, such as cars, bikes, and pedestrians. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:us-east-2:266458841044:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:us-west-2:081040173940:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-3DPointCloudObjectDetection + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-3DPointCloudObjectDetection + // + // 3D point cloud object tracking - Use this task type when you want workers + // to draw 3D cuboids around objects that appear in a sequence of 3D point cloud + // frames. For example, you can use this task type to ask workers to track the + // movement of vehicles across multiple point cloud frames. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:us-east-2:266458841044:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:us-west-2:081040173940:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-3DPointCloudObjectTracking + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-3DPointCloudObjectTracking + // + // 3D point cloud semantic segmentation - Use this task type when you want workers + // to create a point-level semantic segmentation masks by painting objects in + // a 3D point cloud using different colors where each color is assigned to one + // of the classes you specify. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:us-east-2:266458841044:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:us-west-2:081040173940:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-3DPointCloudSemanticSegmentation + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-3DPointCloudSemanticSegmentation + // + // Use the following ARNs for Label Verification and Adjustment Jobs + // + // Use label verification and adjustment jobs to review and adjust labels. To + // learn more, see Verify and Adjust Labels (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-verification-data.html). // - // * arn:aws:lambda:us-east-1:432418664414:function:ACS-VerificationBoundingBox - // arn:aws:lambda:us-east-2:266458841044:function:ACS-VerificationBoundingBox - // arn:aws:lambda:us-west-2:081040173940:function:ACS-VerificationBoundingBox - // arn:aws:lambda:eu-west-1:568282634449:function:ACS-VerificationBoundingBox - // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-VerificationBoundingBox - // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-VerificationBoundingBox - // arn:aws:lambda:ap-south-1:565803892007:function:ACS-VerificationBoundingBox - // arn:aws:lambda:eu-central-1:203001061592:function:ACS-VerificationBoundingBox - // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-VerificationBoundingBox - // arn:aws:lambda:eu-west-2:487402164563:function:ACS-VerificationBoundingBox - // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-VerificationBoundingBox - // arn:aws:lambda:ca-central-1:918755190332:function:ACS-VerificationBoundingBox + // Semantic segmentation adjustment - Treats each pixel in an image as a multi-class + // classification and treats pixel adjusted annotations from workers as "votes" + // for the correct label. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:us-east-2:266458841044:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:us-west-2:081040173940:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-AdjustmentSemanticSegmentation + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-AdjustmentSemanticSegmentation // // Semantic segmentation verification - Uses a variant of the Expectation Maximization // approach to estimate the true class of verification judgment for semantic @@ -13530,6 +13676,23 @@ type AnnotationConsolidationConfig struct { // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-VerificationSemanticSegmentation // arn:aws:lambda:ca-central-1:918755190332:function:ACS-VerificationSemanticSegmentation // + // Bounding box verification - Uses a variant of the Expectation Maximization + // approach to estimate the true class of verification judgement for bounding + // box labels based on annotations from individual workers. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-VerificationBoundingBox + // arn:aws:lambda:us-east-2:266458841044:function:ACS-VerificationBoundingBox + // arn:aws:lambda:us-west-2:081040173940:function:ACS-VerificationBoundingBox + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-VerificationBoundingBox + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-VerificationBoundingBox + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-VerificationBoundingBox + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-VerificationBoundingBox + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-VerificationBoundingBox + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-VerificationBoundingBox + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-VerificationBoundingBox + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-VerificationBoundingBox + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-VerificationBoundingBox + // // Bounding box adjustment - Finds the most similar boxes from different workers // based on the Jaccard index of the adjusted annotations. // @@ -13546,24 +13709,55 @@ type AnnotationConsolidationConfig struct { // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-AdjustmentBoundingBox // arn:aws:lambda:ca-central-1:918755190332:function:ACS-AdjustmentBoundingBox // - // Semantic segmentation adjustment - Treats each pixel in an image as a multi-class - // classification and treats pixel adjusted annotations from workers as "votes" - // for the correct label. - // - // * arn:aws:lambda:us-east-1:432418664414:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:us-east-2:266458841044:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:us-west-2:081040173940:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:eu-west-1:568282634449:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:ap-south-1:565803892007:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:eu-central-1:203001061592:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:eu-west-2:487402164563:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-AdjustmentSemanticSegmentation - // arn:aws:lambda:ca-central-1:918755190332:function:ACS-AdjustmentSemanticSegmentation - // - // For more information, see Annotation Consolidation (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html). + // 3D point cloud object detection adjustment - Use this task type when you + // want workers to adjust 3D cuboids around objects in a 3D point cloud. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:us-east-2:266458841044:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:us-west-2:081040173940:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-Adjustment3DPointCloudObjectDetection + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-Adjustment3DPointCloudObjectDetection + // + // 3D point cloud object tracking adjustment - Use this task type when you want + // workers to adjust 3D cuboids around objects that appear in a sequence of + // 3D point cloud frames. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:us-east-2:266458841044:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:us-west-2:081040173940:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-Adjustment3DPointCloudObjectTracking + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-Adjustment3DPointCloudObjectTracking + // + // 3D point cloud semantic segmentation adjustment - Use this task type when + // you want workers to adjust a point-level semantic segmentation masks using + // a paint tool. + // + // * arn:aws:lambda:us-east-1:432418664414:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:us-east-2:266458841044:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:us-west-2:081040173940:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:eu-west-1:568282634449:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-south-1:565803892007:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:eu-central-1:203001061592:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:eu-west-2:487402164563:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-Adjustment3DPointCloudSemanticSegmentation + // arn:aws:lambda:ca-central-1:918755190332:function:ACS-Adjustment3DPointCloudSemanticSegmentation // // AnnotationConsolidationLambdaArn is a required field AnnotationConsolidationLambdaArn *string `type:"string" required:"true"` @@ -17484,7 +17678,14 @@ type CreateLabelingJobInput struct { // The S3 URL of the file that defines the categories used to label the data // objects. // - // The file is a JSON structure in the following format: + // For 3D point cloud task types, see Create a Labeling Category Configuration + // File for 3D Point Cloud Labeling Jobs (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-label-category-config.html). + // + // For all other built-in task types (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) + // and custom tasks (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html), + // your label category configuration file must be a JSON file in the following + // format. Identify the labels you want to use by replacing label_1, label_2,...,label_n + // with your label categories. // // { // @@ -17494,13 +17695,13 @@ type CreateLabelingJobInput struct { // // { // - // "label": "label 1" + // "label": "label_1" // // }, // // { // - // "label": "label 2" + // "label": "label_2" // // }, // @@ -17508,7 +17709,7 @@ type CreateLabelingJobInput struct { // // { // - // "label": "label n" + // "label": "label_n" // // } // @@ -21150,6 +21351,62 @@ func (s DeleteFlowDefinitionOutput) GoString() string { return s.String() } +type DeleteHumanTaskUiInput struct { + _ struct{} `type:"structure"` + + // The name of the human task user interface (work task template) you want to + // delete. + // + // HumanTaskUiName is a required field + HumanTaskUiName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteHumanTaskUiInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteHumanTaskUiInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteHumanTaskUiInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteHumanTaskUiInput"} + if s.HumanTaskUiName == nil { + invalidParams.Add(request.NewErrParamRequired("HumanTaskUiName")) + } + if s.HumanTaskUiName != nil && len(*s.HumanTaskUiName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HumanTaskUiName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHumanTaskUiName sets the HumanTaskUiName field's value. +func (s *DeleteHumanTaskUiInput) SetHumanTaskUiName(v string) *DeleteHumanTaskUiInput { + s.HumanTaskUiName = &v + return s +} + +type DeleteHumanTaskUiOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteHumanTaskUiOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteHumanTaskUiOutput) GoString() string { + return s.String() +} + type DeleteModelInput struct { _ struct{} `type:"structure"` @@ -23379,6 +23636,7 @@ type DescribeFlowDefinitionOutput struct { // CreationTime is a required field CreationTime *time.Time `type:"timestamp" required:"true"` + // The reason your flow definition failed. FailureReason *string `type:"string"` // The Amazon Resource Name (ARN) of the flow defintion. @@ -23494,7 +23752,8 @@ func (s *DescribeFlowDefinitionOutput) SetRoleArn(v string) *DescribeFlowDefinit type DescribeHumanTaskUiInput struct { _ struct{} `type:"structure"` - // The name of the human task user interface you want information about. + // The name of the human task user interface (worker task template) you want + // information about. // // HumanTaskUiName is a required field HumanTaskUiName *string `min:"1" type:"string" required:"true"` @@ -23540,16 +23799,21 @@ type DescribeHumanTaskUiOutput struct { // CreationTime is a required field CreationTime *time.Time `type:"timestamp" required:"true"` - // The Amazon Resource Name (ARN) of the human task user interface. + // The Amazon Resource Name (ARN) of the human task user interface (worker task + // template). // // HumanTaskUiArn is a required field HumanTaskUiArn *string `type:"string" required:"true"` - // The name of the human task user interface. + // The name of the human task user interface (worker task template). // // HumanTaskUiName is a required field HumanTaskUiName *string `min:"1" type:"string" required:"true"` + // The status of the human task user interface (worker task template). Valid + // values are listed below. + HumanTaskUiStatus *string `type:"string" enum:"HumanTaskUiStatus"` + // Container for user interface template information. // // UiTemplate is a required field @@ -23584,6 +23848,12 @@ func (s *DescribeHumanTaskUiOutput) SetHumanTaskUiName(v string) *DescribeHumanT return s } +// SetHumanTaskUiStatus sets the HumanTaskUiStatus field's value. +func (s *DescribeHumanTaskUiOutput) SetHumanTaskUiStatus(v string) *DescribeHumanTaskUiOutput { + s.HumanTaskUiStatus = &v + return s +} + // SetUiTemplate sets the UiTemplate field's value. func (s *DescribeHumanTaskUiOutput) SetUiTemplate(v *UiTemplateInfo) *DescribeHumanTaskUiOutput { s.UiTemplate = v @@ -23593,7 +23863,7 @@ func (s *DescribeHumanTaskUiOutput) SetUiTemplate(v *UiTemplateInfo) *DescribeHu type DescribeHyperParameterTuningJobInput struct { _ struct{} `type:"structure"` - // The name of the tuning job to describe. + // The name of the tuning job. // // HyperParameterTuningJobName is a required field HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"` @@ -28545,9 +28815,10 @@ type HumanTaskConfig struct { // data object is sent to a human worker. Use this function to provide input // to a custom labeling job. // - // For the built-in bounding box, image classification, semantic segmentation, - // and text classification task types, Amazon SageMaker Ground Truth provides - // the following Lambda functions: + // For built-in task types (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html), + // use one of the following Amazon SageMaker Ground Truth Lambda function ARNs + // for PreHumanTaskLambdaArn. For custom labeling workflows, see Pre-annotation + // Lambda (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step3.html#sms-custom-templates-step3-prelambda). // // Bounding box - Finds the most similar boxes from different workers based // on the Jaccard index of the boxes. @@ -28741,33 +29012,131 @@ type HumanTaskConfig struct { // // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-NamedEntityRecognition // + // 3D Point Cloud Modalities + // + // Use the following pre-annotation lambdas for 3D point cloud labeling modality + // tasks. See 3D Point Cloud Task types (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-task-types.html) + // to learn more. + // + // 3D Point Cloud Object Detection - Use this task type when you want workers + // to classify objects in a 3D point cloud by drawing 3D cuboids around objects. + // For example, you can use this task type to ask workers to identify different + // types of objects in a point cloud, such as cars, bikes, and pedestrians. + // + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-3DPointCloudObjectDetection + // + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-3DPointCloudObjectDetection + // + // 3D Point Cloud Object Tracking - Use this task type when you want workers + // to draw 3D cuboids around objects that appear in a sequence of 3D point cloud + // frames. For example, you can use this task type to ask workers to track the + // movement of vehicles across multiple point cloud frames. + // + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-3DPointCloudObjectTracking + // + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-3DPointCloudObjectTracking + // + // 3D Point Cloud Semantic Segmentation - Use this task type when you want workers + // to create a point-level semantic segmentation masks by painting objects in + // a 3D point cloud using different colors where each color is assigned to one + // of the classes you specify. + // + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-3DPointCloudSemanticSegmentation + // + // Use the following ARNs for Label Verification and Adjustment Jobs + // + // Use label verification and adjustment jobs to review and adjust labels. To + // learn more, see Verify and Adjust Labels (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-verification-data.html). + // // Bounding box verification - Uses a variant of the Expectation Maximization // approach to estimate the true class of verification judgement for bounding // box labels based on annotations from individual workers. // - // * arn:aws:lambda:us-east-1:432418664414:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:us-east-2:266458841044:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:us-west-2:081040173940:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-Adjustment3DPointCloudObjectTracking // - // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-VerificationBoundingBox + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-Adjustment3DPointCloudObjectTracking // // Bounding box adjustment - Finds the most similar boxes from different workers // based on the Jaccard index of the adjusted annotations. @@ -28852,6 +29221,87 @@ type HumanTaskConfig struct { // // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-AdjustmentSemanticSegmentation // + // 3D point cloud object detection adjustment - Adjust 3D cuboids in a point + // cloud frame. + // + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-Adjustment3DPointCloudObjectDetection + // + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-Adjustment3DPointCloudObjectDetection + // + // 3D point cloud object tracking adjustment - Adjust 3D cuboids across a sequence + // of point cloud frames. + // + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-Adjustment3DPointCloudObjectTracking + // + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-Adjustment3DPointCloudObjectTracking + // + // 3D point cloud semantic segmentation adjustment - Adjust semantic segmentation + // masks in a 3D point cloud. + // + // * arn:aws:lambda:us-east-1:432418664414:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:us-east-2:266458841044:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:us-west-2:081040173940:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:eu-west-1:568282634449:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-south-1:565803892007:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:eu-central-1:203001061592:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-northeast-2:845288260483:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:eu-west-2:487402164563:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ap-southeast-1:377565633583:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // + // * arn:aws:lambda:ca-central-1:918755190332:function:PRE-Adjustment3DPointCloudSemanticSegmentation + // // PreHumanTaskLambdaArn is a required field PreHumanTaskLambdaArn *string `type:"string" required:"true"` @@ -39408,6 +39858,8 @@ type RenderUiTemplateInput struct { // The HumanTaskUiArn of the worker UI that you want to render. Do not provide // a HumanTaskUiArn if you use the UiTemplate parameter. + // + // See a list of available Human Ui Amazon Resource Names (ARNs) in UiConfig. HumanTaskUiArn *string `type:"string"` // The Amazon Resource Name (ARN) that has access to the S3 objects that are @@ -40111,18 +40563,22 @@ type S3DataSource struct { // Depending on the value specified for the S3DataType, identifies either a // key name prefix or a manifest. For example: // - // * A key name prefix might look like this: s3://bucketname/exampleprefix. + // * A key name prefix might look like this: s3://bucketname/exampleprefix // - // * A manifest might look like this: s3://bucketname/example.manifest The - // manifest is an S3 object which is a JSON file with the following format: - // The preceding JSON matches the following s3Uris: [ {"prefix": "s3://customer_bucket/some/prefix/"}, + // * A manifest might look like this: s3://bucketname/example.manifest A + // manifest is an S3 object which is a JSON file consisting of an array of + // elements. The first element is a prefix which is followed by one or more + // suffixes. SageMaker appends the suffix elements to the prefix to get a + // full set of S3Uri. Note that the prefix must be a valid non-empty S3Uri + // that precludes users from specifying a manifest whose individual S3Uri + // is sourced from different S3 buckets. The following code example shows + // a valid manifest format: [ {"prefix": "s3://customer_bucket/some/prefix/"}, // "relative/path/to/custdata-1", "relative/path/custdata-2", ... "relative/path/custdata-N" - // ] The preceding JSON matches the following s3Uris: s3://customer_bucket/some/prefix/relative/path/to/custdata-1 + // ] This JSON is equivalent to the following S3Uri list: s3://customer_bucket/some/prefix/relative/path/to/custdata-1 // s3://customer_bucket/some/prefix/relative/path/custdata-2 ... s3://customer_bucket/some/prefix/relative/path/custdata-N - // The complete set of s3uris in this manifest is the input data for the - // channel for this datasource. The object that each s3uris points to must - // be readable by the IAM role that Amazon SageMaker uses to perform tasks - // on your behalf. + // The complete set of S3Uri in this manifest is the input data for the channel + // for this data source. The object that each S3Uri points to must be readable + // by the IAM role that Amazon SageMaker uses to perform tasks on your behalf. // // S3Uri is a required field S3Uri *string `type:"string" required:"true"` @@ -40917,10 +41373,10 @@ func (s *SourceAlgorithmSpecification) SetSourceAlgorithms(v []*SourceAlgorithm) type SourceIpConfig struct { _ struct{} `type:"structure"` - // A list of one to four Classless Inter-Domain Routing (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html) + // A list of one to ten Classless Inter-Domain Routing (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html) // (CIDR) values. // - // Maximum: Four CIDR values + // Maximum: Ten CIDR values // // The following Length Constraints apply to individual CIDR values in the CIDR // value list. @@ -41634,6 +42090,7 @@ func (s *StoppingCondition) SetMaxWaitTimeInSeconds(v int64) *StoppingCondition type SubscribedWorkteam struct { _ struct{} `type:"structure"` + // Marketplace product listing ID. ListingId *string `type:"string"` // The description of the vendor from the Amazon Marketplace. @@ -44345,7 +44802,28 @@ type UiConfig struct { _ struct{} `type:"structure"` // The ARN of the worker task template used to render the worker UI and tools - // for labeling job tasks. Do not use this parameter if you use UiTemplateS3Uri. + // for labeling job tasks. + // + // Use this parameter when you are creating a labeling job for 3D point cloud + // labeling modalities. Use your labeling job task type to select one of the + // following ARN's and use it with this parameter when you create a labeling + // job. Replace aws-region with the AWS region you are creating your labeling + // job in. + // + // Use this HumanTaskUiArn for 3D point cloud object detection and 3D point + // cloud object detection adjustment labeling jobs. + // + // * arn:aws:sagemaker:aws-region:394669845002:human-task-ui/PointCloudObjectDetection + // + // Use this HumanTaskUiArn for 3D point cloud object tracking and 3D point cloud + // object tracking adjustment labeling jobs. + // + // * arn:aws:sagemaker:aws-region:394669845002:human-task-ui/PointCloudObjectTracking + // + // Use this HumanTaskUiArn for 3D point cloud semantic segmentation and 3D point + // cloud semantic segmentation adjustment labeling jobs. + // + // * arn:aws:sagemaker:aws-region:394669845002:human-task-ui/PointCloudSemanticSegmentation HumanTaskUiArn *string `type:"string"` // The Amazon S3 bucket location of the UI template, or worker task template. @@ -45641,10 +46119,10 @@ func (s *UpdateUserProfileOutput) SetUserProfileArn(v string) *UpdateUserProfile type UpdateWorkforceInput struct { _ struct{} `type:"structure"` - // A list of one to four worker IP address ranges (CIDRs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)) + // A list of one to ten worker IP address ranges (CIDRs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)) // that can be used to access tasks assigned to this workforce. // - // Maximum: Four CIDR values + // Maximum: Ten CIDR values SourceIpConfig *SourceIpConfig `type:"structure"` // The name of the private workforce whose access you want to restrict. WorkforceName @@ -46151,7 +46629,7 @@ type Workforce struct { // to a private workforce's allow list. LastUpdatedDate *time.Time `type:"timestamp"` - // A list of one to four IP address ranges (CIDRs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)) + // A list of one to ten IP address ranges (CIDRs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)) // to be added to the workforce allow list. SourceIpConfig *SourceIpConfig `type:"structure"` @@ -46891,6 +47369,14 @@ const ( FrameworkTflite = "TFLITE" ) +const ( + // HumanTaskUiStatusActive is a HumanTaskUiStatus enum value + HumanTaskUiStatusActive = "Active" + + // HumanTaskUiStatusDeleting is a HumanTaskUiStatus enum value + HumanTaskUiStatusDeleting = "Deleting" +) + const ( // HyperParameterScalingTypeAuto is a HyperParameterScalingType enum value HyperParameterScalingTypeAuto = "Auto" diff --git a/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/api.go b/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/api.go index 7dfecc65803..c6e769105bc 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/api.go @@ -58,28 +58,28 @@ func (c *SecretsManager) CancelRotateSecretRequest(input *CancelRotateSecretInpu // CancelRotateSecret API operation for AWS Secrets Manager. // // Disables automatic scheduled rotation and cancels the rotation of a secret -// if one is currently in progress. +// if currently in progress. // // To re-enable scheduled rotation, call RotateSecret with AutomaticallyRotateAfterDays -// set to a value greater than 0. This will immediately rotate your secret and -// then enable the automatic schedule. +// set to a value greater than 0. This immediately rotates your secret and then +// enables the automatic schedule. // -// If you cancel a rotation that is in progress, it can leave the VersionStage -// labels in an unexpected state. Depending on what step of the rotation was -// in progress, you might need to remove the staging label AWSPENDING from the -// partially created version, specified by the VersionId response value. You -// should also evaluate the partially rotated new version to see if it should -// be deleted, which you can do by removing all staging labels from the new -// version's VersionStage field. +// If you cancel a rotation while in progress, it can leave the VersionStage +// labels in an unexpected state. Depending on the step of the rotation in progress, +// you might need to remove the staging label AWSPENDING from the partially +// created version, specified by the VersionId response value. You should also +// evaluate the partially rotated new version to see if it should be deleted, +// which you can do by removing all staging labels from the new version VersionStage +// field. // // To successfully start a rotation, the staging label AWSPENDING must be in // one of the following states: // -// * Not be attached to any version at all +// * Not attached to any version at all // // * Attached to the same version as the staging label AWSCURRENT // -// If the staging label AWSPENDING is attached to a different version than the +// If the staging label AWSPENDING attached to a different version than the // version with AWSCURRENT then the attempt to rotate fails. // // Minimum permissions @@ -205,7 +205,7 @@ func (c *SecretsManager) CreateSecretRequest(input *CreateSecretInput) (req *req // labels" that identify where the version is in the rotation cycle. The SecretVersionsToStages // field of the secret contains the mapping of staging labels to the active // versions of the secret. Versions without a staging label are considered deprecated -// and are not included in the list. +// and not included in the list. // // You provide the secret data to be encrypted by putting text in either the // SecretString parameter or binary data in the SecretBinary parameter, but @@ -213,20 +213,19 @@ func (c *SecretsManager) CreateSecretRequest(input *CreateSecretInput) (req *req // also creates an initial secret version and automatically attaches the staging // label AWSCURRENT to the new version. // -// * If you call an operation that needs to encrypt or decrypt the SecretString -// or SecretBinary for a secret in the same account as the calling user and -// that secret doesn't specify a AWS KMS encryption key, Secrets Manager -// uses the account's default AWS managed customer master key (CMK) with -// the alias aws/secretsmanager. If this key doesn't already exist in your -// account then Secrets Manager creates it for you automatically. All users -// and roles in the same AWS account automatically have access to use the -// default CMK. Note that if an Secrets Manager API call results in AWS having -// to create the account's AWS-managed CMK, it can result in a one-time significant -// delay in returning the result. -// -// * If the secret is in a different AWS account from the credentials calling -// an API that requires encryption or decryption of the secret value then -// you must create and use a custom AWS KMS CMK because you can't access +// * If you call an operation to encrypt or decrypt the SecretString or SecretBinary +// for a secret in the same account as the calling user and that secret doesn't +// specify a AWS KMS encryption key, Secrets Manager uses the account's default +// AWS managed customer master key (CMK) with the alias aws/secretsmanager. +// If this key doesn't already exist in your account then Secrets Manager +// creates it for you automatically. All users and roles in the same AWS +// account automatically have access to use the default CMK. Note that if +// an Secrets Manager API call results in AWS creating the account's AWS-managed +// CMK, it can result in a one-time significant delay in returning the result. +// +// * If the secret resides in a different AWS account from the credentials +// calling an API that requires encryption or decryption of the secret value +// then you must create and use a custom AWS KMS CMK because you can't access // the default CMK for the account using credentials from a different AWS // account. Store the ARN of the CMK in the secret when you create the secret // or when you update it by including it in the KMSKeyId. If you call an @@ -243,10 +242,10 @@ func (c *SecretsManager) CreateSecretRequest(input *CreateSecretInput) (req *req // // * kms:GenerateDataKey - needed only if you use a customer-managed AWS // KMS key to encrypt the secret. You do not need this permission to use -// the account's default AWS managed CMK for Secrets Manager. +// the account default AWS managed CMK for Secrets Manager. // // * kms:Decrypt - needed only if you use a customer-managed AWS KMS key -// to encrypt the secret. You do not need this permission to use the account's +// to encrypt the secret. You do not need this permission to use the account // default AWS managed CMK for Secrets Manager. // // * secretsmanager:TagResource - needed only if you include the Tags parameter. @@ -384,7 +383,7 @@ func (c *SecretsManager) DeleteResourcePolicyRequest(input *DeleteResourcePolicy // DeleteResourcePolicy API operation for AWS Secrets Manager. // -// Deletes the resource-based permission policy that's attached to the secret. +// Deletes the resource-based permission policy attached to the secret. // // Minimum permissions // @@ -628,7 +627,7 @@ func (c *SecretsManager) DescribeSecretRequest(input *DescribeSecretInput) (req // DescribeSecret API operation for AWS Secrets Manager. // // Retrieves the details of a secret. It does not include the encrypted fields. -// Only those fields that are populated with a value are returned in the response. +// Secrets Manager only returns fields populated with a value in the response. // // Minimum permissions // @@ -831,10 +830,10 @@ func (c *SecretsManager) GetResourcePolicyRequest(input *GetResourcePolicyInput) // GetResourcePolicy API operation for AWS Secrets Manager. // -// Retrieves the JSON text of the resource-based policy document that's attached -// to the specified secret. The JSON request string input and response output -// are shown formatted with white space and line breaks for better readability. -// Submit your input as a single line JSON string. +// Retrieves the JSON text of the resource-based policy document attached to +// the specified secret. The JSON request string input and response output displays +// formatted code with white space and line breaks for better readability. Submit +// your input as a single line JSON string. // // Minimum permissions // @@ -846,8 +845,7 @@ func (c *SecretsManager) GetResourcePolicyRequest(input *GetResourcePolicyInput) // // * To attach a resource policy to a secret, use PutResourcePolicy. // -// * To delete the resource-based policy that's attached to a secret, use -// DeleteResourcePolicy. +// * To delete the resource-based policy attached to a secret, use DeleteResourcePolicy. // // * To list all of the currently available secrets, use ListSecrets. // @@ -1077,7 +1075,7 @@ func (c *SecretsManager) ListSecretVersionIdsRequest(input *ListSecretVersionIds // // Always check the NextToken response parameter when calling any of the List* // operations. These operations can occasionally return an empty or shorter -// than expected list of results even when there are more results available. +// than expected list of results even when there more results become available. // When this happens, the NextToken response parameter contains a value to pass // to the next call to the same API to request the next part of the list. // @@ -1239,7 +1237,7 @@ func (c *SecretsManager) ListSecretsRequest(input *ListSecretsInput) (req *reque // // Always check the NextToken response parameter when calling any of the List* // operations. These operations can occasionally return an empty or shorter -// than expected list of results even when there are more results available. +// than expected list of results even when there more results become available. // When this happens, the NextToken response parameter contains a value to pass // to the next call to the same API to request the next part of the list. // @@ -1408,7 +1406,7 @@ func (c *SecretsManager) PutResourcePolicyRequest(input *PutResourcePolicyInput) // // Related operations // -// * To retrieve the resource policy that's attached to a secret, use GetResourcePolicy. +// * To retrieve the resource policy attached to a secret, use GetResourcePolicy. // // * To delete the resource-based policy that's attached to a secret, use // DeleteResourcePolicy. @@ -1448,6 +1446,9 @@ func (c *SecretsManager) PutResourcePolicyRequest(input *PutResourcePolicyInput) // Lambda function ARN configured and you didn't include such an ARN as a // parameter in this call. // +// * PublicPolicyException +// The resource policy did not prevent broad access to the secret. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/PutResourcePolicy func (c *SecretsManager) PutResourcePolicy(input *PutResourcePolicyInput) (*PutResourcePolicyOutput, error) { req, out := c.PutResourcePolicyRequest(input) @@ -1542,20 +1543,19 @@ func (c *SecretsManager) PutSecretValueRequest(input *PutSecretValueInput) (req // However, if the secret data is different, then the operation fails because // you cannot modify an existing version; you can only create new ones. // -// * If you call an operation that needs to encrypt or decrypt the SecretString -// or SecretBinary for a secret in the same account as the calling user and -// that secret doesn't specify a AWS KMS encryption key, Secrets Manager -// uses the account's default AWS managed customer master key (CMK) with -// the alias aws/secretsmanager. If this key doesn't already exist in your -// account then Secrets Manager creates it for you automatically. All users -// and roles in the same AWS account automatically have access to use the -// default CMK. Note that if an Secrets Manager API call results in AWS having -// to create the account's AWS-managed CMK, it can result in a one-time significant -// delay in returning the result. -// -// * If the secret is in a different AWS account from the credentials calling -// an API that requires encryption or decryption of the secret value then -// you must create and use a custom AWS KMS CMK because you can't access +// * If you call an operation to encrypt or decrypt the SecretString or SecretBinary +// for a secret in the same account as the calling user and that secret doesn't +// specify a AWS KMS encryption key, Secrets Manager uses the account's default +// AWS managed customer master key (CMK) with the alias aws/secretsmanager. +// If this key doesn't already exist in your account then Secrets Manager +// creates it for you automatically. All users and roles in the same AWS +// account automatically have access to use the default CMK. Note that if +// an Secrets Manager API call results in AWS creating the account's AWS-managed +// CMK, it can result in a one-time significant delay in returning the result. +// +// * If the secret resides in a different AWS account from the credentials +// calling an API that requires encryption or decryption of the secret value +// then you must create and use a custom AWS KMS CMK because you can't access // the default CMK for the account using credentials from a different AWS // account. Store the ARN of the CMK in the secret when you create the secret // or when you update it by including it in the KMSKeyId. If you call an @@ -1821,7 +1821,7 @@ func (c *SecretsManager) RotateSecretRequest(input *RotateSecretInput) (req *req // (https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets.html) // in the AWS Secrets Manager User Guide. // -// Secrets Manager schedules the next rotation when the previous one is complete. +// Secrets Manager schedules the next rotation when the previous one completes. // Secrets Manager schedules the date by adding the rotation interval (number // of days) to the actual date of the last rotation. The service chooses the // hour within that 24-hour date window randomly. The minute is also chosen @@ -1836,10 +1836,9 @@ func (c *SecretsManager) RotateSecretRequest(input *RotateSecretInput) (req *req // // * The AWSPENDING staging label is not attached to any version of the secret. // -// If instead the AWSPENDING staging label is present but is not attached to -// the same version as AWSCURRENT then any later invocation of RotateSecret -// assumes that a previous rotation request is still in progress and returns -// an error. +// If the AWSPENDING staging label is present but not attached to the same version +// as AWSCURRENT then any later invocation of RotateSecret assumes that a previous +// rotation request is still in progress and returns an error. // // Minimum permissions // @@ -1973,14 +1972,14 @@ func (c *SecretsManager) TagResourceRequest(input *TagResourceInput) (req *reque // // * Tag keys and values are case sensitive. // -// * Do not use the aws: prefix in your tag names or values because it is -// reserved for AWS use. You can't edit or delete tag names or values with -// this prefix. Tags with this prefix do not count against your tags per -// secret limit. +// * Do not use the aws: prefix in your tag names or values because AWS reserves +// it for AWS use. You can't edit or delete tag names or values with this +// prefix. Tags with this prefix do not count against your tags per secret +// limit. // -// * If your tagging schema will be used across multiple services and resources, -// remember that other services might have restrictions on allowed characters. -// Generally allowed characters are: letters, spaces, and numbers representable +// * If you use your tagging schema across multiple services and resources, +// remember other services might have restrictions on allowed characters. +// Generally allowed characters: letters, spaces, and numbers representable // in UTF-8, plus the following special characters: + - = . _ : / @. // // If you use tags as part of your security strategy, then adding or removing @@ -2236,20 +2235,19 @@ func (c *SecretsManager) UpdateSecretRequest(input *UpdateSecretInput) (req *req // Secrets Manager automatically attaches the staging label AWSCURRENT to // the new version. // -// * If you call an operation that needs to encrypt or decrypt the SecretString -// or SecretBinary for a secret in the same account as the calling user and -// that secret doesn't specify a AWS KMS encryption key, Secrets Manager -// uses the account's default AWS managed customer master key (CMK) with -// the alias aws/secretsmanager. If this key doesn't already exist in your -// account then Secrets Manager creates it for you automatically. All users -// and roles in the same AWS account automatically have access to use the -// default CMK. Note that if an Secrets Manager API call results in AWS having -// to create the account's AWS-managed CMK, it can result in a one-time significant -// delay in returning the result. -// -// * If the secret is in a different AWS account from the credentials calling -// an API that requires encryption or decryption of the secret value then -// you must create and use a custom AWS KMS CMK because you can't access +// * If you call an operation to encrypt or decrypt the SecretString or SecretBinary +// for a secret in the same account as the calling user and that secret doesn't +// specify a AWS KMS encryption key, Secrets Manager uses the account's default +// AWS managed customer master key (CMK) with the alias aws/secretsmanager. +// If this key doesn't already exist in your account then Secrets Manager +// creates it for you automatically. All users and roles in the same AWS +// account automatically have access to use the default CMK. Note that if +// an Secrets Manager API call results in AWS creating the account's AWS-managed +// CMK, it can result in a one-time significant delay in returning the result. +// +// * If the secret resides in a different AWS account from the credentials +// calling an API that requires encryption or decryption of the secret value +// then you must create and use a custom AWS KMS CMK because you can't access // the default CMK for the account using credentials from a different AWS // account. Store the ARN of the CMK in the secret when you create the secret // or when you update it by including it in the KMSKeyId. If you call an @@ -2487,12 +2485,115 @@ func (c *SecretsManager) UpdateSecretVersionStageWithContext(ctx aws.Context, in return out, req.Send() } +const opValidateResourcePolicy = "ValidateResourcePolicy" + +// ValidateResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the ValidateResourcePolicy 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 ValidateResourcePolicy for more information on using the ValidateResourcePolicy +// 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 ValidateResourcePolicyRequest method. +// req, resp := client.ValidateResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/ValidateResourcePolicy +func (c *SecretsManager) ValidateResourcePolicyRequest(input *ValidateResourcePolicyInput) (req *request.Request, output *ValidateResourcePolicyOutput) { + op := &request.Operation{ + Name: opValidateResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ValidateResourcePolicyInput{} + } + + output = &ValidateResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// ValidateResourcePolicy API operation for AWS Secrets Manager. +// +// Validates the JSON text of the resource-based policy document attached to +// the specified secret. The JSON request string input and response output displays +// formatted code with white space and line breaks for better readability. Submit +// your input as a single line JSON string. A resource-based policy is optional. +// +// 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 Secrets Manager's +// API operation ValidateResourcePolicy for usage and error information. +// +// Returned Error Types: +// * MalformedPolicyDocumentException +// The policy document that you provided isn't valid. +// +// * ResourceNotFoundException +// We can't find the resource that you asked for. +// +// * InvalidParameterException +// You provided an invalid value for a parameter. +// +// * InternalServiceError +// An error occurred on the server side. +// +// * InvalidRequestException +// You provided a parameter value that is not valid for the current state of +// the resource. +// +// Possible causes: +// +// * You tried to perform the operation on a secret that's currently marked +// deleted. +// +// * You tried to enable rotation on a secret that doesn't already have a +// Lambda function ARN configured and you didn't include such an ARN as a +// parameter in this call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17/ValidateResourcePolicy +func (c *SecretsManager) ValidateResourcePolicy(input *ValidateResourcePolicyInput) (*ValidateResourcePolicyOutput, error) { + req, out := c.ValidateResourcePolicyRequest(input) + return out, req.Send() +} + +// ValidateResourcePolicyWithContext is the same as ValidateResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See ValidateResourcePolicy 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 *SecretsManager) ValidateResourcePolicyWithContext(ctx aws.Context, input *ValidateResourcePolicyInput, opts ...request.Option) (*ValidateResourcePolicyOutput, error) { + req, out := c.ValidateResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + type CancelRotateSecretInput struct { _ struct{} `type:"structure"` - // Specifies the secret for which you want to cancel a rotation request. You - // can specify either the Amazon Resource Name (ARN) or the friendly name of - // the secret. + // Specifies the secret to cancel a rotation request. You can specify either + // the Amazon Resource Name (ARN) or the friendly name of the secret. // // If you specify an ARN, we generally recommend that you specify a complete // ARN. You can specify a partial ARN too—for example, if you don’t include @@ -2504,7 +2605,12 @@ type CancelRotateSecretInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -2551,11 +2657,11 @@ type CancelRotateSecretOutput struct { // The friendly name of the secret for which rotation was canceled. Name *string `min:"1" type:"string"` - // The unique identifier of the version of the secret that was created during - // the rotation. This version might not be complete, and should be evaluated - // for possible deletion. At the very least, you should remove the VersionStage - // value AWSPENDING to enable this version to be deleted. Failing to clean up - // a cancelled rotation can block you from successfully starting future rotations. + // The unique identifier of the version of the secret created during the rotation. + // This version might not be complete, and should be evaluated for possible + // deletion. At the very least, you should remove the VersionStage value AWSPENDING + // to enable this version to be deleted. Failing to clean up a cancelled rotation + // can block you from successfully starting future rotations. VersionId *string `min:"32" type:"string"` } @@ -2599,7 +2705,7 @@ type CreateSecretInput struct { // for you and includes it as the value for this parameter in the request. If // you don't use the SDK and instead generate a raw HTTP request to the Secrets // Manager service endpoint, then you must generate a ClientRequestToken yourself - // for the new version and include that value in the request. + // for the new version and include the value in the request. // // This value helps ensure idempotency. Secrets Manager uses this value to prevent // the accidental creation of duplicate versions if there are failures and retries @@ -2609,9 +2715,9 @@ type CreateSecretInput struct { // * If the ClientRequestToken value isn't already associated with a version // of the secret then a new version of the secret is created. // - // * If a version with this value already exists and that version's SecretString + // * If a version with this value already exists and the version SecretString // and SecretBinary values are the same as those in the request, then the - // request is ignored (the operation is idempotent). + // request is ignored. // // * If a version with this value already exists and that version's SecretString // and SecretBinary values are different from those in the request then the @@ -2638,9 +2744,9 @@ type CreateSecretInput struct { // you automatically the first time it needs to encrypt a version's SecretString // or SecretBinary fields. // - // You can use the account's default CMK to encrypt and decrypt only if you - // call this operation using credentials from the same account that owns the - // secret. If the secret is in a different account, then you must create a custom + // You can use the account default CMK to encrypt and decrypt only if you call + // this operation using credentials from the same account that owns the secret. + // If the secret resides in a different account, then you must create a custom // CMK and specify the ARN in this field. KmsKeyId *string `type:"string"` @@ -2649,10 +2755,10 @@ type CreateSecretInput struct { // The secret name must be ASCII letters, digits, or the following characters // : /_+=.@- // - // Don't end your secret name with a hyphen followed by six characters. If you - // do so, you risk confusion and unexpected results when searching for a secret - // by partial ARN. This is because Secrets Manager automatically adds a hyphen - // and six random characters at the end of the ARN. + // Do not end your secret name with a hyphen followed by six characters. If + // you do so, you risk confusion and unexpected results when searching for a + // secret by partial ARN. Secrets Manager automatically adds a hyphen and six + // random characters at the end of the ARN. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -2688,7 +2794,7 @@ type CreateSecretInput struct { // JSON for Parameters (https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json) // in the AWS CLI User Guide. For example: // - // [{"username":"bob"},{"password":"abc123xyz456"}] + // {"username":"bob","password":"abc123xyz456"} // // If your command-line tool or SDK requires quotation marks around the parameter, // you should use single quotes to avoid confusion with the double quotes required @@ -2729,14 +2835,14 @@ type CreateSecretInput struct { // // * Tag keys and values are case sensitive. // - // * Do not use the aws: prefix in your tag names or values because it is - // reserved for AWS use. You can't edit or delete tag names or values with - // this prefix. Tags with this prefix do not count against your tags per - // secret limit. + // * Do not use the aws: prefix in your tag names or values because AWS reserves + // it for AWS use. You can't edit or delete tag names or values with this + // prefix. Tags with this prefix do not count against your tags per secret + // limit. // - // * If your tagging schema will be used across multiple services and resources, - // remember that other services might have restrictions on allowed characters. - // Generally allowed characters are: letters, spaces, and numbers representable + // * If you use your tagging schema across multiple services and resources, + // remember other services might have restrictions on allowed characters. + // Generally allowed characters: letters, spaces, and numbers representable // in UTF-8, plus the following special characters: + - = . _ : / @. Tags []*Tag `type:"list"` } @@ -2838,8 +2944,8 @@ type CreateSecretOutput struct { // The friendly name of the secret that you just created. Name *string `min:"1" type:"string"` - // The unique identifier that's associated with the version of the secret you - // just created. + // The unique identifier associated with the version of the secret you just + // created. VersionId *string `min:"32" type:"string"` } @@ -2945,7 +3051,12 @@ type DeleteResourcePolicyInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -3055,7 +3166,12 @@ type DeleteSecretInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -3165,7 +3281,12 @@ type DescribeSecretInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -3209,6 +3330,9 @@ type DescribeSecretOutput struct { // The ARN of the secret. ARN *string `min:"20" type:"string"` + // The date that the secret was created. + CreatedDate *time.Time `type:"timestamp"` + // This value exists if the secret is scheduled for deletion. Some time after // the specified date and time, Secrets Manager deletes the secret and all of // its versions. @@ -3288,6 +3412,12 @@ func (s *DescribeSecretOutput) SetARN(v string) *DescribeSecretOutput { return s } +// SetCreatedDate sets the CreatedDate field's value. +func (s *DescribeSecretOutput) SetCreatedDate(v time.Time) *DescribeSecretOutput { + s.CreatedDate = &v + return s +} + // SetDeletedDate sets the DeletedDate field's value. func (s *DescribeSecretOutput) SetDeletedDate(v time.Time) *DescribeSecretOutput { s.DeletedDate = &v @@ -3425,6 +3555,52 @@ func (s *EncryptionFailure) RequestID() string { return s.RespMetadata.RequestID } +// Allows you to filter your list of secrets. +type Filter struct { + _ struct{} `type:"structure"` + + // Filters your list of secrets by a specific key. + Key *string `type:"string" enum:"FilterNameStringType"` + + // Filters your list of secrets by a specific value. + Values []*string `min:"1" 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() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Filter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Filter"} + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Filter) SetKey(v string) *Filter { + s.Key = &v + return s +} + +// SetValues sets the Values field's value. +func (s *Filter) SetValues(v []*string) *Filter { + s.Values = v + return s +} + type GetRandomPasswordInput struct { _ struct{} `type:"structure"` @@ -3584,7 +3760,12 @@ type GetResourcePolicyInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -3687,7 +3868,12 @@ type GetSecretValueInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -4162,7 +4348,7 @@ type ListSecretVersionIdsInput struct { // deprecated and are subject to deletion by Secrets Manager as needed. IncludeDeprecated *bool `type:"boolean"` - // (Optional) Limits the number of results that you want to include in the response. + // (Optional) Limits the number of results you want to include in the response. // If you don't include this parameter, it defaults to a value that's specific // to the operation. If additional items exist beyond the maximum you specify, // the NextToken response element is present and has a value (isn't null). Include @@ -4174,9 +4360,9 @@ type ListSecretVersionIdsInput struct { MaxResults *int64 `min:"1" type:"integer"` // (Optional) Use this parameter in a request if you receive a NextToken response - // in a previous request that indicates that there's more output available. - // In a subsequent call, set it to the value of the previous call's NextToken - // response to indicate where the output should continue from. + // in a previous request indicating there's more output available. In a subsequent + // call, set it to the value of the previous call NextToken response to indicate + // where the output should continue from. NextToken *string `min:"1" type:"string"` // The identifier for the secret containing the versions you want to list. You @@ -4193,7 +4379,12 @@ type ListSecretVersionIdsInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -4272,8 +4463,8 @@ type ListSecretVersionIdsOutput struct { Name *string `min:"1" type:"string"` // If present in the response, this value indicates that there's more output - // available than what's included in the current response. This can occur even - // when the response includes no values at all, such as when you ask for a filtered + // available than included in the current response. This can occur even when + // the response includes no values at all, such as when you ask for a filtered // view of a very long list. Use this value in the NextToken request parameter // in a subsequent call to the operation to continue processing and get the // next part of the output. You should repeat this until the NextToken response @@ -4321,7 +4512,10 @@ func (s *ListSecretVersionIdsOutput) SetVersions(v []*SecretVersionsListEntry) * type ListSecretsInput struct { _ struct{} `type:"structure"` - // (Optional) Limits the number of results that you want to include in the response. + // Lists the secret request filters. + Filters []*Filter `type:"list"` + + // (Optional) Limits the number of results you want to include in the response. // If you don't include this parameter, it defaults to a value that's specific // to the operation. If additional items exist beyond the maximum you specify, // the NextToken response element is present and has a value (isn't null). Include @@ -4333,10 +4527,13 @@ type ListSecretsInput struct { MaxResults *int64 `min:"1" type:"integer"` // (Optional) Use this parameter in a request if you receive a NextToken response - // in a previous request that indicates that there's more output available. - // In a subsequent call, set it to the value of the previous call's NextToken - // response to indicate where the output should continue from. + // in a previous request indicating there's more output available. In a subsequent + // call, set it to the value of the previous call NextToken response to indicate + // where the output should continue from. NextToken *string `min:"1" type:"string"` + + // Lists secrets in the requested order. + SortOrder *string `type:"string" enum:"SortOrderType"` } // String returns the string representation @@ -4358,6 +4555,16 @@ func (s *ListSecretsInput) Validate() error { if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -4365,6 +4572,12 @@ func (s *ListSecretsInput) Validate() error { return nil } +// SetFilters sets the Filters field's value. +func (s *ListSecretsInput) SetFilters(v []*Filter) *ListSecretsInput { + s.Filters = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListSecretsInput) SetMaxResults(v int64) *ListSecretsInput { s.MaxResults = &v @@ -4377,12 +4590,18 @@ func (s *ListSecretsInput) SetNextToken(v string) *ListSecretsInput { return s } +// SetSortOrder sets the SortOrder field's value. +func (s *ListSecretsInput) SetSortOrder(v string) *ListSecretsInput { + s.SortOrder = &v + return s +} + type ListSecretsOutput struct { _ struct{} `type:"structure"` // If present in the response, this value indicates that there's more output - // available than what's included in the current response. This can occur even - // when the response includes no values at all, such as when you ask for a filtered + // available than included in the current response. This can occur even when + // the response includes no values at all, such as when you ask for a filtered // view of a very long list. Use this value in the NextToken request parameter // in a subsequent call to the operation to continue processing and get the // next part of the output. You should repeat this until the NextToken response @@ -4527,9 +4746,69 @@ func (s *PreconditionNotMetException) RequestID() string { return s.RespMetadata.RequestID } +// The resource policy did not prevent broad access to the secret. +type PublicPolicyException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s PublicPolicyException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PublicPolicyException) GoString() string { + return s.String() +} + +func newErrorPublicPolicyException(v protocol.ResponseMetadata) error { + return &PublicPolicyException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *PublicPolicyException) Code() string { + return "PublicPolicyException" +} + +// Message returns the exception's message. +func (s *PublicPolicyException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *PublicPolicyException) OrigErr() error { + return nil +} + +func (s *PublicPolicyException) 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 *PublicPolicyException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *PublicPolicyException) RequestID() string { + return s.RespMetadata.RequestID +} + type PutResourcePolicyInput struct { _ struct{} `type:"structure"` + // Makes an optional API call to Zelkova to validate the Resource Policy to + // prevent broad access to your secret. + BlockPublicPolicy *bool `type:"boolean"` + // A JSON-formatted string that's constructed according to the grammar and syntax // for an AWS resource-based policy. The policy in the string identifies who // can access or manage this secret and its versions. For information on how @@ -4553,7 +4832,12 @@ type PutResourcePolicyInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -4591,6 +4875,12 @@ func (s *PutResourcePolicyInput) Validate() error { return nil } +// SetBlockPublicPolicy sets the BlockPublicPolicy field's value. +func (s *PutResourcePolicyInput) SetBlockPublicPolicy(v bool) *PutResourcePolicyInput { + s.BlockPublicPolicy = &v + return s +} + // SetResourcePolicy sets the ResourcePolicy field's value. func (s *PutResourcePolicyInput) SetResourcePolicy(v string) *PutResourcePolicyInput { s.ResourcePolicy = &v @@ -4606,11 +4896,11 @@ func (s *PutResourcePolicyInput) SetSecretId(v string) *PutResourcePolicyInput { type PutResourcePolicyOutput struct { _ struct{} `type:"structure"` - // The ARN of the secret that the resource-based policy was retrieved for. + // The ARN of the secret retrieved by the resource-based policy. ARN *string `min:"20" type:"string"` - // The friendly name of the secret that the resource-based policy was retrieved - // for. + // The friendly name of the secret that the retrieved by the resource-based + // policy. Name *string `min:"1" type:"string"` } @@ -4661,7 +4951,7 @@ type PutSecretValueInput struct { // or SecretBinary values are the same as those in the request then the request // is ignored (the operation is idempotent). // - // * If a version with this value already exists and that version's SecretString + // * If a version with this value already exists and the version of the SecretString // and SecretBinary values are different from those in the request then the // request fails because you cannot modify an existing secret version. You // can only create new versions to store new secret values. @@ -4696,7 +4986,12 @@ type PutSecretValueInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -4983,7 +5278,12 @@ type RestoreSecretInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -5066,9 +5366,9 @@ type RotateSecretInput struct { // service endpoint, then you must generate a ClientRequestToken yourself for // new versions and include that value in the request. // - // You only need to specify your own value if you are implementing your own - // retry logic and want to ensure that a given secret is not created twice. - // We recommend that you generate a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) + // You only need to specify your own value if you implement your own retry logic + // and want to ensure that a given secret is not created twice. We recommend + // that you generate a UUID-type (https://wikipedia.org/wiki/Universally_unique_identifier) // value to ensure uniqueness within the specified secret. // // Secrets Manager uses this value to prevent the accidental creation of duplicate @@ -5095,7 +5395,12 @@ type RotateSecretInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -5259,7 +5564,10 @@ type SecretListEntry struct { // in the AWS Secrets Manager User Guide. ARN *string `min:"20" type:"string"` - // The date and time on which this secret was deleted. Not present on active + // The date and time when a secret was created. + CreatedDate *time.Time `type:"timestamp"` + + // The date and time the deletion of the secret occurred. Not present on active // secrets. The secret can be recovered until the number of days in the recovery // window has passed, as specified in the RecoveryWindowInDays parameter of // the DeleteSecret operation. @@ -5268,10 +5576,10 @@ type SecretListEntry struct { // The user-provided description of the secret. Description *string `type:"string"` - // The ARN or alias of the AWS KMS customer master key (CMK) that's used to - // encrypt the SecretString and SecretBinary fields in each version of the secret. - // If you don't provide a key, then Secrets Manager defaults to encrypting the - // secret fields with the default KMS CMK (the one named awssecretsmanager) + // The ARN or alias of the AWS KMS customer master key (CMK) used to encrypt + // the SecretString and SecretBinary fields in each version of the secret. If + // you don't provide a key, then Secrets Manager defaults to encrypting the + // secret fields with the default KMS CMK, the key named awssecretsmanager, // for this account. KmsKeyId *string `type:"string"` @@ -5297,24 +5605,24 @@ type SecretListEntry struct { // Indicates whether automatic, scheduled rotation is enabled for this secret. RotationEnabled *bool `type:"boolean"` - // The ARN of an AWS Lambda function that's invoked by Secrets Manager to rotate - // and expire the secret either automatically per the schedule or manually by - // a call to RotateSecret. + // The ARN of an AWS Lambda function invoked by Secrets Manager to rotate and + // expire the secret either automatically per the schedule or manually by a + // call to RotateSecret. RotationLambdaARN *string `type:"string"` // A structure that defines the rotation configuration for the secret. RotationRules *RotationRulesType `type:"structure"` // A list of all of the currently assigned SecretVersionStage staging labels - // and the SecretVersionId that each is attached to. Staging labels are used - // to keep track of the different versions during the rotation process. + // and the SecretVersionId attached to each one. Staging labels are used to + // keep track of the different versions during the rotation process. // // A version that does not have any SecretVersionStage is considered deprecated // and subject to deletion. Such versions are not included in this list. SecretVersionsToStages map[string][]*string `type:"map"` - // The list of user-defined tags that are associated with the secret. To add - // tags to a secret, use TagResource. To remove tags, use UntagResource. + // The list of user-defined tags associated with the secret. To add tags to + // a secret, use TagResource. To remove tags, use UntagResource. Tags []*Tag `type:"list"` } @@ -5334,6 +5642,12 @@ func (s *SecretListEntry) SetARN(v string) *SecretListEntry { return s } +// SetCreatedDate sets the CreatedDate field's value. +func (s *SecretListEntry) SetCreatedDate(v time.Time) *SecretListEntry { + s.CreatedDate = &v + return s +} + // SetDeletedDate sets the DeletedDate field's value. func (s *SecretListEntry) SetDeletedDate(v time.Time) *SecretListEntry { s.DeletedDate = &v @@ -5472,7 +5786,7 @@ type Tag struct { // The key identifier, or name, of the tag. Key *string `min:"1" type:"string"` - // The string value that's associated with the key of the tag. + // The string value associated with the key of the tag. Value *string `type:"string"` } @@ -5527,7 +5841,12 @@ type TagResourceInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -5627,7 +5946,12 @@ type UntagResourceInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -5776,7 +6100,12 @@ type UpdateSecretInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -5926,7 +6255,7 @@ func (s *UpdateSecretOutput) SetVersionId(v string) *UpdateSecretOutput { type UpdateSecretVersionStageInput struct { _ struct{} `type:"structure"` - // (Optional) The secret version ID that you want to add the staging label to. + // (Optional) The secret version ID that you want to add the staging label. // If you want to remove a label from a version, then do not specify this parameter. // // If the staging label is already attached to a different version of the secret, @@ -5941,9 +6270,9 @@ type UpdateSecretVersionStageInput struct { // the version ID does not match, then the operation fails. RemoveFromVersionId *string `min:"32" type:"string"` - // Specifies the secret with the version whose list of staging labels you want - // to modify. You can specify either the Amazon Resource Name (ARN) or the friendly - // name of the secret. + // Specifies the secret with the version with the list of staging labels you + // want to modify. You can specify either the Amazon Resource Name (ARN) or + // the friendly name of the secret. // // If you specify an ARN, we generally recommend that you specify a complete // ARN. You can specify a partial ARN too—for example, if you don’t include @@ -5955,7 +6284,12 @@ type UpdateSecretVersionStageInput struct { // a partial ARN, then those characters cause Secrets Manager to assume that // you’re specifying a complete ARN. This confusion can cause unexpected results. // To avoid this situation, we recommend that you don’t create secret names - // that end with a hyphen followed by six characters. + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. // // SecretId is a required field SecretId *string `min:"1" type:"string" required:"true"` @@ -6031,10 +6365,10 @@ func (s *UpdateSecretVersionStageInput) SetVersionStage(v string) *UpdateSecretV type UpdateSecretVersionStageOutput struct { _ struct{} `type:"structure"` - // The ARN of the secret with the staging label that was modified. + // The ARN of the secret with the modified staging label. ARN *string `min:"20" type:"string"` - // The friendly name of the secret with the staging label that was modified. + // The friendly name of the secret with the modified staging label. Name *string `min:"1" type:"string"` } @@ -6059,3 +6393,166 @@ func (s *UpdateSecretVersionStageOutput) SetName(v string) *UpdateSecretVersionS s.Name = &v return s } + +type ValidateResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // Identifies the Resource Policy attached to the secret. + // + // ResourcePolicy is a required field + ResourcePolicy *string `min:"1" type:"string" required:"true"` + + // The identifier for the secret that you want to validate a resource policy. + // You can specify either the Amazon Resource Name (ARN) or the friendly name + // of the secret. + // + // If you specify an ARN, we generally recommend that you specify a complete + // ARN. You can specify a partial ARN too—for example, if you don’t include + // the final hyphen and six random characters that Secrets Manager adds at the + // end of the ARN when you created the secret. A partial ARN match can work + // as long as it uniquely matches only one secret. However, if your secret has + // a name that ends in a hyphen followed by six characters (before Secrets Manager + // adds the hyphen and six characters to the ARN) and you try to use that as + // a partial ARN, then those characters cause Secrets Manager to assume that + // you’re specifying a complete ARN. This confusion can cause unexpected results. + // To avoid this situation, we recommend that you don’t create secret names + // ending with a hyphen followed by six characters. + // + // If you specify an incomplete ARN without the random suffix, and instead provide + // the 'friendly name', you must not include the random suffix. If you do include + // the random suffix added by Secrets Manager, you receive either a ResourceNotFoundException + // or an AccessDeniedException error, depending on your permissions. + SecretId *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s ValidateResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ValidateResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ValidateResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ValidateResourcePolicyInput"} + if s.ResourcePolicy == nil { + invalidParams.Add(request.NewErrParamRequired("ResourcePolicy")) + } + if s.ResourcePolicy != nil && len(*s.ResourcePolicy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourcePolicy", 1)) + } + if s.SecretId != nil && len(*s.SecretId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecretId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourcePolicy sets the ResourcePolicy field's value. +func (s *ValidateResourcePolicyInput) SetResourcePolicy(v string) *ValidateResourcePolicyInput { + s.ResourcePolicy = &v + return s +} + +// SetSecretId sets the SecretId field's value. +func (s *ValidateResourcePolicyInput) SetSecretId(v string) *ValidateResourcePolicyInput { + s.SecretId = &v + return s +} + +type ValidateResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // Returns a message stating that your Reource Policy passed validation. + PolicyValidationPassed *bool `type:"boolean"` + + // Returns an error message if your policy doesn't pass validatation. + ValidationErrors []*ValidationErrorsEntry `type:"list"` +} + +// String returns the string representation +func (s ValidateResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ValidateResourcePolicyOutput) GoString() string { + return s.String() +} + +// SetPolicyValidationPassed sets the PolicyValidationPassed field's value. +func (s *ValidateResourcePolicyOutput) SetPolicyValidationPassed(v bool) *ValidateResourcePolicyOutput { + s.PolicyValidationPassed = &v + return s +} + +// SetValidationErrors sets the ValidationErrors field's value. +func (s *ValidateResourcePolicyOutput) SetValidationErrors(v []*ValidationErrorsEntry) *ValidateResourcePolicyOutput { + s.ValidationErrors = v + return s +} + +// Displays errors that occurred during validation of the resource policy. +type ValidationErrorsEntry struct { + _ struct{} `type:"structure"` + + // Checks the name of the policy. + CheckName *string `min:"1" type:"string"` + + // Displays error messages if validation encounters problems during validation + // of the resource policy. + ErrorMessage *string `type:"string"` +} + +// String returns the string representation +func (s ValidationErrorsEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ValidationErrorsEntry) GoString() string { + return s.String() +} + +// SetCheckName sets the CheckName field's value. +func (s *ValidationErrorsEntry) SetCheckName(v string) *ValidationErrorsEntry { + s.CheckName = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *ValidationErrorsEntry) SetErrorMessage(v string) *ValidationErrorsEntry { + s.ErrorMessage = &v + return s +} + +const ( + // FilterNameStringTypeDescription is a FilterNameStringType enum value + FilterNameStringTypeDescription = "description" + + // FilterNameStringTypeName is a FilterNameStringType enum value + FilterNameStringTypeName = "name" + + // FilterNameStringTypeTagKey is a FilterNameStringType enum value + FilterNameStringTypeTagKey = "tag-key" + + // FilterNameStringTypeTagValue is a FilterNameStringType enum value + FilterNameStringTypeTagValue = "tag-value" + + // FilterNameStringTypeAll is a FilterNameStringType enum value + FilterNameStringTypeAll = "all" +) + +const ( + // SortOrderTypeAsc is a SortOrderType enum value + SortOrderTypeAsc = "asc" + + // SortOrderTypeDesc is a SortOrderType enum value + SortOrderTypeDesc = "desc" +) diff --git a/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/doc.go b/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/doc.go index b931ba87c0a..71cfce04145 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/doc.go +++ b/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/doc.go @@ -3,7 +3,7 @@ // Package secretsmanager provides the client and types for making API // requests to AWS Secrets Manager. // -// AWS Secrets Manager is a web service that enables you to store, manage, and +// AWS Secrets Manager provides a service to enable you to store, manage, and // retrieve, secrets. // // This guide provides descriptions of the Secrets Manager API. For more information @@ -14,25 +14,25 @@ // This version of the Secrets Manager API Reference documents the Secrets Manager // API version 2017-10-17. // -// As an alternative to using the API directly, you can use one of the AWS SDKs, -// which consist of libraries and sample code for various programming languages -// and platforms (such as Java, Ruby, .NET, iOS, and Android). The SDKs provide -// a convenient way to create programmatic access to AWS Secrets Manager. For -// example, the SDKs take care of cryptographically signing requests, managing -// errors, and retrying requests automatically. For more information about the -// AWS SDKs, including how to download and install them, see Tools for Amazon -// Web Services (http://aws.amazon.com/tools/). -// -// We recommend that you use the AWS SDKs to make programmatic API calls to -// Secrets Manager. However, you also can use the Secrets Manager HTTP Query -// API to make direct calls to the Secrets Manager web service. To learn more -// about the Secrets Manager HTTP Query API, see Making Query Requests (https://docs.aws.amazon.com/secretsmanager/latest/userguide/query-requests.html) +// As an alternative to using the API, you can use one of the AWS SDKs, which +// consist of libraries and sample code for various programming languages and +// platforms such as Java, Ruby, .NET, iOS, and Android. The SDKs provide a +// convenient way to create programmatic access to AWS Secrets Manager. For +// example, the SDKs provide cryptographically signing requests, managing errors, +// and retrying requests automatically. For more information about the AWS SDKs, +// including downloading and installing them, see Tools for Amazon Web Services +// (http://aws.amazon.com/tools/). +// +// We recommend you use the AWS SDKs to make programmatic API calls to Secrets +// Manager. However, you also can use the Secrets Manager HTTP Query API to +// make direct calls to the Secrets Manager web service. To learn more about +// the Secrets Manager HTTP Query API, see Making Query Requests (https://docs.aws.amazon.com/secretsmanager/latest/userguide/query-requests.html) // in the AWS Secrets Manager User Guide. // -// Secrets Manager supports GET and POST requests for all actions. That is, -// the API doesn't require you to use GET for some actions and POST for others. -// However, GET requests are subject to the limitation size of a URL. Therefore, -// for operations that require larger sizes, use a POST request. +// Secrets Manager API supports GET and POST requests for all actions, and doesn't +// require you to use GET for some actions and POST for others. However, GET +// requests are subject to the limitation size of a URL. Therefore, for operations +// that require larger sizes, use a POST request. // // Support and Feedback for AWS Secrets Manager // @@ -44,25 +44,24 @@ // How examples are presented // // The JSON that AWS Secrets Manager expects as your request parameters and -// that the service returns as a response to HTTP query requests are single, +// the service returns as a response to HTTP query requests contain single, // long strings without line breaks or white space formatting. The JSON shown -// in the examples is formatted with both line breaks and white space to improve -// readability. When example input parameters would also result in long strings -// that extend beyond the screen, we insert line breaks to enhance readability. -// You should always submit the input as a single JSON text string. +// in the examples displays the code formatted with both line breaks and white +// space to improve readability. When example input parameters can also cause +// long strings extending beyond the screen, you can insert line breaks to enhance +// readability. You should always submit the input as a single JSON text string. // // Logging API Requests // // AWS Secrets Manager supports AWS CloudTrail, a service that records AWS API // calls for your AWS account and delivers log files to an Amazon S3 bucket. // By using information that's collected by AWS CloudTrail, you can determine -// which requests were successfully made to Secrets Manager, who made the request, -// when it was made, and so on. For more about AWS Secrets Manager and its support +// the requests successfully made to Secrets Manager, who made the request, +// when it was made, and so on. For more about AWS Secrets Manager and support // for AWS CloudTrail, see Logging AWS Secrets Manager Events with AWS CloudTrail // (http://docs.aws.amazon.com/secretsmanager/latest/userguide/monitoring.html#monitoring_cloudtrail) // in the AWS Secrets Manager User Guide. To learn more about CloudTrail, including -// how to turn it on and find your log files, see the AWS CloudTrail User Guide -// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html). +// enabling it and find your log files, see the AWS CloudTrail User Guide (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html). // // See https://docs.aws.amazon.com/goto/WebAPI/secretsmanager-2017-10-17 for more information on this service. // diff --git a/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/errors.go b/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/errors.go index df82716bb59..ab90196bb65 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/secretsmanager/errors.go @@ -77,6 +77,12 @@ const ( // The request failed because you did not complete all the prerequisite steps. ErrCodePreconditionNotMetException = "PreconditionNotMetException" + // ErrCodePublicPolicyException for service response error code + // "PublicPolicyException". + // + // The resource policy did not prevent broad access to the secret. + ErrCodePublicPolicyException = "PublicPolicyException" + // ErrCodeResourceExistsException for service response error code // "ResourceExistsException". // @@ -100,6 +106,7 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "LimitExceededException": newErrorLimitExceededException, "MalformedPolicyDocumentException": newErrorMalformedPolicyDocumentException, "PreconditionNotMetException": newErrorPreconditionNotMetException, + "PublicPolicyException": newErrorPublicPolicyException, "ResourceExistsException": newErrorResourceExistsException, "ResourceNotFoundException": newErrorResourceNotFoundException, } diff --git a/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go b/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go index b5119d0d2d8..7388b8233a5 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go @@ -4822,6 +4822,67 @@ func (s *AvailabilityZone) SetZoneName(v string) *AvailabilityZone { return s } +// Provides details about an auto scaling group. +type AwsAutoScalingAutoScalingGroupDetails struct { + _ struct{} `type:"structure"` + + // The datetime when the auto scaling group was created. + CreatedTime *string `type:"string"` + + // 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. + HealthCheckGracePeriod *int64 `type:"integer"` + + // The service to use for the health checks. + HealthCheckType *string `type:"string"` + + // The name of the launch configuration. + LaunchConfigurationName *string `type:"string"` + + // The list of load balancers associated with the group. + LoadBalancerNames []*string `type:"list"` +} + +// String returns the string representation +func (s AwsAutoScalingAutoScalingGroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsAutoScalingAutoScalingGroupDetails) GoString() string { + return s.String() +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *AwsAutoScalingAutoScalingGroupDetails) SetCreatedTime(v string) *AwsAutoScalingAutoScalingGroupDetails { + s.CreatedTime = &v + return s +} + +// SetHealthCheckGracePeriod sets the HealthCheckGracePeriod field's value. +func (s *AwsAutoScalingAutoScalingGroupDetails) SetHealthCheckGracePeriod(v int64) *AwsAutoScalingAutoScalingGroupDetails { + s.HealthCheckGracePeriod = &v + return s +} + +// SetHealthCheckType sets the HealthCheckType field's value. +func (s *AwsAutoScalingAutoScalingGroupDetails) SetHealthCheckType(v string) *AwsAutoScalingAutoScalingGroupDetails { + s.HealthCheckType = &v + return s +} + +// SetLaunchConfigurationName sets the LaunchConfigurationName field's value. +func (s *AwsAutoScalingAutoScalingGroupDetails) SetLaunchConfigurationName(v string) *AwsAutoScalingAutoScalingGroupDetails { + s.LaunchConfigurationName = &v + return s +} + +// SetLoadBalancerNames sets the LoadBalancerNames field's value. +func (s *AwsAutoScalingAutoScalingGroupDetails) SetLoadBalancerNames(v []*string) *AwsAutoScalingAutoScalingGroupDetails { + s.LoadBalancerNames = v + return s +} + // A distribution configuration. type AwsCloudFrontDistributionDetails struct { _ struct{} `type:"structure"` @@ -5931,6 +5992,189 @@ func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcPeeringConnectionId(v string) return s } +// An attachment to an AWS EC2 volume. +type AwsEc2VolumeAttachment struct { + _ struct{} `type:"structure"` + + // The datetime when the attachment initiated. + AttachTime *string `type:"string"` + + // Whether the EBS volume is deleted when the EC2 instance is terminated. + DeleteOnTermination *bool `type:"boolean"` + + // The identifier of the EC2 instance. + InstanceId *string `type:"string"` + + // The attachment state of the volume. + Status *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2VolumeAttachment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2VolumeAttachment) GoString() string { + return s.String() +} + +// SetAttachTime sets the AttachTime field's value. +func (s *AwsEc2VolumeAttachment) SetAttachTime(v string) *AwsEc2VolumeAttachment { + s.AttachTime = &v + return s +} + +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsEc2VolumeAttachment) SetDeleteOnTermination(v bool) *AwsEc2VolumeAttachment { + s.DeleteOnTermination = &v + return s +} + +// SetInstanceId sets the InstanceId field's value. +func (s *AwsEc2VolumeAttachment) SetInstanceId(v string) *AwsEc2VolumeAttachment { + s.InstanceId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEc2VolumeAttachment) SetStatus(v string) *AwsEc2VolumeAttachment { + s.Status = &v + return s +} + +// Details about an EC2 volume. +type AwsEc2VolumeDetails struct { + _ struct{} `type:"structure"` + + // The volume attachments. + Attachments []*AwsEc2VolumeAttachment `type:"list"` + + // The datetime when the volume was created. + CreateTime *string `type:"string"` + + // Whether the volume is encrypted. + Encrypted *bool `type:"boolean"` + + // The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) + // that was used to protect the volume encryption key for the volume. + KmsKeyId *string `type:"string"` + + // The size of the volume, in GiBs. + Size *int64 `type:"integer"` + + // The snapshot from which the volume was created. + SnapshotId *string `type:"string"` + + // The volume state. + Status *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2VolumeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2VolumeDetails) GoString() string { + return s.String() +} + +// SetAttachments sets the Attachments field's value. +func (s *AwsEc2VolumeDetails) SetAttachments(v []*AwsEc2VolumeAttachment) *AwsEc2VolumeDetails { + s.Attachments = v + return s +} + +// SetCreateTime sets the CreateTime field's value. +func (s *AwsEc2VolumeDetails) SetCreateTime(v string) *AwsEc2VolumeDetails { + s.CreateTime = &v + return s +} + +// SetEncrypted sets the Encrypted field's value. +func (s *AwsEc2VolumeDetails) SetEncrypted(v bool) *AwsEc2VolumeDetails { + s.Encrypted = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsEc2VolumeDetails) SetKmsKeyId(v string) *AwsEc2VolumeDetails { + s.KmsKeyId = &v + return s +} + +// SetSize sets the Size field's value. +func (s *AwsEc2VolumeDetails) SetSize(v int64) *AwsEc2VolumeDetails { + s.Size = &v + return s +} + +// SetSnapshotId sets the SnapshotId field's value. +func (s *AwsEc2VolumeDetails) SetSnapshotId(v string) *AwsEc2VolumeDetails { + s.SnapshotId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEc2VolumeDetails) SetStatus(v string) *AwsEc2VolumeDetails { + s.Status = &v + return s +} + +// Details about an EC2 VPC. +type AwsEc2VpcDetails struct { + _ struct{} `type:"structure"` + + // Information about the IPv4 CIDR blocks associated with the VPC. + CidrBlockAssociationSet []*CidrBlockAssociation `type:"list"` + + // 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. + DhcpOptionsId *string `type:"string"` + + // Information about the IPv6 CIDR blocks associated with the VPC. + Ipv6CidrBlockAssociationSet []*Ipv6CidrBlockAssociation `type:"list"` + + // The current state of the VPC. + State *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2VpcDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2VpcDetails) GoString() string { + return s.String() +} + +// SetCidrBlockAssociationSet sets the CidrBlockAssociationSet field's value. +func (s *AwsEc2VpcDetails) SetCidrBlockAssociationSet(v []*CidrBlockAssociation) *AwsEc2VpcDetails { + s.CidrBlockAssociationSet = v + return s +} + +// SetDhcpOptionsId sets the DhcpOptionsId field's value. +func (s *AwsEc2VpcDetails) SetDhcpOptionsId(v string) *AwsEc2VpcDetails { + s.DhcpOptionsId = &v + return s +} + +// SetIpv6CidrBlockAssociationSet sets the Ipv6CidrBlockAssociationSet field's value. +func (s *AwsEc2VpcDetails) SetIpv6CidrBlockAssociationSet(v []*Ipv6CidrBlockAssociation) *AwsEc2VpcDetails { + s.Ipv6CidrBlockAssociationSet = v + return s +} + +// SetState sets the State field's value. +func (s *AwsEc2VpcDetails) SetState(v string) *AwsEc2VpcDetails { + s.State = &v + return s +} + // Information about an Elasticsearch domain. type AwsElasticsearchDomainDetails struct { _ struct{} `type:"structure"` @@ -7640,6 +7884,10 @@ type AwsSecurityFinding struct { // The details of network-related information about a finding. Network *Network `type:"structure"` + // Provides information about a network path that is relevant to a finding. + // Each entry under NetworkPath represents a component of that path. + NetworkPath []*NetworkPathComponent `type:"list"` + // A user-defined note added to a finding. Note *Note `type:"structure"` @@ -7718,6 +7966,9 @@ type AwsSecurityFinding struct { // Indicates the veracity of a finding. VerificationState *string `type:"string" enum:"VerificationState"` + // Provides a list of vulnerabilities associated with the findings. + Vulnerabilities []*Vulnerability `type:"list"` + // Provides information about the status of the investigation into a finding. Workflow *Workflow `type:"structure"` @@ -7814,6 +8065,16 @@ func (s *AwsSecurityFinding) Validate() error { } } } + if s.Vulnerabilities != nil { + for i, v := range s.Vulnerabilities { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Vulnerabilities", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -7893,6 +8154,12 @@ func (s *AwsSecurityFinding) SetNetwork(v *Network) *AwsSecurityFinding { return s } +// SetNetworkPath sets the NetworkPath field's value. +func (s *AwsSecurityFinding) SetNetworkPath(v []*NetworkPathComponent) *AwsSecurityFinding { + s.NetworkPath = v + return s +} + // SetNote sets the Note field's value. func (s *AwsSecurityFinding) SetNote(v *Note) *AwsSecurityFinding { s.Note = v @@ -7995,6 +8262,12 @@ func (s *AwsSecurityFinding) SetVerificationState(v string) *AwsSecurityFinding return s } +// SetVulnerabilities sets the Vulnerabilities field's value. +func (s *AwsSecurityFinding) SetVulnerabilities(v []*Vulnerability) *AwsSecurityFinding { + s.Vulnerabilities = v + return s +} + // SetWorkflow sets the Workflow field's value. func (s *AwsSecurityFinding) SetWorkflow(v *Workflow) *AwsSecurityFinding { s.Workflow = v @@ -9661,6 +9934,48 @@ func (s *BatchUpdateFindingsUnprocessedFinding) SetFindingIdentifier(v *AwsSecur return s } +// An IPv4 CIDR block association. +type CidrBlockAssociation struct { + _ struct{} `type:"structure"` + + // The association ID for the IPv4 CIDR block. + AssociationId *string `type:"string"` + + // The IPv4 CIDR block. + CidrBlock *string `type:"string"` + + // Information about the state of the IPv4 CIDR block. + CidrBlockState *string `type:"string"` +} + +// String returns the string representation +func (s CidrBlockAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CidrBlockAssociation) GoString() string { + return s.String() +} + +// SetAssociationId sets the AssociationId field's value. +func (s *CidrBlockAssociation) SetAssociationId(v string) *CidrBlockAssociation { + s.AssociationId = &v + return s +} + +// SetCidrBlock sets the CidrBlock field's value. +func (s *CidrBlockAssociation) SetCidrBlock(v string) *CidrBlockAssociation { + s.CidrBlock = &v + return s +} + +// SetCidrBlockState sets the CidrBlockState field's value. +func (s *CidrBlockAssociation) SetCidrBlockState(v string) *CidrBlockAssociation { + s.CidrBlockState = &v + return s +} + // Contains finding details that are specific to control-based findings. Only // returned for findings generated from controls. type Compliance struct { @@ -10025,6 +10340,48 @@ func (s *CreateMembersOutput) SetUnprocessedAccounts(v []*Result) *CreateMembers return s } +// CVSS scores from the advisory related to the vulnerability. +type Cvss struct { + _ struct{} `type:"structure"` + + // The base CVSS score. + BaseScore *float64 `type:"double"` + + // The base scoring vector for the CVSS score. + BaseVector *string `type:"string"` + + // The version of CVSS for the CVSS score. + Version *string `type:"string"` +} + +// String returns the string representation +func (s Cvss) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Cvss) GoString() string { + return s.String() +} + +// SetBaseScore sets the BaseScore field's value. +func (s *Cvss) SetBaseScore(v float64) *Cvss { + s.BaseScore = &v + return s +} + +// SetBaseVector sets the BaseVector field's value. +func (s *Cvss) SetBaseVector(v string) *Cvss { + s.BaseVector = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *Cvss) SetVersion(v string) *Cvss { + s.Version = &v + return s +} + // A date filter for querying findings. type DateFilter struct { _ struct{} `type:"structure"` @@ -12089,6 +12446,48 @@ func (s *IpFilter) SetCidr(v string) *IpFilter { return s } +// An IPV6 CIDR block association. +type Ipv6CidrBlockAssociation struct { + _ struct{} `type:"structure"` + + // The association ID for the IPv6 CIDR block. + AssociationId *string `type:"string"` + + // Information about the state of the CIDR block. + CidrBlockState *string `type:"string"` + + // The IPv6 CIDR block. + Ipv6CidrBlock *string `type:"string"` +} + +// String returns the string representation +func (s Ipv6CidrBlockAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Ipv6CidrBlockAssociation) GoString() string { + return s.String() +} + +// SetAssociationId sets the AssociationId field's value. +func (s *Ipv6CidrBlockAssociation) SetAssociationId(v string) *Ipv6CidrBlockAssociation { + s.AssociationId = &v + return s +} + +// SetCidrBlockState sets the CidrBlockState field's value. +func (s *Ipv6CidrBlockAssociation) SetCidrBlockState(v string) *Ipv6CidrBlockAssociation { + s.CidrBlockState = &v + return s +} + +// SetIpv6CidrBlock sets the Ipv6CidrBlock field's value. +func (s *Ipv6CidrBlockAssociation) SetIpv6CidrBlock(v string) *Ipv6CidrBlockAssociation { + s.Ipv6CidrBlock = &v + return s +} + // A keyword filter for querying findings. type KeywordFilter struct { _ struct{} `type:"structure"` @@ -12733,6 +13132,9 @@ type Network struct { // The direction of network traffic associated with a finding. Direction *string `type:"string" enum:"NetworkDirection"` + // The range of open ports that is present on the network. + OpenPortRange *PortRange `type:"structure"` + // The protocol of network-related information about a finding. Protocol *string `type:"string"` @@ -12793,6 +13195,12 @@ func (s *Network) SetDirection(v string) *Network { return s } +// SetOpenPortRange sets the OpenPortRange field's value. +func (s *Network) SetOpenPortRange(v *PortRange) *Network { + s.OpenPortRange = v + return s +} + // SetProtocol sets the Protocol field's value. func (s *Network) SetProtocol(v string) *Network { s.Protocol = &v @@ -12829,6 +13237,135 @@ func (s *Network) SetSourcePort(v int64) *Network { return s } +// Details about a network path component that occurs before or after the current +// component. +type NetworkHeader struct { + _ struct{} `type:"structure"` + + // Information about the destination of the component. + Destination *NetworkPathComponentDetails `type:"structure"` + + // The protocol used for the component. + Protocol *string `type:"string"` + + // Information about the origin of the component. + Source *NetworkPathComponentDetails `type:"structure"` +} + +// String returns the string representation +func (s NetworkHeader) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s NetworkHeader) GoString() string { + return s.String() +} + +// SetDestination sets the Destination field's value. +func (s *NetworkHeader) SetDestination(v *NetworkPathComponentDetails) *NetworkHeader { + s.Destination = v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *NetworkHeader) SetProtocol(v string) *NetworkHeader { + s.Protocol = &v + return s +} + +// SetSource sets the Source field's value. +func (s *NetworkHeader) SetSource(v *NetworkPathComponentDetails) *NetworkHeader { + s.Source = v + return s +} + +// Information about a network path component. +type NetworkPathComponent struct { + _ struct{} `type:"structure"` + + // The identifier of a component in the network path. + ComponentId *string `type:"string"` + + // The type of component. + ComponentType *string `type:"string"` + + // Information about the component that comes after the current component in + // the network path. + Egress *NetworkHeader `type:"structure"` + + // Information about the component that comes before the current node in the + // network path. + Ingress *NetworkHeader `type:"structure"` +} + +// String returns the string representation +func (s NetworkPathComponent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s NetworkPathComponent) GoString() string { + return s.String() +} + +// SetComponentId sets the ComponentId field's value. +func (s *NetworkPathComponent) SetComponentId(v string) *NetworkPathComponent { + s.ComponentId = &v + return s +} + +// SetComponentType sets the ComponentType field's value. +func (s *NetworkPathComponent) SetComponentType(v string) *NetworkPathComponent { + s.ComponentType = &v + return s +} + +// SetEgress sets the Egress field's value. +func (s *NetworkPathComponent) SetEgress(v *NetworkHeader) *NetworkPathComponent { + s.Egress = v + return s +} + +// SetIngress sets the Ingress field's value. +func (s *NetworkPathComponent) SetIngress(v *NetworkHeader) *NetworkPathComponent { + s.Ingress = v + return s +} + +// Information about the destination of the next component in the network path. +type NetworkPathComponentDetails struct { + _ struct{} `type:"structure"` + + // The IP addresses of the destination. + Address []*string `type:"list"` + + // A list of port ranges for the destination. + PortRanges []*PortRange `type:"list"` +} + +// String returns the string representation +func (s NetworkPathComponentDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s NetworkPathComponentDetails) GoString() string { + return s.String() +} + +// SetAddress sets the Address field's value. +func (s *NetworkPathComponentDetails) SetAddress(v []*string) *NetworkPathComponentDetails { + s.Address = v + return s +} + +// SetPortRanges sets the PortRanges field's value. +func (s *NetworkPathComponentDetails) SetPortRanges(v []*PortRange) *NetworkPathComponentDetails { + s.PortRanges = v + return s +} + // A user-defined note added to a finding. type Note struct { _ struct{} `type:"structure"` @@ -12994,6 +13531,39 @@ func (s *NumberFilter) SetLte(v float64) *NumberFilter { return s } +// A range of ports. +type PortRange struct { + _ struct{} `type:"structure"` + + // The first port in the port range. + Begin *int64 `type:"integer"` + + // The last port in the port range. + End *int64 `type:"integer"` +} + +// String returns the string representation +func (s PortRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PortRange) GoString() string { + return s.String() +} + +// SetBegin sets the Begin field's value. +func (s *PortRange) SetBegin(v int64) *PortRange { + s.Begin = &v + return s +} + +// SetEnd sets the End field's value. +func (s *PortRange) SetEnd(v int64) *PortRange { + s.End = &v + return s +} + // The details of process-related information about a finding. type ProcessDetails struct { _ struct{} `type:"structure"` @@ -13453,6 +14023,9 @@ func (s *ResourceConflictException) RequestID() string { type ResourceDetails struct { _ struct{} `type:"structure"` + // Details for an autoscaling group. + AwsAutoScalingAutoScalingGroup *AwsAutoScalingAutoScalingGroupDetails `type:"structure"` + // Details about a CloudFront distribution. AwsCloudFrontDistribution *AwsCloudFrontDistributionDetails `type:"structure"` @@ -13468,6 +14041,12 @@ type ResourceDetails struct { // Details for an EC2 security group. AwsEc2SecurityGroup *AwsEc2SecurityGroupDetails `type:"structure"` + // Details for an EC2 volume. + AwsEc2Volume *AwsEc2VolumeDetails `type:"structure"` + + // Details for an EC2 VPC. + AwsEc2Vpc *AwsEc2VpcDetails `type:"structure"` + // Details for an Elasticsearch domain. AwsElasticsearchDomain *AwsElasticsearchDomainDetails `type:"structure"` @@ -13548,6 +14127,12 @@ func (s *ResourceDetails) Validate() error { return nil } +// SetAwsAutoScalingAutoScalingGroup sets the AwsAutoScalingAutoScalingGroup field's value. +func (s *ResourceDetails) SetAwsAutoScalingAutoScalingGroup(v *AwsAutoScalingAutoScalingGroupDetails) *ResourceDetails { + s.AwsAutoScalingAutoScalingGroup = v + return s +} + // SetAwsCloudFrontDistribution sets the AwsCloudFrontDistribution field's value. func (s *ResourceDetails) SetAwsCloudFrontDistribution(v *AwsCloudFrontDistributionDetails) *ResourceDetails { s.AwsCloudFrontDistribution = v @@ -13578,6 +14163,18 @@ func (s *ResourceDetails) SetAwsEc2SecurityGroup(v *AwsEc2SecurityGroupDetails) return s } +// SetAwsEc2Volume sets the AwsEc2Volume field's value. +func (s *ResourceDetails) SetAwsEc2Volume(v *AwsEc2VolumeDetails) *ResourceDetails { + s.AwsEc2Volume = v + return s +} + +// SetAwsEc2Vpc sets the AwsEc2Vpc field's value. +func (s *ResourceDetails) SetAwsEc2Vpc(v *AwsEc2VpcDetails) *ResourceDetails { + s.AwsEc2Vpc = v + return s +} + // SetAwsElasticsearchDomain sets the AwsElasticsearchDomain field's value. func (s *ResourceDetails) SetAwsElasticsearchDomain(v *AwsElasticsearchDomainDetails) *ResourceDetails { s.AwsElasticsearchDomain = v @@ -13905,6 +14502,66 @@ func (s *SeverityUpdate) SetProduct(v float64) *SeverityUpdate { return s } +// Information about a software package. +type SoftwarePackage struct { + _ struct{} `type:"structure"` + + // The architecture used for the software package. + Architecture *string `type:"string"` + + // The epoch of the software package. + Epoch *string `type:"string"` + + // The name of the software package. + Name *string `type:"string"` + + // The release of the software package. + Release *string `type:"string"` + + // The version of the software package. + Version *string `type:"string"` +} + +// String returns the string representation +func (s SoftwarePackage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SoftwarePackage) GoString() string { + return s.String() +} + +// SetArchitecture sets the Architecture field's value. +func (s *SoftwarePackage) SetArchitecture(v string) *SoftwarePackage { + s.Architecture = &v + return s +} + +// SetEpoch sets the Epoch field's value. +func (s *SoftwarePackage) SetEpoch(v string) *SoftwarePackage { + s.Epoch = &v + return s +} + +// SetName sets the Name field's value. +func (s *SoftwarePackage) SetName(v string) *SoftwarePackage { + s.Name = &v + return s +} + +// SetRelease sets the Release field's value. +func (s *SoftwarePackage) SetRelease(v string) *SoftwarePackage { + s.Release = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *SoftwarePackage) SetVersion(v string) *SoftwarePackage { + s.Version = &v + return s +} + // A collection of finding attributes used to sort findings. type SortCriterion struct { _ struct{} `type:"structure"` @@ -14751,6 +15408,7 @@ type UpdateStandardsControlInput struct { ControlStatus *string `type:"string" enum:"ControlStatus"` // A description of the reason why you are disabling a security standard control. + // If you are disabling a control, then this is required. DisabledReason *string `type:"string"` // The ARN of the security standard control to enable or disable. @@ -14817,6 +15475,170 @@ func (s UpdateStandardsControlOutput) GoString() string { return s.String() } +// A vulnerability associated with a finding. +type Vulnerability struct { + _ struct{} `type:"structure"` + + // CVSS scores from the advisory related to the vulnerability. + Cvss []*Cvss `type:"list"` + + // The identifier of the vulnerability. + // + // Id is a required field + Id *string `type:"string" required:"true"` + + // A list of URLs that provide additional information about the vulnerability. + ReferenceUrls []*string `type:"list"` + + // List of vulnerabilities that are related to this vulnerability. + RelatedVulnerabilities []*string `type:"list"` + + // Information about the vendor that generates the vulnerability report. + Vendor *VulnerabilityVendor `type:"structure"` + + // List of software packages that have the vulnerability. + VulnerablePackages []*SoftwarePackage `type:"list"` +} + +// String returns the string representation +func (s Vulnerability) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Vulnerability) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Vulnerability) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Vulnerability"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Vendor != nil { + if err := s.Vendor.Validate(); err != nil { + invalidParams.AddNested("Vendor", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCvss sets the Cvss field's value. +func (s *Vulnerability) SetCvss(v []*Cvss) *Vulnerability { + s.Cvss = v + return s +} + +// SetId sets the Id field's value. +func (s *Vulnerability) SetId(v string) *Vulnerability { + s.Id = &v + return s +} + +// SetReferenceUrls sets the ReferenceUrls field's value. +func (s *Vulnerability) SetReferenceUrls(v []*string) *Vulnerability { + s.ReferenceUrls = v + return s +} + +// SetRelatedVulnerabilities sets the RelatedVulnerabilities field's value. +func (s *Vulnerability) SetRelatedVulnerabilities(v []*string) *Vulnerability { + s.RelatedVulnerabilities = v + return s +} + +// SetVendor sets the Vendor field's value. +func (s *Vulnerability) SetVendor(v *VulnerabilityVendor) *Vulnerability { + s.Vendor = v + return s +} + +// SetVulnerablePackages sets the VulnerablePackages field's value. +func (s *Vulnerability) SetVulnerablePackages(v []*SoftwarePackage) *Vulnerability { + s.VulnerablePackages = v + return s +} + +// A vendor that generates a vulnerability report. +type VulnerabilityVendor struct { + _ struct{} `type:"structure"` + + // The name of the vendor. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // The URL of the vulnerability advisory. + Url *string `type:"string"` + + // The datetime when the vulnerability advisory was created. + VendorCreatedAt *string `type:"string"` + + // The severity that the vendor assigned to the vulnerability. + VendorSeverity *string `type:"string"` + + // The datetime when the vulnerability advisory was last updated. + VendorUpdatedAt *string `type:"string"` +} + +// String returns the string representation +func (s VulnerabilityVendor) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VulnerabilityVendor) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VulnerabilityVendor) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VulnerabilityVendor"} + 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 *VulnerabilityVendor) SetName(v string) *VulnerabilityVendor { + s.Name = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *VulnerabilityVendor) SetUrl(v string) *VulnerabilityVendor { + s.Url = &v + return s +} + +// SetVendorCreatedAt sets the VendorCreatedAt field's value. +func (s *VulnerabilityVendor) SetVendorCreatedAt(v string) *VulnerabilityVendor { + s.VendorCreatedAt = &v + return s +} + +// SetVendorSeverity sets the VendorSeverity field's value. +func (s *VulnerabilityVendor) SetVendorSeverity(v string) *VulnerabilityVendor { + s.VendorSeverity = &v + return s +} + +// SetVendorUpdatedAt sets the VendorUpdatedAt field's value. +func (s *VulnerabilityVendor) SetVendorUpdatedAt(v string) *VulnerabilityVendor { + s.VendorUpdatedAt = &v + return s +} + // Details about the action that CloudFront or AWS WAF takes when a web request // matches the conditions in the rule. type WafAction struct { diff --git a/vendor/github.com/aws/aws-sdk-go/service/sns/api.go b/vendor/github.com/aws/aws-sdk-go/service/sns/api.go index 780b1884323..8fd2eba3ed1 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/sns/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/sns/api.go @@ -341,22 +341,33 @@ func (c *SNS) CreatePlatformApplicationRequest(input *CreatePlatformApplicationI // CreatePlatformApplication API operation for Amazon Simple Notification Service. // // Creates a platform application object for one of the supported push notification -// services, such as APNS and FCM, to which devices and mobile apps may register. -// You must specify PlatformPrincipal and PlatformCredential attributes when -// using the CreatePlatformApplication action. The PlatformPrincipal is received -// from the notification service. For APNS/APNS_SANDBOX, PlatformPrincipal is -// "SSL certificate". For FCM, PlatformPrincipal is not applicable. For ADM, -// PlatformPrincipal is "client id". The PlatformCredential is also received -// from the notification service. For WNS, PlatformPrincipal is "Package Security -// Identifier". For MPNS, PlatformPrincipal is "TLS certificate". For Baidu, -// PlatformPrincipal is "API key". -// -// For APNS/APNS_SANDBOX, PlatformCredential is "private key". For FCM, PlatformCredential -// is "API key". For ADM, PlatformCredential is "client secret". For WNS, PlatformCredential -// is "secret key". For MPNS, PlatformCredential is "private key". For Baidu, -// PlatformCredential is "secret key". The PlatformApplicationArn that is returned -// when using CreatePlatformApplication is then used as an attribute for the -// CreatePlatformEndpoint action. +// services, such as APNS and GCM (Firebase Cloud Messaging), to which devices +// and mobile apps may register. You must specify PlatformPrincipal and PlatformCredential +// attributes when using the CreatePlatformApplication action. +// +// PlatformPrincipal and PlatformCredential are received from the notification +// service. +// +// * For ADM, PlatformPrincipal is client id and PlatformCredential is client +// secret. +// +// * For Baidu, PlatformPrincipal is API key and PlatformCredential is secret +// key. +// +// * For APNS and APNS_SANDBOX, PlatformPrincipal is SSL certificate and +// PlatformCredential is private key. +// +// * For GCM (Firebase Cloud Messaging), there is no PlatformPrincipal and +// the PlatformCredential is API key. +// +// * For MPNS, PlatformPrincipal is TLS certificate and PlatformCredential +// is private key. +// +// * For WNS, PlatformPrincipal is Package Security Identifier and PlatformCredential +// is secret key. +// +// You can use the returned PlatformApplicationArn as an attribute for the CreatePlatformEndpoint +// action. // // 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 @@ -442,11 +453,10 @@ func (c *SNS) CreatePlatformEndpointRequest(input *CreatePlatformEndpointInput) // CreatePlatformEndpoint API operation for Amazon Simple Notification Service. // // Creates an endpoint for a device and mobile app on one of the supported push -// notification services, such as FCM and APNS. CreatePlatformEndpoint requires -// the PlatformApplicationArn that is returned from CreatePlatformApplication. -// The EndpointArn that is returned when using CreatePlatformEndpoint can then -// be used by the Publish action to send a message to a mobile app or by the -// Subscribe action for subscription to a topic. The CreatePlatformEndpoint +// notification services, such as GCM (Firebase Cloud Messaging) and APNS. CreatePlatformEndpoint +// requires the PlatformApplicationArn that is returned from CreatePlatformApplication. +// You can use the returned EndpointArn to send a message to a mobile app or +// by the Subscribe action for subscription to a topic. The CreatePlatformEndpoint // action is idempotent, so if the requester already owns an endpoint with the // same device token and attributes, that endpoint's ARN is returned without // creating a new endpoint. For more information, see Using Amazon SNS Mobile @@ -543,10 +553,10 @@ func (c *SNS) CreateTopicRequest(input *CreateTopicInput) (req *request.Request, // CreateTopic API operation for Amazon Simple Notification Service. // // Creates a topic to which notifications can be published. Users can create -// at most 100,000 topics. For more information, see https://aws.amazon.com/sns -// (http://aws.amazon.com/sns/). This action is idempotent, so if the requester -// already owns a topic with the specified name, that topic's ARN is returned -// without creating a new topic. +// at most 100,000 standard topics (at most 1,000 FIFO topics). For more information, +// see https://aws.amazon.com/sns (http://aws.amazon.com/sns/). This action +// is idempotent, so if the requester already owns a topic with the specified +// name, that topic's ARN is returned without creating a new topic. // // 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 @@ -746,8 +756,8 @@ func (c *SNS) DeletePlatformApplicationRequest(input *DeletePlatformApplicationI // DeletePlatformApplication API operation for Amazon Simple Notification Service. // // Deletes a platform application object for one of the supported push notification -// services, such as APNS and FCM. For more information, see Using Amazon SNS -// Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). +// services, such as APNS and GCM (Firebase Cloud Messaging). For more information, +// see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.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 @@ -937,8 +947,8 @@ func (c *SNS) GetEndpointAttributesRequest(input *GetEndpointAttributesInput) (r // GetEndpointAttributes API operation for Amazon Simple Notification Service. // // Retrieves the endpoint attributes for a device on one of the supported push -// notification services, such as FCM and APNS. For more information, see Using -// Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). +// notification services, such as GCM (Firebase Cloud Messaging) and APNS. For +// more information, see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.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 @@ -1027,8 +1037,8 @@ func (c *SNS) GetPlatformApplicationAttributesRequest(input *GetPlatformApplicat // GetPlatformApplicationAttributes API operation for Amazon Simple Notification Service. // // Retrieves the attributes of the platform application object for the supported -// push notification services, such as APNS and FCM. For more information, see -// Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). +// push notification services, such as APNS and GCM (Firebase Cloud Messaging). +// For more information, see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.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 @@ -1395,12 +1405,13 @@ func (c *SNS) ListEndpointsByPlatformApplicationRequest(input *ListEndpointsByPl // ListEndpointsByPlatformApplication API operation for Amazon Simple Notification Service. // // Lists the endpoints and endpoint attributes for devices in a supported push -// notification service, such as FCM and APNS. The results for ListEndpointsByPlatformApplication -// are paginated and return a limited list of endpoints, up to 100. If additional -// records are available after the first page results, then a NextToken string -// will be returned. To receive the next page, you call ListEndpointsByPlatformApplication -// again using the NextToken string received from the previous call. When there -// are no more records to return, NextToken will be null. For more information, +// notification service, such as GCM (Firebase Cloud Messaging) and APNS. The +// results for ListEndpointsByPlatformApplication are paginated and return a +// limited list of endpoints, up to 100. If additional records are available +// after the first page results, then a NextToken string will be returned. To +// receive the next page, you call ListEndpointsByPlatformApplication again +// using the NextToken string received from the previous call. When there are +// no more records to return, NextToken will be null. For more information, // see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // This action is throttled at 30 transactions per second (TPS). @@ -1647,13 +1658,13 @@ func (c *SNS) ListPlatformApplicationsRequest(input *ListPlatformApplicationsInp // ListPlatformApplications API operation for Amazon Simple Notification Service. // // Lists the platform application objects for the supported push notification -// services, such as APNS and FCM. The results for ListPlatformApplications -// are paginated and return a limited list of applications, up to 100. If additional -// records are available after the first page results, then a NextToken string -// will be returned. To receive the next page, you call ListPlatformApplications -// using the NextToken string received from the previous call. When there are -// no more records to return, NextToken will be null. For more information, -// see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). +// services, such as APNS and GCM (Firebase Cloud Messaging). The results for +// ListPlatformApplications are paginated and return a limited list of applications, +// up to 100. If additional records are available after the first page results, +// then a NextToken string will be returned. To receive the next page, you call +// ListPlatformApplications using the NextToken string received from the previous +// call. When there are no more records to return, NextToken will be null. For +// more information, see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // This action is throttled at 15 transactions per second (TPS). // @@ -2426,8 +2437,9 @@ func (c *SNS) PublishRequest(input *PublishInput) (req *request.Request, output // Publish API operation for Amazon Simple Notification Service. // -// Sends a message to an Amazon SNS topic or sends a text message (SMS message) -// directly to a phone number. +// Sends a message to an Amazon SNS topic, a text message (SMS message) directly +// to a phone number, or a message to a mobile platform endpoint (when you specify +// the TargetArn). // // If you send a message to a topic, Amazon SNS delivers the message to each // endpoint that is subscribed to the topic. The format of the message depends @@ -2444,6 +2456,8 @@ func (c *SNS) PublishRequest(input *PublishInput) (req *request.Request, output // For more information about formatting messages, see Send Custom Platform-Specific // Payloads in Messages to Mobile Devices (https://docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html). // +// You can publish messages only to topics and endpoints in the same AWS Region. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2660,8 +2674,8 @@ func (c *SNS) SetEndpointAttributesRequest(input *SetEndpointAttributesInput) (r // SetEndpointAttributes API operation for Amazon Simple Notification Service. // // Sets the attributes for an endpoint for a device on one of the supported -// push notification services, such as FCM and APNS. For more information, see -// Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). +// push notification services, such as GCM (Firebase Cloud Messaging) and APNS. +// For more information, see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.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 @@ -2751,8 +2765,8 @@ func (c *SNS) SetPlatformApplicationAttributesRequest(input *SetPlatformApplicat // SetPlatformApplicationAttributes API operation for Amazon Simple Notification Service. // // Sets the attributes of the platform application object for the supported -// push notification services, such as APNS and FCM. For more information, see -// Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). +// push notification services, such as APNS and GCM (Firebase Cloud Messaging). +// For more information, see Using Amazon SNS Mobile Push Notifications (https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // For information on configuring attributes for message delivery status, see // Using Amazon SNS Application Attributes for Message Delivery Status (https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html). // @@ -3126,10 +3140,12 @@ func (c *SNS) SubscribeRequest(input *SubscribeInput) (req *request.Request, out // Subscribe API operation for Amazon Simple Notification Service. // -// Prepares to subscribe an endpoint by sending the endpoint a confirmation -// message. To actually create a subscription, the endpoint owner must call -// the ConfirmSubscription action with the token from the confirmation message. -// Confirmation tokens are valid for three days. +// Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S +// or email, or if the endpoint and the topic are not in the same AWS account, +// the endpoint owner must the ConfirmSubscription action to confirm the subscription. +// +// You call the ConfirmSubscription action with the token from the subscription +// response. Confirmation tokens are valid for three days. // // This action is throttled at 100 transactions per second (TPS). // @@ -3782,7 +3798,7 @@ type CreatePlatformApplicationInput struct { Name *string `type:"string" required:"true"` // The following platforms are supported: ADM (Amazon Device Messaging), APNS - // (Apple Push Notification Service), APNS_SANDBOX, and FCM (Firebase Cloud + // (Apple Push Notification Service), APNS_SANDBOX, and GCM (Firebase Cloud // Messaging). // // Platform is a required field @@ -3880,8 +3896,9 @@ type CreatePlatformEndpointInput struct { // Unique identifier created by the notification service for an app on a device. // The specific name for Token will vary, depending on which notification service // is being used. For example, when using APNS as the notification service, - // you need the device token. Alternatively, when using FCM or ADM, the device - // token equivalent is called the registration ID. + // you need the device token. Alternatively, when using GCM (Firebase Cloud + // Messaging) or ADM, the device token equivalent is called the registration + // ID. // // Token is a required field Token *string `type:"string" required:"true"` @@ -3975,15 +3992,30 @@ type CreateTopicInput struct { // // * DisplayName – The display name to use for a topic with SMS subscriptions. // + // * FifoTopic – Set to true to create a FIFO topic. + // // * Policy – The policy that defines who can access your topic. By default, // only the topic owner can publish or subscribe to the topic. // // The following attribute applies only to server-side-encryption (https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html): // - // * KmsMasterKeyId - The ID of an AWS-managed customer master key (CMK) + // * KmsMasterKeyId – The ID of an AWS-managed customer master key (CMK) // for Amazon SNS or a custom CMK. For more information, see Key Terms (https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms). // For more examples, see KeyId (https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters) // in the AWS Key Management Service API Reference. + // + // The following attribute applies only to FIFO topics: + // + // * ContentBasedDeduplication – Enables content-based deduplication. Amazon + // SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the + // body of the message (but not the attributes of the message). + // + // * When ContentBasedDeduplication is in effect, messages with identical + // content sent within the deduplication interval are treated as duplicates + // and only one copy of the message is delivered. + // + // * If the queue has ContentBasedDeduplication set, your MessageDeduplicationId + // overrides the generated one. Attributes map[string]*string `type:"map"` // The name of the topic you want to create. @@ -3992,6 +4024,8 @@ type CreateTopicInput struct { // ASCII letters, numbers, underscores, and hyphens, and must be between 1 and // 256 characters long. // + // For a FIFO (first-in-first-out) topic, the name must end with the .fifo suffix. + // // Name is a required field Name *string `type:"string" required:"true"` @@ -4531,6 +4565,8 @@ type GetSubscriptionAttributesOutput struct { // account system defaults. // // * FilterPolicy – The filter policy JSON that is assigned to the subscription. + // For more information, see Amazon SNS Message Filtering (https://docs.aws.amazon.com/sns/latest/dg/sns-message-filtering.html) + // in the Amazon SNS Developer Guide. // // * Owner – The AWS account ID of the subscription's owner. // @@ -4636,7 +4672,7 @@ type GetTopicAttributesOutput struct { // // * TopicArn – The topic's ARN. // - // * EffectiveDeliveryPolicy – Yhe JSON serialization of the effective + // * EffectiveDeliveryPolicy – The JSON serialization of the effective // delivery policy, taking system defaults into account. // // The following attribute applies only to server-side-encryption (https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html): @@ -5641,27 +5677,27 @@ type SetPlatformApplicationAttributesInput struct { // the following: // // * PlatformCredential – The credential received from the notification - // service. For APNS/APNS_SANDBOX, PlatformCredential is private key. For - // FCM, PlatformCredential is "API key". For ADM, PlatformCredential is "client - // secret". + // service. For APNS and APNS_SANDBOX, PlatformCredential is private key. + // For GCM (Firebase Cloud Messaging), PlatformCredential is API key. For + // ADM, PlatformCredential is client secret. // // * PlatformPrincipal – The principal received from the notification service. - // For APNS/APNS_SANDBOX, PlatformPrincipal is SSL certificate. For FCM, - // PlatformPrincipal is not applicable. For ADM, PlatformPrincipal is "client - // id". + // For APNS and APNS_SANDBOX, PlatformPrincipal is SSL certificate. For GCM + // (Firebase Cloud Messaging), there is no PlatformPrincipal. For ADM, PlatformPrincipal + // is client id. // // * EventEndpointCreated – Topic ARN to which EndpointCreated event notifications - // should be sent. + // are sent. // // * EventEndpointDeleted – Topic ARN to which EndpointDeleted event notifications - // should be sent. + // are sent. // // * EventEndpointUpdated – Topic ARN to which EndpointUpdate event notifications - // should be sent. + // are sent. // // * EventDeliveryFailure – Topic ARN to which DeliveryFailure event notifications - // should be sent upon Direct Publish delivery failure (permanent) to one - // of the application's endpoints. + // are sent upon Direct Publish delivery failure (permanent) to one of the + // application's endpoints. // // * SuccessFeedbackRoleArn – IAM role ARN used to give Amazon SNS write // access to use CloudWatch Logs on your behalf. @@ -5977,11 +6013,24 @@ type SetTopicAttributesInput struct { // // The following attribute applies only to server-side-encryption (https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html): // - // * KmsMasterKeyId - The ID of an AWS-managed customer master key (CMK) + // * KmsMasterKeyId – The ID of an AWS-managed customer master key (CMK) // for Amazon SNS or a custom CMK. For more information, see Key Terms (https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms). // For more examples, see KeyId (https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters) // in the AWS Key Management Service API Reference. // + // The following attribute applies only to FIFO topics: + // + // * ContentBasedDeduplication – Enables content-based deduplication. Amazon + // SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the + // body of the message (but not the attributes of the message). + // + // * When ContentBasedDeduplication is in effect, messages with identical + // content sent within the deduplication interval are treated as duplicates + // and only one copy of the message is delivered. + // + // * If the queue has ContentBasedDeduplication set, your MessageDeduplicationId + // overrides the generated one. + // // AttributeName is a required field AttributeName *string `type:"string" required:"true"` @@ -6083,9 +6132,11 @@ type SubscribeInput struct { // The endpoint that you want to receive notifications. Endpoints vary by protocol: // - // * For the http protocol, the endpoint is an URL beginning with http:// + // * For the http protocol, the (public) endpoint is a URL beginning with + // http:// // - // * For the https protocol, the endpoint is a URL beginning with https:// + // * For the https protocol, the (public) endpoint is a URL beginning with + // https:// // // * For the email protocol, the endpoint is an email address // @@ -6128,17 +6179,13 @@ type SubscribeInput struct { // Sets whether the response from the Subscribe request includes the subscription // ARN, even if the subscription is not yet confirmed. // - // * If you have the subscription ARN returned, the response includes the - // ARN in all cases, even if the subscription is not yet confirmed. - // - // * If you don't have the subscription ARN returned, in addition to the - // ARN for confirmed subscriptions, the response also includes the pending - // subscription ARN value for subscriptions that aren't yet confirmed. A - // subscription becomes confirmed when the subscriber calls the ConfirmSubscription + // * If you set this parameter to true, the response includes the ARN in + // all cases, even if the subscription is not yet confirmed. In addition + // to the ARN for confirmed subscriptions, the response also includes the + // pending subscription ARN value for subscriptions that aren't yet confirmed. + // A subscription becomes confirmed when the subscriber calls the ConfirmSubscription // action with a confirmation token. // - // If you set this parameter to true, . - // // The default value is false. ReturnSubscriptionArn *bool `type:"boolean"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go b/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go index f75ac135fe0..21313817ff9 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go @@ -5733,7 +5733,7 @@ func (c *StorageGateway) RefreshCacheRequest(input *RefreshCacheInput) (req *req // RefreshCache API operation for AWS Storage Gateway. // // Refreshes the cache for the specified file share. This operation finds objects -// in the Amazon S3 bucket that were added, removed or replaced since the gateway +// in the Amazon S3 bucket that were added, removed, or replaced since the gateway // last listed the bucket's contents and cached the results. This operation // is only supported in the file gateway type. You can subscribe to be notified // through an Amazon CloudWatch event when your RefreshCache operation completes. @@ -8594,6 +8594,35 @@ func (s *AutomaticTapeCreationRule) SetTapeSizeInBytes(v int64) *AutomaticTapeCr return s } +// Lists refresh cache information. +type CacheAttributes struct { + _ struct{} `type:"structure"` + + // Refreshes a file share's cache by using Time To Live (TTL). TTL is the length + // of time since the last refresh after which access to the directory would + // cause the file gateway to first refresh that directory's contents from the + // Amazon S3 bucket. The TTL duration is in seconds. + // + // Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days) + CacheStaleTimeoutInSeconds *int64 `type:"integer"` +} + +// String returns the string representation +func (s CacheAttributes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CacheAttributes) GoString() string { + return s.String() +} + +// SetCacheStaleTimeoutInSeconds sets the CacheStaleTimeoutInSeconds field's value. +func (s *CacheAttributes) SetCacheStaleTimeoutInSeconds(v int64) *CacheAttributes { + s.CacheStaleTimeoutInSeconds = &v + return s +} + // Describes an iSCSI cached volume. type CachediSCSIVolume struct { _ struct{} `type:"structure"` @@ -9209,6 +9238,9 @@ func (s *CreateCachediSCSIVolumeOutput) SetVolumeARN(v string) *CreateCachediSCS type CreateNFSFileShareInput struct { _ struct{} `type:"structure"` + // Refresh cache information. + CacheAttributes *CacheAttributes `type:"structure"` + // The list of clients that are allowed to access the file gateway. The list // must contain either valid IP addresses or valid CIDR blocks. ClientList []*string `min:"1" type:"list"` @@ -9225,6 +9257,11 @@ type CreateNFSFileShareInput struct { // Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA DefaultStorageClass *string `min:"5" type:"string"` + // The name of the file share. Optional. + // + // FileShareName must be set if an S3 prefix name is set in LocationARN. + FileShareName *string `min:"1" type:"string"` + // The Amazon Resource Name (ARN) of the file gateway on which you want to create // a file share. // @@ -9249,7 +9286,8 @@ type CreateNFSFileShareInput struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backed storage used for storing file data. + // The ARN of the backend storage used for storing file data. A prefix name + // can be added to the S3 bucket name. It must end with a "/". // // LocationARN is a required field LocationARN *string `min:"16" type:"string" required:"true"` @@ -9332,6 +9370,9 @@ func (s *CreateNFSFileShareInput) Validate() error { if s.DefaultStorageClass != nil && len(*s.DefaultStorageClass) < 5 { invalidParams.Add(request.NewErrParamMinLen("DefaultStorageClass", 5)) } + if s.FileShareName != nil && len(*s.FileShareName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileShareName", 1)) + } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } @@ -9378,6 +9419,12 @@ func (s *CreateNFSFileShareInput) Validate() error { return nil } +// SetCacheAttributes sets the CacheAttributes field's value. +func (s *CreateNFSFileShareInput) SetCacheAttributes(v *CacheAttributes) *CreateNFSFileShareInput { + s.CacheAttributes = v + return s +} + // SetClientList sets the ClientList field's value. func (s *CreateNFSFileShareInput) SetClientList(v []*string) *CreateNFSFileShareInput { s.ClientList = v @@ -9396,6 +9443,12 @@ func (s *CreateNFSFileShareInput) SetDefaultStorageClass(v string) *CreateNFSFil return s } +// SetFileShareName sets the FileShareName field's value. +func (s *CreateNFSFileShareInput) SetFileShareName(v string) *CreateNFSFileShareInput { + s.FileShareName = &v + return s +} + // SetGatewayARN sets the GatewayARN field's value. func (s *CreateNFSFileShareInput) SetGatewayARN(v string) *CreateNFSFileShareInput { s.GatewayARN = &v @@ -9496,9 +9549,10 @@ func (s *CreateNFSFileShareOutput) SetFileShareARN(v string) *CreateNFSFileShare type CreateSMBFileShareInput struct { _ struct{} `type:"structure"` - // A list of users in the Active Directory that will be granted administrator + // A list of users or groups in the Active Directory that will be granted administrator // privileges on the file share. These users can do all file operations as the - // super-user. + // super-user. Acceptable formats include: DOMAIN\User1, user1, @group1, and + // @DOMAIN\group1. // // Use this option very carefully, because any user in this list can do anything // they like on the file share, regardless of file permissions. @@ -9513,6 +9567,14 @@ type CreateSMBFileShareInput struct { // Valid Values: ActiveDirectory | GuestAccess Authentication *string `min:"5" type:"string"` + // Refresh cache information. + CacheAttributes *CacheAttributes `type:"structure"` + + // The case of an object name in an Amazon S3 bucket. For ClientSpecified, the + // client determines the case sensitivity. For CaseSensitive, the gateway determines + // the case sensitivity. The default value is ClientSpecified. + CaseSensitivity *string `type:"string" enum:"CaseSensitivity"` + // A unique string value that you supply that is used by file gateway to ensure // idempotent file share creation. // @@ -9525,6 +9587,11 @@ type CreateSMBFileShareInput struct { // Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA DefaultStorageClass *string `min:"5" type:"string"` + // The name of the file share. Optional. + // + // FileShareName must be set if an S3 prefix name is set in LocationARN. + FileShareName *string `min:"1" type:"string"` + // The ARN of the file gateway on which you want to create a file share. // // GatewayARN is a required field @@ -9538,8 +9605,9 @@ type CreateSMBFileShareInput struct { GuessMIMETypeEnabled *bool `type:"boolean"` // A list of users or groups in the Active Directory that are not allowed to - // access the file share. A group must be prefixed with the @ character. For - // example, @group1. Can only be set if Authentication is set to ActiveDirectory. + // access the file share. A group must be prefixed with the @ character. Acceptable + // formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only + // be set if Authentication is set to ActiveDirectory. InvalidUserList []*string `type:"list"` // Set to true to use Amazon S3 server-side encryption with your own AWS KMS @@ -9553,7 +9621,8 @@ type CreateSMBFileShareInput struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backed storage used for storing file data. + // The ARN of the backend storage used for storing file data. A prefix name + // can be added to the S3 bucket name. It must end with a "/". // // LocationARN is a required field LocationARN *string `min:"16" type:"string" required:"true"` @@ -9608,8 +9677,9 @@ type CreateSMBFileShareInput struct { Tags []*Tag `type:"list"` // A list of users or groups in the Active Directory that are allowed to access - // the file share. A group must be prefixed with the @ character. For example, - // @group1. Can only be set if Authentication is set to ActiveDirectory. + // the file share. A group must be prefixed with the @ character. Acceptable + // formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only + // be set if Authentication is set to ActiveDirectory. ValidUserList []*string `type:"list"` } @@ -9638,6 +9708,9 @@ func (s *CreateSMBFileShareInput) Validate() error { if s.DefaultStorageClass != nil && len(*s.DefaultStorageClass) < 5 { invalidParams.Add(request.NewErrParamMinLen("DefaultStorageClass", 5)) } + if s.FileShareName != nil && len(*s.FileShareName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileShareName", 1)) + } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } @@ -9694,6 +9767,18 @@ func (s *CreateSMBFileShareInput) SetAuthentication(v string) *CreateSMBFileShar return s } +// SetCacheAttributes sets the CacheAttributes field's value. +func (s *CreateSMBFileShareInput) SetCacheAttributes(v *CacheAttributes) *CreateSMBFileShareInput { + s.CacheAttributes = v + return s +} + +// SetCaseSensitivity sets the CaseSensitivity field's value. +func (s *CreateSMBFileShareInput) SetCaseSensitivity(v string) *CreateSMBFileShareInput { + s.CaseSensitivity = &v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *CreateSMBFileShareInput) SetClientToken(v string) *CreateSMBFileShareInput { s.ClientToken = &v @@ -9706,6 +9791,12 @@ func (s *CreateSMBFileShareInput) SetDefaultStorageClass(v string) *CreateSMBFil return s } +// SetFileShareName sets the FileShareName field's value. +func (s *CreateSMBFileShareInput) SetFileShareName(v string) *CreateSMBFileShareInput { + s.FileShareName = &v + return s +} + // SetGatewayARN sets the GatewayARN field's value. func (s *CreateSMBFileShareInput) SetGatewayARN(v string) *CreateSMBFileShareInput { s.GatewayARN = &v @@ -15020,6 +15111,9 @@ func (s *NFSFileShareDefaults) SetOwnerId(v int64) *NFSFileShareDefaults { type NFSFileShareInfo struct { _ struct{} `type:"structure"` + // Refresh cache information. + CacheAttributes *CacheAttributes `type:"structure"` + // The list of clients that are allowed to access the file gateway. The list // must contain either valid IP addresses or valid CIDR blocks. ClientList []*string `min:"1" type:"list"` @@ -15036,6 +15130,11 @@ type NFSFileShareInfo struct { // The ID of the file share. FileShareId *string `min:"12" type:"string"` + // The name of the file share. Optional. + // + // FileShareName must be set if an S3 prefix name is set in LocationARN. + FileShareName *string `min:"1" type:"string"` + // The status of the file share. // // Valid Values: CREATING | UPDATING | AVAILABLE | DELETING @@ -15063,7 +15162,8 @@ type NFSFileShareInfo struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backend storage used for storing file data. + // The ARN of the backend storage used for storing file data. A prefix name + // can be added to the S3 bucket name. It must end with a "/". LocationARN *string `min:"16" type:"string"` // Describes Network File System (NFS) file share default values. Files and @@ -15129,6 +15229,12 @@ func (s NFSFileShareInfo) GoString() string { return s.String() } +// SetCacheAttributes sets the CacheAttributes field's value. +func (s *NFSFileShareInfo) SetCacheAttributes(v *CacheAttributes) *NFSFileShareInfo { + s.CacheAttributes = v + return s +} + // SetClientList sets the ClientList field's value. func (s *NFSFileShareInfo) SetClientList(v []*string) *NFSFileShareInfo { s.ClientList = v @@ -15153,6 +15259,12 @@ func (s *NFSFileShareInfo) SetFileShareId(v string) *NFSFileShareInfo { return s } +// SetFileShareName sets the FileShareName field's value. +func (s *NFSFileShareInfo) SetFileShareName(v string) *NFSFileShareInfo { + s.FileShareName = &v + return s +} + // SetFileShareStatus sets the FileShareStatus field's value. func (s *NFSFileShareInfo) SetFileShareStatus(v string) *NFSFileShareInfo { s.FileShareStatus = &v @@ -15796,7 +15908,8 @@ type SMBFileShareInfo struct { // A list of users or groups in the Active Directory that have administrator // rights to the file share. A group must be prefixed with the @ character. - // For example @group1. Can only be set if Authentication is set to ActiveDirectory. + // Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. + // Can only be set if Authentication is set to ActiveDirectory. AdminUserList []*string `type:"list"` // The Amazon Resource Name (ARN) of the storage used for the audit logs. @@ -15807,6 +15920,14 @@ type SMBFileShareInfo struct { // Valid Values: ActiveDirectory | GuestAccess Authentication *string `min:"5" type:"string"` + // Refresh cache information. + CacheAttributes *CacheAttributes `type:"structure"` + + // The case of an object name in an Amazon S3 bucket. For ClientSpecified, the + // client determines the case sensitivity. For CaseSensitive, the gateway determines + // the case sensitivity. The default value is ClientSpecified. + CaseSensitivity *string `type:"string" enum:"CaseSensitivity"` + // The default storage class for objects put into an Amazon S3 bucket by the // file gateway. The default value is S3_INTELLIGENT_TIERING. Optional. // @@ -15819,6 +15940,11 @@ type SMBFileShareInfo struct { // The ID of the file share. FileShareId *string `min:"12" type:"string"` + // The name of the file share. Optional. + // + // FileShareName must be set if an S3 prefix name is set in LocationARN. + FileShareName *string `min:"1" type:"string"` + // The status of the file share. // // Valid Values: CREATING | UPDATING | AVAILABLE | DELETING @@ -15836,8 +15962,9 @@ type SMBFileShareInfo struct { GuessMIMETypeEnabled *bool `type:"boolean"` // A list of users or groups in the Active Directory that are not allowed to - // access the file share. A group must be prefixed with the @ character. For - // example @group1. Can only be set if Authentication is set to ActiveDirectory. + // access the file share. A group must be prefixed with the @ character. Acceptable + // formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only + // be set if Authentication is set to ActiveDirectory. InvalidUserList []*string `type:"list"` // Set to true to use Amazon S3 server-side encryption with your own AWS KMS @@ -15851,7 +15978,8 @@ type SMBFileShareInfo struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backend storage used for storing file data. + // The ARN of the backend storage used for storing file data. A prefix name + // can be added to the S3 bucket name. It must end with a "/". LocationARN *string `min:"16" type:"string"` // A value that sets the access control list (ACL) permission for objects in @@ -15899,8 +16027,9 @@ type SMBFileShareInfo struct { Tags []*Tag `type:"list"` // A list of users or groups in the Active Directory that are allowed to access - // the file share. A group must be prefixed with the @ character. For example, - // @group1. Can only be set if Authentication is set to ActiveDirectory. + // the file share. A group must be prefixed with the @ character. Acceptable + // formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only + // be set if Authentication is set to ActiveDirectory. ValidUserList []*string `type:"list"` } @@ -15932,6 +16061,18 @@ func (s *SMBFileShareInfo) SetAuthentication(v string) *SMBFileShareInfo { return s } +// SetCacheAttributes sets the CacheAttributes field's value. +func (s *SMBFileShareInfo) SetCacheAttributes(v *CacheAttributes) *SMBFileShareInfo { + s.CacheAttributes = v + return s +} + +// SetCaseSensitivity sets the CaseSensitivity field's value. +func (s *SMBFileShareInfo) SetCaseSensitivity(v string) *SMBFileShareInfo { + s.CaseSensitivity = &v + return s +} + // SetDefaultStorageClass sets the DefaultStorageClass field's value. func (s *SMBFileShareInfo) SetDefaultStorageClass(v string) *SMBFileShareInfo { s.DefaultStorageClass = &v @@ -15950,6 +16091,12 @@ func (s *SMBFileShareInfo) SetFileShareId(v string) *SMBFileShareInfo { return s } +// SetFileShareName sets the FileShareName field's value. +func (s *SMBFileShareInfo) SetFileShareName(v string) *SMBFileShareInfo { + s.FileShareName = &v + return s +} + // SetFileShareStatus sets the FileShareStatus field's value. func (s *SMBFileShareInfo) SetFileShareStatus(v string) *SMBFileShareInfo { s.FileShareStatus = &v @@ -17730,6 +17877,9 @@ func (s *UpdateMaintenanceStartTimeOutput) SetGatewayARN(v string) *UpdateMainte type UpdateNFSFileShareInput struct { _ struct{} `type:"structure"` + // Refresh cache information. + CacheAttributes *CacheAttributes `type:"structure"` + // The list of clients that are allowed to access the file gateway. The list // must contain either valid IP addresses or valid CIDR blocks. ClientList []*string `min:"1" type:"list"` @@ -17745,6 +17895,11 @@ type UpdateNFSFileShareInput struct { // FileShareARN is a required field FileShareARN *string `min:"50" type:"string" required:"true"` + // The name of the file share. Optional. + // + // FileShareName must be set if an S3 prefix name is set in LocationARN. + FileShareName *string `min:"1" type:"string"` + // A value that enables guessing of the MIME type for uploaded objects based // on file extensions. Set this value to true to enable MIME type guessing, // otherwise set to false. The default value is true. @@ -17826,6 +17981,9 @@ func (s *UpdateNFSFileShareInput) Validate() error { if s.FileShareARN != nil && len(*s.FileShareARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("FileShareARN", 50)) } + if s.FileShareName != nil && len(*s.FileShareName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileShareName", 1)) + } if s.KMSKey != nil && len(*s.KMSKey) < 7 { invalidParams.Add(request.NewErrParamMinLen("KMSKey", 7)) } @@ -17844,6 +18002,12 @@ func (s *UpdateNFSFileShareInput) Validate() error { return nil } +// SetCacheAttributes sets the CacheAttributes field's value. +func (s *UpdateNFSFileShareInput) SetCacheAttributes(v *CacheAttributes) *UpdateNFSFileShareInput { + s.CacheAttributes = v + return s +} + // SetClientList sets the ClientList field's value. func (s *UpdateNFSFileShareInput) SetClientList(v []*string) *UpdateNFSFileShareInput { s.ClientList = v @@ -17862,6 +18026,12 @@ func (s *UpdateNFSFileShareInput) SetFileShareARN(v string) *UpdateNFSFileShareI return s } +// SetFileShareName sets the FileShareName field's value. +func (s *UpdateNFSFileShareInput) SetFileShareName(v string) *UpdateNFSFileShareInput { + s.FileShareName = &v + return s +} + // SetGuessMIMETypeEnabled sets the GuessMIMETypeEnabled field's value. func (s *UpdateNFSFileShareInput) SetGuessMIMETypeEnabled(v bool) *UpdateNFSFileShareInput { s.GuessMIMETypeEnabled = &v @@ -17938,14 +18108,23 @@ func (s *UpdateNFSFileShareOutput) SetFileShareARN(v string) *UpdateNFSFileShare type UpdateSMBFileShareInput struct { _ struct{} `type:"structure"` - // A list of users in the Active Directory that have administrator rights to - // the file share. A group must be prefixed with the @ character. For example, - // @group1. Can only be set if Authentication is set to ActiveDirectory. + // A list of users or groups in the Active Directory that have administrator + // rights to the file share. A group must be prefixed with the @ character. + // Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. + // Can only be set if Authentication is set to ActiveDirectory. AdminUserList []*string `type:"list"` // The Amazon Resource Name (ARN) of the storage used for the audit logs. AuditDestinationARN *string `type:"string"` + // Refresh cache information. + CacheAttributes *CacheAttributes `type:"structure"` + + // The case of an object name in an Amazon S3 bucket. For ClientSpecified, the + // client determines the case sensitivity. For CaseSensitive, the gateway determines + // the case sensitivity. The default value is ClientSpecified. + CaseSensitivity *string `type:"string" enum:"CaseSensitivity"` + // The default storage class for objects put into an Amazon S3 bucket by the // file gateway. The default value is S3_INTELLIGENT_TIERING. Optional. // @@ -17957,6 +18136,11 @@ type UpdateSMBFileShareInput struct { // FileShareARN is a required field FileShareARN *string `min:"50" type:"string" required:"true"` + // The name of the file share. Optional. + // + // FileShareName must be set if an S3 prefix name is set in LocationARN. + FileShareName *string `min:"1" type:"string"` + // A value that enables guessing of the MIME type for uploaded objects based // on file extensions. Set this value to true to enable MIME type guessing, // otherwise set to false. The default value is true. @@ -17965,8 +18149,9 @@ type UpdateSMBFileShareInput struct { GuessMIMETypeEnabled *bool `type:"boolean"` // A list of users or groups in the Active Directory that are not allowed to - // access the file share. A group must be prefixed with the @ character. For - // example @group1. Can only be set if Authentication is set to ActiveDirectory. + // access the file share. A group must be prefixed with the @ character. Acceptable + // formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only + // be set if Authentication is set to ActiveDirectory. InvalidUserList []*string `type:"list"` // Set to true to use Amazon S3 server-side encryption with your own AWS KMS @@ -18015,8 +18200,9 @@ type UpdateSMBFileShareInput struct { SMBACLEnabled *bool `type:"boolean"` // A list of users or groups in the Active Directory that are allowed to access - // the file share. A group must be prefixed with the @ character. For example, - // @group1. Can only be set if Authentication is set to ActiveDirectory. + // the file share. A group must be prefixed with the @ character. Acceptable + // formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only + // be set if Authentication is set to ActiveDirectory. ValidUserList []*string `type:"list"` } @@ -18042,6 +18228,9 @@ func (s *UpdateSMBFileShareInput) Validate() error { if s.FileShareARN != nil && len(*s.FileShareARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("FileShareARN", 50)) } + if s.FileShareName != nil && len(*s.FileShareName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileShareName", 1)) + } if s.KMSKey != nil && len(*s.KMSKey) < 7 { invalidParams.Add(request.NewErrParamMinLen("KMSKey", 7)) } @@ -18064,6 +18253,18 @@ func (s *UpdateSMBFileShareInput) SetAuditDestinationARN(v string) *UpdateSMBFil return s } +// SetCacheAttributes sets the CacheAttributes field's value. +func (s *UpdateSMBFileShareInput) SetCacheAttributes(v *CacheAttributes) *UpdateSMBFileShareInput { + s.CacheAttributes = v + return s +} + +// SetCaseSensitivity sets the CaseSensitivity field's value. +func (s *UpdateSMBFileShareInput) SetCaseSensitivity(v string) *UpdateSMBFileShareInput { + s.CaseSensitivity = &v + return s +} + // SetDefaultStorageClass sets the DefaultStorageClass field's value. func (s *UpdateSMBFileShareInput) SetDefaultStorageClass(v string) *UpdateSMBFileShareInput { s.DefaultStorageClass = &v @@ -18076,6 +18277,12 @@ func (s *UpdateSMBFileShareInput) SetFileShareARN(v string) *UpdateSMBFileShareI return s } +// SetFileShareName sets the FileShareName field's value. +func (s *UpdateSMBFileShareInput) SetFileShareName(v string) *UpdateSMBFileShareInput { + s.FileShareName = &v + return s +} + // SetGuessMIMETypeEnabled sets the GuessMIMETypeEnabled field's value. func (s *UpdateSMBFileShareInput) SetGuessMIMETypeEnabled(v bool) *UpdateSMBFileShareInput { s.GuessMIMETypeEnabled = &v @@ -18784,6 +18991,14 @@ const ( AvailabilityMonitorTestStatusPending = "PENDING" ) +const ( + // CaseSensitivityClientSpecified is a CaseSensitivity enum value + CaseSensitivityClientSpecified = "ClientSpecified" + + // CaseSensitivityCaseSensitive is a CaseSensitivity enum value + CaseSensitivityCaseSensitive = "CaseSensitive" +) + const ( // ErrorCodeActivationKeyExpired is a ErrorCode enum value ErrorCodeActivationKeyExpired = "ActivationKeyExpired" diff --git a/vendor/github.com/aws/aws-sdk-go/service/wafv2/api.go b/vendor/github.com/aws/aws-sdk-go/service/wafv2/api.go index 68de2cffaa7..0d66b127f2e 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/wafv2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/wafv2/api.go @@ -3509,7 +3509,15 @@ func (c *WAFV2) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req // 2019. For information, including how to migrate your AWS WAF resources from // the prior release, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). // -// Retrieves the TagInfoForResource for the specified resource. +// Retrieves the TagInfoForResource for the specified resource. Tags are key:value +// pairs that you can use to categorize and manage your resources, for purposes +// like billing. For example, you might set the tag key to "customer" and the +// value to the customer name or ID. You can specify one or more tags to add +// to each AWS resource, up to 50 tags for a resource. +// +// You can tag the AWS resources that you manage through AWS WAF: web ACLs, +// rule groups, IP sets, and regex pattern sets. You can't manage or view tags +// through the AWS WAF console. // // 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 @@ -3738,6 +3746,9 @@ func (c *WAFV2) PutLoggingConfigurationRequest(input *PutLoggingConfigurationInp // operating. If you are capturing logs for Amazon CloudFront, always create // the firehose in US East (N. Virginia). // +// Give the data firehose a name that starts with the prefix aws-waf-logs-. +// For example, aws-waf-logs-us-east-2-analytics. +// // Do not create the data firehose using a Kinesis stream as your source. // // Associate that firehose to your web ACL using a PutLoggingConfiguration request. @@ -3798,6 +3809,12 @@ func (c *WAFV2) PutLoggingConfigurationRequest(input *PutLoggingConfigurationInp // * WAFInvalidOperationException // The operation isn't valid. // +// * WAFLimitsExceededException +// AWS WAF couldn’t perform the operation because you exceeded your resource +// limit. For example, the maximum number of WebACL objects that you can create +// for an AWS account. For more information, see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) +// in the AWS WAF Developer Guide. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/PutLoggingConfiguration func (c *WAFV2) PutLoggingConfiguration(input *PutLoggingConfigurationInput) (*PutLoggingConfigurationOutput, error) { req, out := c.PutLoggingConfigurationRequest(input) @@ -4002,10 +4019,14 @@ func (c *WAFV2) TagResourceRequest(input *TagResourceInput) (req *request.Reques // the prior release, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). // // Associates tags with the specified AWS resource. Tags are key:value pairs -// that you can associate with AWS resources. For example, the tag key might -// be "customer" and the tag value might be "companyA." You can specify one -// or more tags to add to each container. You can add up to 50 tags to each -// AWS resource. +// that you can use to categorize and manage your resources, for purposes like +// billing. For example, you might set the tag key to "customer" and the value +// to the customer name or ID. You can specify one or more tags to add to each +// AWS resource, up to 50 tags for a resource. +// +// You can tag the AWS resources that you manage through AWS WAF: web ACLs, +// rule groups, IP sets, and regex pattern sets. You can't manage or view tags +// through the AWS WAF console. // // 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 @@ -7183,6 +7204,88 @@ func (s *FirewallManagerStatement) SetRuleGroupReferenceStatement(v *RuleGroupRe return s } +// The configuration for inspecting IP addresses in an HTTP header that you +// specify, instead of using the IP address that's reported by the web request +// origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify +// any header name. +// +// If the specified header isn't present in the request, AWS WAF doesn't apply +// the rule to the web request at all. +// +// This configuration is used for GeoMatchStatement and RateBasedStatement. +// For IPSetReferenceStatement, use IPSetForwardedIPConfig instead. +// +// AWS WAF only evaluates the first IP address found in the specified HTTP header. +type ForwardedIPConfig struct { + _ struct{} `type:"structure"` + + // The match status to assign to the web request if the request doesn't have + // a valid IP address in the specified position. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + // + // You can specify the following fallback behaviors: + // + // * MATCH - Treat the web request as matching the rule statement. AWS WAF + // applies the rule action to the request. + // + // * NO_MATCH - Treat the web request as not matching the rule statement. + // + // FallbackBehavior is a required field + FallbackBehavior *string `type:"string" required:"true" enum:"FallbackBehavior"` + + // The name of the HTTP header to use for the IP address. For example, to use + // the X-Forwarded-For (XFF) header, set this to X-Forwarded-For. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + // + // HeaderName is a required field + HeaderName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ForwardedIPConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ForwardedIPConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ForwardedIPConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ForwardedIPConfig"} + if s.FallbackBehavior == nil { + invalidParams.Add(request.NewErrParamRequired("FallbackBehavior")) + } + if s.HeaderName == nil { + invalidParams.Add(request.NewErrParamRequired("HeaderName")) + } + if s.HeaderName != nil && len(*s.HeaderName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HeaderName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFallbackBehavior sets the FallbackBehavior field's value. +func (s *ForwardedIPConfig) SetFallbackBehavior(v string) *ForwardedIPConfig { + s.FallbackBehavior = &v + return s +} + +// SetHeaderName sets the HeaderName field's value. +func (s *ForwardedIPConfig) SetHeaderName(v string) *ForwardedIPConfig { + s.HeaderName = &v + return s +} + // // This is the latest version of AWS WAF, named AWS WAFV2, released in November, // 2019. For information, including how to migrate your AWS WAF resources from @@ -7195,6 +7298,15 @@ type GeoMatchStatement struct { // An array of two-character country codes, for example, [ "US", "CN" ], from // the alpha-2 country ISO codes of the ISO 3166 international standard. CountryCodes []*string `min:"1" type:"list"` + + // The configuration for inspecting IP addresses in an HTTP header that you + // specify, instead of using the IP address that's reported by the web request + // origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify + // any header name. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + ForwardedIPConfig *ForwardedIPConfig `type:"structure"` } // String returns the string representation @@ -7213,6 +7325,11 @@ func (s *GeoMatchStatement) Validate() error { if s.CountryCodes != nil && len(s.CountryCodes) < 1 { invalidParams.Add(request.NewErrParamMinLen("CountryCodes", 1)) } + if s.ForwardedIPConfig != nil { + if err := s.ForwardedIPConfig.Validate(); err != nil { + invalidParams.AddNested("ForwardedIPConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -7226,6 +7343,12 @@ func (s *GeoMatchStatement) SetCountryCodes(v []*string) *GeoMatchStatement { return s } +// SetForwardedIPConfig sets the ForwardedIPConfig field's value. +func (s *GeoMatchStatement) SetForwardedIPConfig(v *ForwardedIPConfig) *GeoMatchStatement { + s.ForwardedIPConfig = v + return s +} + type GetIPSetInput struct { _ struct{} `type:"structure"` @@ -7920,9 +8043,10 @@ type GetSampledRequestsInput struct { Scope *string `type:"string" required:"true" enum:"Scope"` // The start date and time and the end date and time of the range for which - // you want GetSampledRequests to return a sample of requests. Specify the date - // and time in the following format: "2016-09-27T14:50Z". You can specify any - // time range in the previous three hours. + // you want GetSampledRequests to return a sample of requests. You must specify + // the times in Coordinated Universal Time (UTC) format. UTC format includes + // the special designator, Z. For example, "2016-09-27T14:50Z". You can specify + // any time range in the previous three hours. // // TimeWindow is a required field TimeWindow *TimeWindow `type:"structure" required:"true"` @@ -8028,7 +8152,8 @@ type GetSampledRequestsOutput struct { // Usually, TimeWindow is the time range that you specified in the GetSampledRequests // request. However, if your AWS resource received more than 5,000 requests // during the time range that you specified in the request, GetSampledRequests - // returns the time range for the first 5,000 requests. + // returns the time range for the first 5,000 requests. Times are in Coordinated + // Universal Time (UTC) format. TimeWindow *TimeWindow `type:"structure"` } @@ -8491,6 +8616,115 @@ func (s *IPSet) SetName(v string) *IPSet { return s } +// The configuration for inspecting IP addresses in an HTTP header that you +// specify, instead of using the IP address that's reported by the web request +// origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify +// any header name. +// +// If the specified header isn't present in the request, AWS WAF doesn't apply +// the rule to the web request at all. +// +// This configuration is used only for IPSetReferenceStatement. For GeoMatchStatement +// and RateBasedStatement, use ForwardedIPConfig instead. +type IPSetForwardedIPConfig struct { + _ struct{} `type:"structure"` + + // The match status to assign to the web request if the request doesn't have + // a valid IP address in the specified position. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + // + // You can specify the following fallback behaviors: + // + // * MATCH - Treat the web request as matching the rule statement. AWS WAF + // applies the rule action to the request. + // + // * NO_MATCH - Treat the web request as not matching the rule statement. + // + // FallbackBehavior is a required field + FallbackBehavior *string `type:"string" required:"true" enum:"FallbackBehavior"` + + // The name of the HTTP header to use for the IP address. For example, to use + // the X-Forwarded-For (XFF) header, set this to X-Forwarded-For. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + // + // HeaderName is a required field + HeaderName *string `min:"1" type:"string" required:"true"` + + // The position in the header to search for the IP address. The header can contain + // IP addresses of the original client and also of proxies. For example, the + // header value could be 10.1.1.1, 127.0.0.0, 10.10.10.10 where the first IP + // address identifies the original client and the rest identify proxies that + // the request went through. + // + // The options for this setting are the following: + // + // * FIRST - Inspect the first IP address in the list of IP addresses in + // the header. This is usually the client's original IP. + // + // * LAST - Inspect the last IP address in the list of IP addresses in the + // header. + // + // * ANY - Inspect all IP addresses in the header for a match. If the header + // contains more than 10 IP addresses, AWS WAF inspects the last 10. + // + // Position is a required field + Position *string `type:"string" required:"true" enum:"ForwardedIPPosition"` +} + +// String returns the string representation +func (s IPSetForwardedIPConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s IPSetForwardedIPConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IPSetForwardedIPConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IPSetForwardedIPConfig"} + if s.FallbackBehavior == nil { + invalidParams.Add(request.NewErrParamRequired("FallbackBehavior")) + } + if s.HeaderName == nil { + invalidParams.Add(request.NewErrParamRequired("HeaderName")) + } + if s.HeaderName != nil && len(*s.HeaderName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HeaderName", 1)) + } + if s.Position == nil { + invalidParams.Add(request.NewErrParamRequired("Position")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFallbackBehavior sets the FallbackBehavior field's value. +func (s *IPSetForwardedIPConfig) SetFallbackBehavior(v string) *IPSetForwardedIPConfig { + s.FallbackBehavior = &v + return s +} + +// SetHeaderName sets the HeaderName field's value. +func (s *IPSetForwardedIPConfig) SetHeaderName(v string) *IPSetForwardedIPConfig { + s.HeaderName = &v + return s +} + +// SetPosition sets the Position field's value. +func (s *IPSetForwardedIPConfig) SetPosition(v string) *IPSetForwardedIPConfig { + s.Position = &v + return s +} + // // This is the latest version of AWS WAF, named AWS WAFV2, released in November, // 2019. For information, including how to migrate your AWS WAF resources from @@ -8512,6 +8746,15 @@ type IPSetReferenceStatement struct { // // ARN is a required field ARN *string `min:"20" type:"string" required:"true"` + + // The configuration for inspecting IP addresses in an HTTP header that you + // specify, instead of using the IP address that's reported by the web request + // origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify + // any header name. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + IPSetForwardedIPConfig *IPSetForwardedIPConfig `type:"structure"` } // String returns the string representation @@ -8533,6 +8776,11 @@ func (s *IPSetReferenceStatement) Validate() error { if s.ARN != nil && len(*s.ARN) < 20 { invalidParams.Add(request.NewErrParamMinLen("ARN", 20)) } + if s.IPSetForwardedIPConfig != nil { + if err := s.IPSetForwardedIPConfig.Validate(); err != nil { + invalidParams.AddNested("IPSetForwardedIPConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -8546,6 +8794,12 @@ func (s *IPSetReferenceStatement) SetARN(v string) *IPSetReferenceStatement { return s } +// SetIPSetForwardedIPConfig sets the IPSetForwardedIPConfig field's value. +func (s *IPSetReferenceStatement) SetIPSetForwardedIPConfig(v *IPSetForwardedIPConfig) *IPSetReferenceStatement { + s.IPSetForwardedIPConfig = v + return s +} + // // This is the latest version of AWS WAF, named AWS WAFV2, released in November, // 2019. For information, including how to migrate your AWS WAF resources from @@ -10135,14 +10389,32 @@ func (s QueryString) GoString() string { type RateBasedStatement struct { _ struct{} `type:"structure"` - // Setting that indicates how to aggregate the request counts. Currently, you - // must set this to IP. The request counts are aggregated on IP addresses. + // Setting that indicates how to aggregate the request counts. The options are + // the following: + // + // * IP - Aggregate the request counts on the IP address from the web request + // origin. + // + // * FORWARDED_IP - Aggregate the request counts on the first IP address + // in an HTTP header. If you use this, configure the ForwardedIPConfig, to + // specify the header to use. // // AggregateKeyType is a required field AggregateKeyType *string `type:"string" required:"true" enum:"RateBasedStatementAggregateKeyType"` + // The configuration for inspecting IP addresses in an HTTP header that you + // specify, instead of using the IP address that's reported by the web request + // origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify + // any header name. + // + // If the specified header isn't present in the request, AWS WAF doesn't apply + // the rule to the web request at all. + // + // This is required if AggregateKeyType is set to FORWARDED_IP. + ForwardedIPConfig *ForwardedIPConfig `type:"structure"` + // The limit on requests per 5-minute period for a single originating IP address. - // If the statement includes a ScopDownStatement, this limit is applied only + // If the statement includes a ScopeDownStatement, this limit is applied only // to the requests that match the statement. // // Limit is a required field @@ -10176,6 +10448,11 @@ func (s *RateBasedStatement) Validate() error { if s.Limit != nil && *s.Limit < 100 { invalidParams.Add(request.NewErrParamMinValue("Limit", 100)) } + if s.ForwardedIPConfig != nil { + if err := s.ForwardedIPConfig.Validate(); err != nil { + invalidParams.AddNested("ForwardedIPConfig", err.(request.ErrInvalidParams)) + } + } if s.ScopeDownStatement != nil { if err := s.ScopeDownStatement.Validate(); err != nil { invalidParams.AddNested("ScopeDownStatement", err.(request.ErrInvalidParams)) @@ -10194,6 +10471,12 @@ func (s *RateBasedStatement) SetAggregateKeyType(v string) *RateBasedStatement { return s } +// SetForwardedIPConfig sets the ForwardedIPConfig field's value. +func (s *RateBasedStatement) SetForwardedIPConfig(v *ForwardedIPConfig) *RateBasedStatement { + s.ForwardedIPConfig = v + return s +} + // SetLimit sets the Limit field's value. func (s *RateBasedStatement) SetLimit(v int64) *RateBasedStatement { s.Limit = &v @@ -11754,11 +12037,18 @@ func (s *Statement) SetXssMatchStatement(v *XssMatchStatement) *Statement { // 2019. For information, including how to migrate your AWS WAF resources from // the prior release, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). // -// A collection of key:value pairs associated with an AWS resource. The key:value -// pair can be anything you define. Typically, the tag key represents a category -// (such as "environment") and the tag value represents a specific value within -// that category (such as "test," "development," or "production"). You can add -// up to 50 tags to each AWS resource. +// A tag associated with an AWS resource. Tags are key:value pairs that you +// can use to categorize and manage your resources, for purposes like billing +// or other management. Typically, the tag key represents a category, such as +// "environment", and the tag value represents a specific value within that +// category, such as "test," "development," or "production". Or you might set +// the tag key to "customer" and the value to the customer name or ID. You can +// specify one or more tags to add to each AWS resource, up to 50 tags for a +// resource. +// +// You can tag the AWS resources that you manage through AWS WAF: web ACLs, +// rule groups, IP sets, and regex pattern sets. You can't manage or view tags +// through the AWS WAF console. type Tag struct { _ struct{} `type:"structure"` @@ -11822,7 +12112,18 @@ func (s *Tag) SetValue(v string) *Tag { // 2019. For information, including how to migrate your AWS WAF resources from // the prior release, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). // -// The collection of tagging definitions for an AWS resource. +// The collection of tagging definitions for an AWS resource. Tags are key:value +// pairs that you can use to categorize and manage your resources, for purposes +// like billing or other management. Typically, the tag key represents a category, +// such as "environment", and the tag value represents a specific value within +// that category, such as "test," "development," or "production". Or you might +// set the tag key to "customer" and the value to the customer name or ID. You +// can specify one or more tags to add to each AWS resource, up to 50 tags for +// a resource. +// +// You can tag the AWS resources that you manage through AWS WAF: web ACLs, +// rule groups, IP sets, and regex pattern sets. You can't manage or view tags +// through the AWS WAF console. type TagInfoForResource struct { _ struct{} `type:"structure"` @@ -12073,6 +12374,10 @@ func (s *TextTransformation) SetType(v string) *TextTransformation { // In a GetSampledRequests request, the StartTime and EndTime objects specify // the time range for which you want AWS WAF to return a sample of web requests. // +// You must specify the times in Coordinated Universal Time (UTC) format. UTC +// format includes the special designator, Z. For example, "2016-09-27T14:50Z". +// You can specify any time range in the previous three hours. +// // In a GetSampledRequests response, the StartTime and EndTime objects specify // the time range for which AWS WAF actually returned a sample of web requests. // AWS WAF gets the specified number of requests from among the first 5,000 @@ -12084,17 +12389,19 @@ type TimeWindow struct { _ struct{} `type:"structure"` // The end of the time range from which you want GetSampledRequests to return - // a sample of the requests that your AWS resource received. Specify the date - // and time in the following format: "2016-09-27T14:50Z". You can specify any - // time range in the previous three hours. + // a sample of the requests that your AWS resource received. You must specify + // the times in Coordinated Universal Time (UTC) format. UTC format includes + // the special designator, Z. For example, "2016-09-27T14:50Z". You can specify + // any time range in the previous three hours. // // EndTime is a required field EndTime *time.Time `type:"timestamp" required:"true"` // The beginning of the time range from which you want GetSampledRequests to - // return a sample of the requests that your AWS resource received. Specify - // the date and time in the following format: "2016-09-27T14:50Z". You can specify - // any time range in the previous three hours. + // return a sample of the requests that your AWS resource received. You must + // specify the times in Coordinated Universal Time (UTC) format. UTC format + // includes the special designator, Z. For example, "2016-09-27T14:50Z". You + // can specify any time range in the previous three hours. // // StartTime is a required field StartTime *time.Time `type:"timestamp" required:"true"` @@ -12982,10 +13289,11 @@ type VisibilityConfig struct { // CloudWatchMetricsEnabled is a required field CloudWatchMetricsEnabled *bool `type:"boolean" required:"true"` - // A name of the CloudWatch metric. The name can contain only alphanumeric characters - // (A-Z, a-z, 0-9), with length from one to 128 characters. It can't contain - // whitespace or metric names reserved for AWS WAF, for example "All" and "Default_Action." - // You can't change a MetricName after you create a VisibilityConfig. + // A name of the CloudWatch metric. The name can contain only the characters: + // A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to + // 128 characters long. It can't contain whitespace or metric names reserved + // for AWS WAF, for example "All" and "Default_Action." You can't change a MetricName + // after you create a VisibilityConfig. // // MetricName is a required field MetricName *string `min:"1" type:"string" required:"true"` @@ -15044,6 +15352,25 @@ const ( CountryCodeZw = "ZW" ) +const ( + // FallbackBehaviorMatch is a FallbackBehavior enum value + FallbackBehaviorMatch = "MATCH" + + // FallbackBehaviorNoMatch is a FallbackBehavior enum value + FallbackBehaviorNoMatch = "NO_MATCH" +) + +const ( + // ForwardedIPPositionFirst is a ForwardedIPPosition enum value + ForwardedIPPositionFirst = "FIRST" + + // ForwardedIPPositionLast is a ForwardedIPPosition enum value + ForwardedIPPositionLast = "LAST" + + // ForwardedIPPositionAny is a ForwardedIPPosition enum value + ForwardedIPPositionAny = "ANY" +) + const ( // IPAddressVersionIpv4 is a IPAddressVersion enum value IPAddressVersionIpv4 = "IPV4" @@ -15166,6 +15493,21 @@ const ( // ParameterExceptionFieldFirewallManagerStatement is a ParameterExceptionField enum value ParameterExceptionFieldFirewallManagerStatement = "FIREWALL_MANAGER_STATEMENT" + + // ParameterExceptionFieldFallbackBehavior is a ParameterExceptionField enum value + ParameterExceptionFieldFallbackBehavior = "FALLBACK_BEHAVIOR" + + // ParameterExceptionFieldPosition is a ParameterExceptionField enum value + ParameterExceptionFieldPosition = "POSITION" + + // ParameterExceptionFieldForwardedIpConfig is a ParameterExceptionField enum value + ParameterExceptionFieldForwardedIpConfig = "FORWARDED_IP_CONFIG" + + // ParameterExceptionFieldIpSetForwardedIpConfig is a ParameterExceptionField enum value + ParameterExceptionFieldIpSetForwardedIpConfig = "IP_SET_FORWARDED_IP_CONFIG" + + // ParameterExceptionFieldHeaderName is a ParameterExceptionField enum value + ParameterExceptionFieldHeaderName = "HEADER_NAME" ) const ( @@ -15188,6 +15530,9 @@ const ( const ( // RateBasedStatementAggregateKeyTypeIp is a RateBasedStatementAggregateKeyType enum value RateBasedStatementAggregateKeyTypeIp = "IP" + + // RateBasedStatementAggregateKeyTypeForwardedIp is a RateBasedStatementAggregateKeyType enum value + RateBasedStatementAggregateKeyTypeForwardedIp = "FORWARDED_IP" ) const ( diff --git a/vendor/modules.txt b/vendor/modules.txt index 85d26fc57ce..2845e05bc7e 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -25,7 +25,7 @@ github.com/apparentlymart/go-cidr/cidr github.com/apparentlymart/go-textseg/textseg # github.com/armon/go-radix v1.0.0 github.com/armon/go-radix -# github.com/aws/aws-sdk-go v1.32.12 +# github.com/aws/aws-sdk-go v1.33.6 github.com/aws/aws-sdk-go/aws github.com/aws/aws-sdk-go/aws/arn github.com/aws/aws-sdk-go/aws/awserr