From 4734f13dda99e29e44c74273c7ca6af30b13af83 Mon Sep 17 00:00:00 2001 From: AWS SDK for Go v2 automation user Date: Fri, 19 Aug 2022 18:17:48 +0000 Subject: [PATCH] Regenerated Clients --- .../10b30eb93fba4847a77518e3fa0a1879.json | 8 + .../1405ac9d17014b6984d9a2260c6f76ab.json | 8 + .../5919cf0c94c5462db2fccf6af567b00c.json | 8 + .../9f3a863410d34ac9af8df80874767929.json | 8 + .../internal/endpoints/endpoints.go | 8 + .../api_op_AssociatePhoneNumberContactFlow.go | 5 +- service/connect/api_op_ClaimPhoneNumber.go | 3 +- service/connect/api_op_CreateAgentStatus.go | 3 +- service/connect/api_op_CreateContactFlow.go | 21 +- .../connect/api_op_CreateContactFlowModule.go | 15 +- .../connect/api_op_CreateHoursOfOperation.go | 3 +- .../api_op_CreateIntegrationAssociation.go | 7 +- service/connect/api_op_CreateQueue.go | 3 +- service/connect/api_op_CreateQuickConnect.go | 3 +- .../connect/api_op_CreateRoutingProfile.go | 3 +- .../connect/api_op_CreateSecurityProfile.go | 3 +- service/connect/api_op_CreateUseCase.go | 3 +- service/connect/api_op_CreateUser.go | 3 +- .../api_op_CreateUserHierarchyGroup.go | 3 +- service/connect/api_op_CreateVocabulary.go | 3 +- service/connect/api_op_DeleteContactFlow.go | 4 +- .../connect/api_op_DeleteContactFlowModule.go | 4 +- service/connect/api_op_DescribeContactFlow.go | 8 +- .../api_op_DescribeContactFlowModule.go | 6 +- .../api_op_DisassociateLambdaFunction.go | 2 +- ...i_op_DisassociatePhoneNumberContactFlow.go | 4 +- service/connect/api_op_GetTaskTemplate.go | 3 +- .../connect/api_op_ListContactFlowModules.go | 8 +- service/connect/api_op_ListContactFlows.go | 17 +- .../connect/api_op_ListContactReferences.go | 2 +- .../connect/api_op_ListHoursOfOperations.go | 6 +- service/connect/api_op_ListLambdaFunctions.go | 2 +- service/connect/api_op_ListPhoneNumbers.go | 6 +- service/connect/api_op_ListPrompts.go | 6 +- .../connect/api_op_ListQueueQuickConnects.go | 6 +- service/connect/api_op_ListQueues.go | 6 +- service/connect/api_op_ListQuickConnects.go | 6 +- .../api_op_ListRoutingProfileQueues.go | 6 +- service/connect/api_op_ListRoutingProfiles.go | 6 +- .../connect/api_op_ListSecurityProfiles.go | 6 +- .../connect/api_op_ListUserHierarchyGroups.go | 6 +- service/connect/api_op_ListUsers.go | 6 +- .../connect/api_op_SearchSecurityProfiles.go | 231 +++++++++ service/connect/api_op_StartChatContact.go | 22 +- .../api_op_StartOutboundVoiceContact.go | 47 +- service/connect/api_op_StartTaskContact.go | 24 +- service/connect/api_op_TagResource.go | 14 +- service/connect/api_op_TransferContact.go | 26 +- .../connect/api_op_UpdateContactAttributes.go | 20 +- .../api_op_UpdateContactFlowContent.go | 10 +- .../api_op_UpdateContactFlowMetadata.go | 10 +- .../api_op_UpdateContactFlowModuleContent.go | 6 +- .../api_op_UpdateContactFlowModuleMetadata.go | 10 +- .../connect/api_op_UpdateContactFlowName.go | 10 +- .../connect/api_op_UpdateContactSchedule.go | 4 +- service/connect/deserializers.go | 296 ++++++++++++ service/connect/doc.go | 2 +- service/connect/generated.json | 1 + service/connect/serializers.go | 147 ++++++ service/connect/types/errors.go | 5 +- service/connect/types/types.go | 157 ++++-- service/connect/validators.go | 39 ++ service/ivschat/api_op_CreateRoom.go | 6 +- service/ivschat/api_op_ListTagsForResource.go | 3 +- service/ivschat/api_op_TagResource.go | 6 +- service/ivschat/api_op_UntagResource.go | 6 +- service/ivschat/doc.go | 16 +- service/ivschat/types/types.go | 6 +- service/kendra/api_op_CreateDataSource.go | 22 +- service/kendra/api_op_DeleteDataSource.go | 12 +- service/kendra/api_op_DescribeDataSource.go | 36 +- .../kendra/api_op_ListDataSourceSyncJobs.go | 12 +- service/kendra/api_op_ListDataSources.go | 14 +- .../kendra/api_op_StartDataSourceSyncJob.go | 9 +- .../kendra/api_op_StopDataSourceSyncJob.go | 5 +- service/kendra/api_op_UpdateDataSource.go | 8 +- service/kendra/deserializers.go | 9 + service/kendra/serializers.go | 5 + service/kendra/types/enums.go | 18 + service/kendra/types/types.go | 42 +- .../lookoutmetrics/api_op_CreateMetricSet.go | 3 +- .../api_op_DescribeMetricSet.go | 4 +- .../api_op_GetDataQualityMetrics.go | 126 +++++ .../lookoutmetrics/api_op_UpdateMetricSet.go | 3 +- service/lookoutmetrics/deserializers.go | 450 ++++++++++++++++++ service/lookoutmetrics/generated.json | 1 + service/lookoutmetrics/serializers.go | 73 +++ service/lookoutmetrics/types/enums.go | 34 ++ service/lookoutmetrics/types/types.go | 47 ++ service/lookoutmetrics/validators.go | 39 ++ .../internal/endpoints/endpoints.go | 3 + .../internal/endpoints/endpoints.go | 8 + 92 files changed, 2040 insertions(+), 314 deletions(-) create mode 100644 .changelog/10b30eb93fba4847a77518e3fa0a1879.json create mode 100644 .changelog/1405ac9d17014b6984d9a2260c6f76ab.json create mode 100644 .changelog/5919cf0c94c5462db2fccf6af567b00c.json create mode 100644 .changelog/9f3a863410d34ac9af8df80874767929.json create mode 100644 service/connect/api_op_SearchSecurityProfiles.go create mode 100644 service/lookoutmetrics/api_op_GetDataQualityMetrics.go diff --git a/.changelog/10b30eb93fba4847a77518e3fa0a1879.json b/.changelog/10b30eb93fba4847a77518e3fa0a1879.json new file mode 100644 index 00000000000..402e3d605e8 --- /dev/null +++ b/.changelog/10b30eb93fba4847a77518e3fa0a1879.json @@ -0,0 +1,8 @@ +{ + "id": "10b30eb9-3fba-4847-a775-18e3fa0a1879", + "type": "documentation", + "description": "Documentation Change for IVS Chat API Reference - Doc-only update to change text/description for tags field.", + "modules": [ + "service/ivschat" + ] +} \ No newline at end of file diff --git a/.changelog/1405ac9d17014b6984d9a2260c6f76ab.json b/.changelog/1405ac9d17014b6984d9a2260c6f76ab.json new file mode 100644 index 00000000000..8a4c7772a71 --- /dev/null +++ b/.changelog/1405ac9d17014b6984d9a2260c6f76ab.json @@ -0,0 +1,8 @@ +{ + "id": "1405ac9d-1701-4b69-84d9-a2260c6f76ab", + "type": "feature", + "description": "This release adds SearchSecurityProfiles API which can be used to search for Security Profile resources within a Connect Instance.", + "modules": [ + "service/connect" + ] +} \ No newline at end of file diff --git a/.changelog/5919cf0c94c5462db2fccf6af567b00c.json b/.changelog/5919cf0c94c5462db2fccf6af567b00c.json new file mode 100644 index 00000000000..eb9b146d9f4 --- /dev/null +++ b/.changelog/5919cf0c94c5462db2fccf6af567b00c.json @@ -0,0 +1,8 @@ +{ + "id": "5919cf0c-94c5-462d-b2fc-cf6af567b00c", + "type": "feature", + "description": "This release is to make GetDataQualityMetrics API publicly available.", + "modules": [ + "service/lookoutmetrics" + ] +} \ No newline at end of file diff --git a/.changelog/9f3a863410d34ac9af8df80874767929.json b/.changelog/9f3a863410d34ac9af8df80874767929.json new file mode 100644 index 00000000000..ed244fcd88a --- /dev/null +++ b/.changelog/9f3a863410d34ac9af8df80874767929.json @@ -0,0 +1,8 @@ +{ + "id": "9f3a8634-10d3-4ac9-af8d-f80874767929", + "type": "feature", + "description": "This release adds support for a new authentication type - Personal Access Token (PAT) for confluence server.", + "modules": [ + "service/kendra" + ] +} \ No newline at end of file diff --git a/service/appconfigdata/internal/endpoints/endpoints.go b/service/appconfigdata/internal/endpoints/endpoints.go index d86c0d65aa5..2677094849e 100644 --- a/service/appconfigdata/internal/endpoints/endpoints.go +++ b/service/appconfigdata/internal/endpoints/endpoints.go @@ -264,6 +264,9 @@ var defaultPartitions = endpoints.Partitions{ RegionRegex: partitionRegexp.AwsIso, IsRegionalized: true, Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-iso-east-1", + }: endpoints.Endpoint{}, endpoints.EndpointKey{ Region: "us-iso-west-1", }: endpoints.Endpoint{}, @@ -289,6 +292,11 @@ var defaultPartitions = endpoints.Partitions{ }, RegionRegex: partitionRegexp.AwsIsoB, IsRegionalized: true, + Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-isob-east-1", + }: endpoints.Endpoint{}, + }, }, { ID: "aws-us-gov", diff --git a/service/connect/api_op_AssociatePhoneNumberContactFlow.go b/service/connect/api_op_AssociatePhoneNumberContactFlow.go index 5396c4cc643..09e7d1efa5c 100644 --- a/service/connect/api_op_AssociatePhoneNumberContactFlow.go +++ b/service/connect/api_op_AssociatePhoneNumberContactFlow.go @@ -10,8 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Associates a contact flow with a phone number claimed to your Amazon Connect -// instance. +// Associates a flow with a phone number claimed to your Amazon Connect instance. func (c *Client) AssociatePhoneNumberContactFlow(ctx context.Context, params *AssociatePhoneNumberContactFlowInput, optFns ...func(*Options)) (*AssociatePhoneNumberContactFlowOutput, error) { if params == nil { params = &AssociatePhoneNumberContactFlowInput{} @@ -29,7 +28,7 @@ func (c *Client) AssociatePhoneNumberContactFlow(ctx context.Context, params *As type AssociatePhoneNumberContactFlowInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string diff --git a/service/connect/api_op_ClaimPhoneNumber.go b/service/connect/api_op_ClaimPhoneNumber.go index ce31d7dd8ec..4ba2a03662e 100644 --- a/service/connect/api_op_ClaimPhoneNumber.go +++ b/service/connect/api_op_ClaimPhoneNumber.go @@ -48,7 +48,8 @@ type ClaimPhoneNumberInput struct { // The description of the phone number. PhoneNumberDescription *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateAgentStatus.go b/service/connect/api_op_CreateAgentStatus.go index e755d486b6c..44f7b97667d 100644 --- a/service/connect/api_op_CreateAgentStatus.go +++ b/service/connect/api_op_CreateAgentStatus.go @@ -52,7 +52,8 @@ type CreateAgentStatusInput struct { // The display order of the status. DisplayOrder *int32 - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateContactFlow.go b/service/connect/api_op_CreateContactFlow.go index 10d2bfae54d..97ba49c2ab1 100644 --- a/service/connect/api_op_CreateContactFlow.go +++ b/service/connect/api_op_CreateContactFlow.go @@ -11,8 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a contact flow for the specified Amazon Connect instance. You can also -// create and update contact flows using the Amazon Connect Flow language +// Creates a flow for the specified Amazon Connect instance. You can also create +// and update flows using the Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). func (c *Client) CreateContactFlow(ctx context.Context, params *CreateContactFlowInput, optFns ...func(*Options)) (*CreateContactFlowOutput, error) { if params == nil { @@ -31,7 +31,7 @@ func (c *Client) CreateContactFlow(ctx context.Context, params *CreateContactFlo type CreateContactFlowInput struct { - // The content of the contact flow. + // The content of the flow. // // This member is required. Content *string @@ -41,23 +41,24 @@ type CreateContactFlowInput struct { // This member is required. InstanceId *string - // The name of the contact flow. + // The name of the flow. // // This member is required. Name *string - // The type of the contact flow. For descriptions of the available types, see - // Choose a Contact Flow Type + // The type of the flow. For descriptions of the available types, see Choose a flow + // type // (https://docs.aws.amazon.com/connect/latest/adminguide/create-contact-flow.html#contact-flow-types) // in the Amazon Connect Administrator Guide. // // This member is required. Type types.ContactFlowType - // The description of the contact flow. + // The description of the flow. Description *string - // One or more tags. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde @@ -65,10 +66,10 @@ type CreateContactFlowInput struct { type CreateContactFlowOutput struct { - // The Amazon Resource Name (ARN) of the contact flow. + // The Amazon Resource Name (ARN) of the flow. ContactFlowArn *string - // The identifier of the contact flow. + // The identifier of the flow. ContactFlowId *string // Metadata pertaining to the operation's result. diff --git a/service/connect/api_op_CreateContactFlowModule.go b/service/connect/api_op_CreateContactFlowModule.go index 1b2de2a9f12..60a3c3c000c 100644 --- a/service/connect/api_op_CreateContactFlowModule.go +++ b/service/connect/api_op_CreateContactFlowModule.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a contact flow module for the specified Amazon Connect instance. +// Creates a flow module for the specified Amazon Connect instance. func (c *Client) CreateContactFlowModule(ctx context.Context, params *CreateContactFlowModuleInput, optFns ...func(*Options)) (*CreateContactFlowModuleOutput, error) { if params == nil { params = &CreateContactFlowModuleInput{} @@ -29,7 +29,7 @@ func (c *Client) CreateContactFlowModule(ctx context.Context, params *CreateCont type CreateContactFlowModuleInput struct { - // The content of the contact flow module. + // The content of the flow module. // // This member is required. Content *string @@ -40,7 +40,7 @@ type CreateContactFlowModuleInput struct { // This member is required. InstanceId *string - // The name of the contact flow module. + // The name of the flow module. // // This member is required. Name *string @@ -49,10 +49,11 @@ type CreateContactFlowModuleInput struct { // of the request. ClientToken *string - // The description of the contact flow module. + // The description of the flow module. Description *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde @@ -60,10 +61,10 @@ type CreateContactFlowModuleInput struct { type CreateContactFlowModuleOutput struct { - // The Amazon Resource Name (ARN) of the contact flow module. + // The Amazon Resource Name (ARN) of the flow module. Arn *string - // The identifier of the contact flow module. + // The identifier of the flow module. Id *string // Metadata pertaining to the operation's result. diff --git a/service/connect/api_op_CreateHoursOfOperation.go b/service/connect/api_op_CreateHoursOfOperation.go index bcd41b677b4..f83ebeebd60 100644 --- a/service/connect/api_op_CreateHoursOfOperation.go +++ b/service/connect/api_op_CreateHoursOfOperation.go @@ -55,7 +55,8 @@ type CreateHoursOfOperationInput struct { // The description of the hours of operation. Description *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateIntegrationAssociation.go b/service/connect/api_op_CreateIntegrationAssociation.go index bff885a25cf..00c3d4b666a 100644 --- a/service/connect/api_op_CreateIntegrationAssociation.go +++ b/service/connect/api_op_CreateIntegrationAssociation.go @@ -36,7 +36,9 @@ type CreateIntegrationAssociationInput struct { // This member is required. InstanceId *string - // The Amazon Resource Name (ARN) of the integration. + // The Amazon Resource Name (ARN) of the integration. When integrating with Amazon + // Pinpoint, the Amazon Connect and Amazon Pinpoint instances must be in the same + // account. // // This member is required. IntegrationArn *string @@ -58,7 +60,8 @@ type CreateIntegrationAssociationInput struct { // integration type. SourceType types.SourceType - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateQueue.go b/service/connect/api_op_CreateQueue.go index acd495745a7..47d17f27589 100644 --- a/service/connect/api_op_CreateQueue.go +++ b/service/connect/api_op_CreateQueue.go @@ -59,7 +59,8 @@ type CreateQueueInput struct { // The quick connects available to agents who are working the queue. QuickConnectIds []string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateQuickConnect.go b/service/connect/api_op_CreateQuickConnect.go index 036b479ae96..8dde1235d09 100644 --- a/service/connect/api_op_CreateQuickConnect.go +++ b/service/connect/api_op_CreateQuickConnect.go @@ -48,7 +48,8 @@ type CreateQuickConnectInput struct { // The description of the quick connect. Description *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateRoutingProfile.go b/service/connect/api_op_CreateRoutingProfile.go index ab318a11c98..0f2111ba8a2 100644 --- a/service/connect/api_op_CreateRoutingProfile.go +++ b/service/connect/api_op_CreateRoutingProfile.go @@ -60,7 +60,8 @@ type CreateRoutingProfileInput struct { // the agent can make only outbound calls. QueueConfigs []types.RoutingProfileQueueConfig - // One or more tags. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateSecurityProfile.go b/service/connect/api_op_CreateSecurityProfile.go index b0d086c8b24..4a58074c06a 100644 --- a/service/connect/api_op_CreateSecurityProfile.go +++ b/service/connect/api_op_CreateSecurityProfile.go @@ -46,7 +46,8 @@ type CreateSecurityProfileInput struct { // Permissions assigned to the security profile. Permissions []string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateUseCase.go b/service/connect/api_op_CreateUseCase.go index 5a51b51f149..835ca748b18 100644 --- a/service/connect/api_op_CreateUseCase.go +++ b/service/connect/api_op_CreateUseCase.go @@ -46,7 +46,8 @@ type CreateUseCaseInput struct { // This member is required. UseCaseType types.UseCaseType - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateUser.go b/service/connect/api_op_CreateUser.go index d53fd3c37c6..b8d12c64c69 100644 --- a/service/connect/api_op_CreateUser.go +++ b/service/connect/api_op_CreateUser.go @@ -84,7 +84,8 @@ type CreateUserInput struct { // password. Password *string - // One or more tags. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateUserHierarchyGroup.go b/service/connect/api_op_CreateUserHierarchyGroup.go index 24f4ef39f22..b1afd0dbdd6 100644 --- a/service/connect/api_op_CreateUserHierarchyGroup.go +++ b/service/connect/api_op_CreateUserHierarchyGroup.go @@ -43,7 +43,8 @@ type CreateUserHierarchyGroupInput struct { // level one if the parent group ID is null. ParentGroupId *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_CreateVocabulary.go b/service/connect/api_op_CreateVocabulary.go index 4660b5d6355..3996a46a242 100644 --- a/service/connect/api_op_CreateVocabulary.go +++ b/service/connect/api_op_CreateVocabulary.go @@ -67,7 +67,8 @@ type CreateVocabularyInput struct { // vocabulary again. ClientToken *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/api_op_DeleteContactFlow.go b/service/connect/api_op_DeleteContactFlow.go index ead6a9c8001..49dfeb2c420 100644 --- a/service/connect/api_op_DeleteContactFlow.go +++ b/service/connect/api_op_DeleteContactFlow.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes a contact flow for the specified Amazon Connect instance. +// Deletes a flow for the specified Amazon Connect instance. func (c *Client) DeleteContactFlow(ctx context.Context, params *DeleteContactFlowInput, optFns ...func(*Options)) (*DeleteContactFlowOutput, error) { if params == nil { params = &DeleteContactFlowInput{} @@ -28,7 +28,7 @@ func (c *Client) DeleteContactFlow(ctx context.Context, params *DeleteContactFlo type DeleteContactFlowInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string diff --git a/service/connect/api_op_DeleteContactFlowModule.go b/service/connect/api_op_DeleteContactFlowModule.go index 34192b6417b..88652d8adbe 100644 --- a/service/connect/api_op_DeleteContactFlowModule.go +++ b/service/connect/api_op_DeleteContactFlowModule.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes the specified contact flow module. +// Deletes the specified flow module. func (c *Client) DeleteContactFlowModule(ctx context.Context, params *DeleteContactFlowModuleInput, optFns ...func(*Options)) (*DeleteContactFlowModuleOutput, error) { if params == nil { params = &DeleteContactFlowModuleInput{} @@ -28,7 +28,7 @@ func (c *Client) DeleteContactFlowModule(ctx context.Context, params *DeleteCont type DeleteContactFlowModuleInput struct { - // The identifier of the contact flow module. + // The identifier of the flow module. // // This member is required. ContactFlowModuleId *string diff --git a/service/connect/api_op_DescribeContactFlow.go b/service/connect/api_op_DescribeContactFlow.go index 90cce9d269a..751bad22c6c 100644 --- a/service/connect/api_op_DescribeContactFlow.go +++ b/service/connect/api_op_DescribeContactFlow.go @@ -11,8 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes the specified contact flow. You can also create and update contact -// flows using the Amazon Connect Flow language +// Describes the specified flow. You can also create and update flows using the +// Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). func (c *Client) DescribeContactFlow(ctx context.Context, params *DescribeContactFlowInput, optFns ...func(*Options)) (*DescribeContactFlowOutput, error) { if params == nil { @@ -31,7 +31,7 @@ func (c *Client) DescribeContactFlow(ctx context.Context, params *DescribeContac type DescribeContactFlowInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string @@ -46,7 +46,7 @@ type DescribeContactFlowInput struct { type DescribeContactFlowOutput struct { - // Information about the contact flow. + // Information about the flow. ContactFlow *types.ContactFlow // Metadata pertaining to the operation's result. diff --git a/service/connect/api_op_DescribeContactFlowModule.go b/service/connect/api_op_DescribeContactFlowModule.go index aaf460f2467..f2437689522 100644 --- a/service/connect/api_op_DescribeContactFlowModule.go +++ b/service/connect/api_op_DescribeContactFlowModule.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes the specified contact flow module. +// Describes the specified flow module. func (c *Client) DescribeContactFlowModule(ctx context.Context, params *DescribeContactFlowModuleInput, optFns ...func(*Options)) (*DescribeContactFlowModuleOutput, error) { if params == nil { params = &DescribeContactFlowModuleInput{} @@ -29,7 +29,7 @@ func (c *Client) DescribeContactFlowModule(ctx context.Context, params *Describe type DescribeContactFlowModuleInput struct { - // The identifier of the contact flow module. + // The identifier of the flow module. // // This member is required. ContactFlowModuleId *string @@ -45,7 +45,7 @@ type DescribeContactFlowModuleInput struct { type DescribeContactFlowModuleOutput struct { - // Information about the contact flow module. + // Information about the flow module. ContactFlowModule *types.ContactFlowModule // Metadata pertaining to the operation's result. diff --git a/service/connect/api_op_DisassociateLambdaFunction.go b/service/connect/api_op_DisassociateLambdaFunction.go index 6e801275f85..195b2a15507 100644 --- a/service/connect/api_op_DisassociateLambdaFunction.go +++ b/service/connect/api_op_DisassociateLambdaFunction.go @@ -12,7 +12,7 @@ import ( // This API is in preview release for Amazon Connect and is subject to change. // Remove the Lambda function from the dropdown options available in the relevant -// contact flow blocks. +// flow blocks. func (c *Client) DisassociateLambdaFunction(ctx context.Context, params *DisassociateLambdaFunctionInput, optFns ...func(*Options)) (*DisassociateLambdaFunctionOutput, error) { if params == nil { params = &DisassociateLambdaFunctionInput{} diff --git a/service/connect/api_op_DisassociatePhoneNumberContactFlow.go b/service/connect/api_op_DisassociatePhoneNumberContactFlow.go index da22f5ad24c..61bd97a4db8 100644 --- a/service/connect/api_op_DisassociatePhoneNumberContactFlow.go +++ b/service/connect/api_op_DisassociatePhoneNumberContactFlow.go @@ -10,8 +10,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Removes the contact flow association from a phone number claimed to your Amazon -// Connect instance, if a contact flow association exists. +// Removes the flow association from a phone number claimed to your Amazon Connect +// instance, if a flow association exists. func (c *Client) DisassociatePhoneNumberContactFlow(ctx context.Context, params *DisassociatePhoneNumberContactFlowInput, optFns ...func(*Options)) (*DisassociatePhoneNumberContactFlowOutput, error) { if params == nil { params = &DisassociatePhoneNumberContactFlowInput{} diff --git a/service/connect/api_op_GetTaskTemplate.go b/service/connect/api_op_GetTaskTemplate.go index 9ffbf75b09e..67cec78adbb 100644 --- a/service/connect/api_op_GetTaskTemplate.go +++ b/service/connect/api_op_GetTaskTemplate.go @@ -98,7 +98,8 @@ type GetTaskTemplateOutput struct { // task that refers to this template cannot be created. Status types.TaskTemplateStatus - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string // Metadata pertaining to the operation's result. diff --git a/service/connect/api_op_ListContactFlowModules.go b/service/connect/api_op_ListContactFlowModules.go index 18961305e84..de8ab6a6236 100644 --- a/service/connect/api_op_ListContactFlowModules.go +++ b/service/connect/api_op_ListContactFlowModules.go @@ -12,8 +12,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Provides information about the contact flow modules for the specified Amazon -// Connect instance. +// Provides information about the flow modules for the specified Amazon Connect +// instance. func (c *Client) ListContactFlowModules(ctx context.Context, params *ListContactFlowModulesInput, optFns ...func(*Options)) (*ListContactFlowModulesOutput, error) { if params == nil { params = &ListContactFlowModulesInput{} @@ -37,7 +37,7 @@ type ListContactFlowModulesInput struct { // This member is required. InstanceId *string - // The state of the contact flow module. + // The state of the flow module. ContactFlowModuleState types.ContactFlowModuleState // The maximum number of results to return per page. @@ -52,7 +52,7 @@ type ListContactFlowModulesInput struct { type ListContactFlowModulesOutput struct { - // Information about the contact flow module. + // Information about the flow module. ContactFlowModulesSummaryList []types.ContactFlowModuleSummary // If there are additional results, this is the token for the next set of results. diff --git a/service/connect/api_op_ListContactFlows.go b/service/connect/api_op_ListContactFlows.go index 71c37facbc1..00c67109a56 100644 --- a/service/connect/api_op_ListContactFlows.go +++ b/service/connect/api_op_ListContactFlows.go @@ -12,11 +12,10 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Provides information about the contact flows for the specified Amazon Connect -// instance. You can also create and update contact flows using the Amazon Connect -// Flow language +// Provides information about the flows for the specified Amazon Connect instance. +// You can also create and update flows using the Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). For -// more information about contact flows, see Contact Flows +// more information about flows, see Flows // (https://docs.aws.amazon.com/connect/latest/adminguide/concepts-contact-flows.html) // in the Amazon Connect Administrator Guide. func (c *Client) ListContactFlows(ctx context.Context, params *ListContactFlowsInput, optFns ...func(*Options)) (*ListContactFlowsOutput, error) { @@ -42,10 +41,11 @@ type ListContactFlowsInput struct { // This member is required. InstanceId *string - // The type of contact flow. + // The type of flow. ContactFlowTypes []types.ContactFlowType - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -57,7 +57,7 @@ type ListContactFlowsInput struct { type ListContactFlowsOutput struct { - // Information about the contact flows. + // Information about the flows. ContactFlowSummaryList []types.ContactFlowSummary // If there are additional results, this is the token for the next set of results. @@ -142,7 +142,8 @@ var _ ListContactFlowsAPIClient = (*Client)(nil) // ListContactFlowsPaginatorOptions is the paginator options for ListContactFlows type ListContactFlowsPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListContactReferences.go b/service/connect/api_op_ListContactReferences.go index 752a78435fd..dbfc83aef1c 100644 --- a/service/connect/api_op_ListContactReferences.go +++ b/service/connect/api_op_ListContactReferences.go @@ -63,7 +63,7 @@ type ListContactReferencesOutput struct { // This is always returned as null in the response. NextToken *string - // Information about the contact flows. + // Information about the flows. ReferenceSummaryList []types.ReferenceSummary // Metadata pertaining to the operation's result. diff --git a/service/connect/api_op_ListHoursOfOperations.go b/service/connect/api_op_ListHoursOfOperations.go index bd70c1f8a60..d600dcf4c19 100644 --- a/service/connect/api_op_ListHoursOfOperations.go +++ b/service/connect/api_op_ListHoursOfOperations.go @@ -40,7 +40,8 @@ type ListHoursOfOperationsInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -138,7 +139,8 @@ var _ ListHoursOfOperationsAPIClient = (*Client)(nil) // ListHoursOfOperationsPaginatorOptions is the paginator options for // ListHoursOfOperations type ListHoursOfOperationsPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListLambdaFunctions.go b/service/connect/api_op_ListLambdaFunctions.go index 092b2d9e5fc..f6589496ce7 100644 --- a/service/connect/api_op_ListLambdaFunctions.go +++ b/service/connect/api_op_ListLambdaFunctions.go @@ -13,7 +13,7 @@ import ( // This API is in preview release for Amazon Connect and is subject to change. // Returns a paginated list of all Lambda functions that display in the dropdown -// options in the relevant contact flow blocks. +// options in the relevant flow blocks. func (c *Client) ListLambdaFunctions(ctx context.Context, params *ListLambdaFunctionsInput, optFns ...func(*Options)) (*ListLambdaFunctionsOutput, error) { if params == nil { params = &ListLambdaFunctionsInput{} diff --git a/service/connect/api_op_ListPhoneNumbers.go b/service/connect/api_op_ListPhoneNumbers.go index 6d0dc52e5af..e6e7b5966f5 100644 --- a/service/connect/api_op_ListPhoneNumbers.go +++ b/service/connect/api_op_ListPhoneNumbers.go @@ -40,7 +40,8 @@ type ListPhoneNumbersInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -143,7 +144,8 @@ var _ ListPhoneNumbersAPIClient = (*Client)(nil) // ListPhoneNumbersPaginatorOptions is the paginator options for ListPhoneNumbers type ListPhoneNumbersPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListPrompts.go b/service/connect/api_op_ListPrompts.go index 3652bfc914e..345e462bfb1 100644 --- a/service/connect/api_op_ListPrompts.go +++ b/service/connect/api_op_ListPrompts.go @@ -36,7 +36,8 @@ type ListPromptsInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -132,7 +133,8 @@ var _ ListPromptsAPIClient = (*Client)(nil) // ListPromptsPaginatorOptions is the paginator options for ListPrompts type ListPromptsPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListQueueQuickConnects.go b/service/connect/api_op_ListQueueQuickConnects.go index 714a6e75969..0cc6a552a43 100644 --- a/service/connect/api_op_ListQueueQuickConnects.go +++ b/service/connect/api_op_ListQueueQuickConnects.go @@ -42,7 +42,8 @@ type ListQueueQuickConnectsInput struct { // This member is required. QueueId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -140,7 +141,8 @@ var _ ListQueueQuickConnectsAPIClient = (*Client)(nil) // ListQueueQuickConnectsPaginatorOptions is the paginator options for // ListQueueQuickConnects type ListQueueQuickConnectsPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListQueues.go b/service/connect/api_op_ListQueues.go index c72a8e1bdcc..4f166b3f954 100644 --- a/service/connect/api_op_ListQueues.go +++ b/service/connect/api_op_ListQueues.go @@ -42,7 +42,8 @@ type ListQueuesInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -141,7 +142,8 @@ var _ ListQueuesAPIClient = (*Client)(nil) // ListQueuesPaginatorOptions is the paginator options for ListQueues type ListQueuesPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListQuickConnects.go b/service/connect/api_op_ListQuickConnects.go index 7f8d0cddfd1..4ec61dc2bd4 100644 --- a/service/connect/api_op_ListQuickConnects.go +++ b/service/connect/api_op_ListQuickConnects.go @@ -37,7 +37,8 @@ type ListQuickConnectsInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -139,7 +140,8 @@ var _ ListQuickConnectsAPIClient = (*Client)(nil) // ListQuickConnectsPaginatorOptions is the paginator options for ListQuickConnects type ListQuickConnectsPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListRoutingProfileQueues.go b/service/connect/api_op_ListRoutingProfileQueues.go index e2767978539..e62fb794d9d 100644 --- a/service/connect/api_op_ListRoutingProfileQueues.go +++ b/service/connect/api_op_ListRoutingProfileQueues.go @@ -41,7 +41,8 @@ type ListRoutingProfileQueuesInput struct { // This member is required. RoutingProfileId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -139,7 +140,8 @@ var _ ListRoutingProfileQueuesAPIClient = (*Client)(nil) // ListRoutingProfileQueuesPaginatorOptions is the paginator options for // ListRoutingProfileQueues type ListRoutingProfileQueuesPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListRoutingProfiles.go b/service/connect/api_op_ListRoutingProfiles.go index 15cca9aee3a..da37cf9886a 100644 --- a/service/connect/api_op_ListRoutingProfiles.go +++ b/service/connect/api_op_ListRoutingProfiles.go @@ -42,7 +42,8 @@ type ListRoutingProfilesInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -140,7 +141,8 @@ var _ ListRoutingProfilesAPIClient = (*Client)(nil) // ListRoutingProfilesPaginatorOptions is the paginator options for // ListRoutingProfiles type ListRoutingProfilesPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListSecurityProfiles.go b/service/connect/api_op_ListSecurityProfiles.go index fe7e916ea1c..32e40b1d8e5 100644 --- a/service/connect/api_op_ListSecurityProfiles.go +++ b/service/connect/api_op_ListSecurityProfiles.go @@ -40,7 +40,8 @@ type ListSecurityProfilesInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -138,7 +139,8 @@ var _ ListSecurityProfilesAPIClient = (*Client)(nil) // ListSecurityProfilesPaginatorOptions is the paginator options for // ListSecurityProfiles type ListSecurityProfilesPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListUserHierarchyGroups.go b/service/connect/api_op_ListUserHierarchyGroups.go index 162fd6f6436..ca5b6aa1a0a 100644 --- a/service/connect/api_op_ListUserHierarchyGroups.go +++ b/service/connect/api_op_ListUserHierarchyGroups.go @@ -40,7 +40,8 @@ type ListUserHierarchyGroupsInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -138,7 +139,8 @@ var _ ListUserHierarchyGroupsAPIClient = (*Client)(nil) // ListUserHierarchyGroupsPaginatorOptions is the paginator options for // ListUserHierarchyGroups type ListUserHierarchyGroupsPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_ListUsers.go b/service/connect/api_op_ListUsers.go index eabc7947e0b..fcf38794028 100644 --- a/service/connect/api_op_ListUsers.go +++ b/service/connect/api_op_ListUsers.go @@ -37,7 +37,8 @@ type ListUsersInput struct { // This member is required. InstanceId *string - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. MaxResults int32 // The token for the next set of results. Use the value returned in the previous @@ -133,7 +134,8 @@ var _ ListUsersAPIClient = (*Client)(nil) // ListUsersPaginatorOptions is the paginator options for ListUsers type ListUsersPaginatorOptions struct { - // The maximum number of results to return per page. + // The maximum number of results to return per page. The default MaxResult size is + // 100. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/connect/api_op_SearchSecurityProfiles.go b/service/connect/api_op_SearchSecurityProfiles.go new file mode 100644 index 00000000000..85d716f58e2 --- /dev/null +++ b/service/connect/api_op_SearchSecurityProfiles.go @@ -0,0 +1,231 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package connect + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/connect/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// This API is in preview release for Amazon Connect and is subject to change. +// Searches security profiles in an Amazon Connect instance, with optional +// filtering. +func (c *Client) SearchSecurityProfiles(ctx context.Context, params *SearchSecurityProfilesInput, optFns ...func(*Options)) (*SearchSecurityProfilesOutput, error) { + if params == nil { + params = &SearchSecurityProfilesInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "SearchSecurityProfiles", params, optFns, c.addOperationSearchSecurityProfilesMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*SearchSecurityProfilesOutput) + out.ResultMetadata = metadata + return out, nil +} + +type SearchSecurityProfilesInput struct { + + // The identifier of the Amazon Connect instance. You can find the instanceId in + // the ARN of the instance. + // + // This member is required. + InstanceId *string + + // The maximum number of results to return per page. + MaxResults int32 + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string + + // The search criteria to be used to return security profiles. + SearchCriteria *types.SecurityProfileSearchCriteria + + // Filters to be applied to search results. + SearchFilter *types.SecurityProfilesSearchFilter + + noSmithyDocumentSerde +} + +type SearchSecurityProfilesOutput struct { + + // The total number of security profiles which matched your search query. + ApproximateTotalCount *int64 + + // If there are additional results, this is the token for the next set of results. + NextToken *string + + // Information about the security profiles. + SecurityProfiles []types.SecurityProfileSearchSummary + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationSearchSecurityProfilesMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpSearchSecurityProfiles{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpSearchSecurityProfiles{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpSearchSecurityProfilesValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opSearchSecurityProfiles(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +// SearchSecurityProfilesAPIClient is a client that implements the +// SearchSecurityProfiles operation. +type SearchSecurityProfilesAPIClient interface { + SearchSecurityProfiles(context.Context, *SearchSecurityProfilesInput, ...func(*Options)) (*SearchSecurityProfilesOutput, error) +} + +var _ SearchSecurityProfilesAPIClient = (*Client)(nil) + +// SearchSecurityProfilesPaginatorOptions is the paginator options for +// SearchSecurityProfiles +type SearchSecurityProfilesPaginatorOptions struct { + // The maximum number of results to return per page. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// SearchSecurityProfilesPaginator is a paginator for SearchSecurityProfiles +type SearchSecurityProfilesPaginator struct { + options SearchSecurityProfilesPaginatorOptions + client SearchSecurityProfilesAPIClient + params *SearchSecurityProfilesInput + nextToken *string + firstPage bool +} + +// NewSearchSecurityProfilesPaginator returns a new SearchSecurityProfilesPaginator +func NewSearchSecurityProfilesPaginator(client SearchSecurityProfilesAPIClient, params *SearchSecurityProfilesInput, optFns ...func(*SearchSecurityProfilesPaginatorOptions)) *SearchSecurityProfilesPaginator { + if params == nil { + params = &SearchSecurityProfilesInput{} + } + + options := SearchSecurityProfilesPaginatorOptions{} + if params.MaxResults != 0 { + options.Limit = params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &SearchSecurityProfilesPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *SearchSecurityProfilesPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next SearchSecurityProfiles page. +func (p *SearchSecurityProfilesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*SearchSecurityProfilesOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + params.MaxResults = p.options.Limit + + result, err := p.client.SearchSecurityProfiles(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opSearchSecurityProfiles(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "connect", + OperationName: "SearchSecurityProfiles", + } +} diff --git a/service/connect/api_op_StartChatContact.go b/service/connect/api_op_StartChatContact.go index 3767ae0b7ce..1fc3844cd55 100644 --- a/service/connect/api_op_StartChatContact.go +++ b/service/connect/api_op_StartChatContact.go @@ -12,8 +12,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Initiates a contact flow to start a new chat for the customer. Response of this -// API provides a token required to obtain credentials from the +// Initiates a flow to start a new chat for the customer. Response of this API +// provides a token required to obtain credentials from the // CreateParticipantConnection // (https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html) // API in the Amazon Connect Participant Service. When a new chat contact is @@ -54,11 +54,11 @@ func (c *Client) StartChatContact(ctx context.Context, params *StartChatContactI type StartChatContactInput struct { - // The identifier of the contact flow for initiating the chat. To see the - // ContactFlowId in the Amazon Connect console user interface, on the navigation - // menu go to Routing, Contact Flows. Choose the contact flow. On the contact flow - // page, under the name of the contact flow, choose Show additional flow - // information. The ContactFlowId is the last part of the ARN, shown here in bold: + // The identifier of the flow for initiating the chat. To see the ContactFlowId in + // the Amazon Connect console user interface, on the navigation menu go to Routing, + // Contact Flows. Choose the flow. On the flow page, under the name of the flow, + // choose Show additional flow information. The ContactFlowId is the last part of + // the ARN, shown here in bold: // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx // // This member is required. @@ -76,10 +76,10 @@ type StartChatContactInput struct { ParticipantDetails *types.ParticipantDetails // A custom key-value pair using an attribute map. The attributes are standard - // Amazon Connect attributes. They can be accessed in contact flows just like any - // other contact attributes. There can be up to 32,768 UTF-8 bytes across all - // key-value pairs per contact. Attribute keys can include only alphanumeric, dash, - // and underscore characters. + // Amazon Connect attributes. They can be accessed in flows just like any other + // contact attributes. There can be up to 32,768 UTF-8 bytes across all key-value + // pairs per contact. Attribute keys can include only alphanumeric, dash, and + // underscore characters. Attributes map[string]string // The total duration of the newly started chat session. If not specified, the chat diff --git a/service/connect/api_op_StartOutboundVoiceContact.go b/service/connect/api_op_StartOutboundVoiceContact.go index 28fb476f2f3..993d987de53 100644 --- a/service/connect/api_op_StartOutboundVoiceContact.go +++ b/service/connect/api_op_StartOutboundVoiceContact.go @@ -12,23 +12,20 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Places an outbound call to a contact, and then initiates the contact flow. It -// performs the actions in the contact flow that's specified (in ContactFlowId). -// Agents do not initiate the outbound API, which means that they do not dial the -// contact. If the contact flow places an outbound call to a contact, and then puts -// the contact in queue, the call is then routed to the agent, like any other -// inbound case. There is a 60-second dialing timeout for this operation. If the -// call is not connected after 60 seconds, it fails. UK numbers with a 447 prefix -// are not allowed by default. Before you can dial these UK mobile numbers, you -// must submit a service quota increase request. For more information, see Amazon -// Connect Service Quotas +// Places an outbound call to a contact, and then initiates the flow. It performs +// the actions in the flow that's specified (in ContactFlowId). Agents do not +// initiate the outbound API, which means that they do not dial the contact. If the +// flow places an outbound call to a contact, and then puts the contact in queue, +// the call is then routed to the agent, like any other inbound case. There is a +// 60-second dialing timeout for this operation. If the call is not connected after +// 60 seconds, it fails. UK numbers with a 447 prefix are not allowed by default. +// Before you can dial these UK mobile numbers, you must submit a service quota +// increase request. For more information, see Amazon Connect Service Quotas // (https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html) // in the Amazon Connect Administrator Guide. Campaign calls are not allowed by // default. Before you can make a call with TrafficType = CAMPAIGN, you must submit -// a service quota increase request. For more information, see Amazon Connect -// Service Quotas -// (https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html) -// in the Amazon Connect Administrator Guide. +// a service quota increase request to the quota Amazon Connect campaigns +// (https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#outbound-communications-quotas). func (c *Client) StartOutboundVoiceContact(ctx context.Context, params *StartOutboundVoiceContactInput, optFns ...func(*Options)) (*StartOutboundVoiceContactOutput, error) { if params == nil { params = &StartOutboundVoiceContactInput{} @@ -46,11 +43,11 @@ func (c *Client) StartOutboundVoiceContact(ctx context.Context, params *StartOut type StartOutboundVoiceContactInput struct { - // The identifier of the contact flow for the outbound call. To see the - // ContactFlowId in the Amazon Connect console user interface, on the navigation - // menu go to Routing, Contact Flows. Choose the contact flow. On the contact flow - // page, under the name of the contact flow, choose Show additional flow - // information. The ContactFlowId is the last part of the ARN, shown here in bold: + // The identifier of the flow for the outbound call. To see the ContactFlowId in + // the Amazon Connect console user interface, on the navigation menu go to Routing, + // Contact Flows. Choose the flow. On the flow page, under the name of the flow, + // choose Show additional flow information. The ContactFlowId is the last part of + // the ARN, shown here in bold: // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx // // This member is required. @@ -71,10 +68,10 @@ type StartOutboundVoiceContactInput struct { AnswerMachineDetectionConfig *types.AnswerMachineDetectionConfig // A custom key-value pair using an attribute map. The attributes are standard - // Amazon Connect attributes, and can be accessed in contact flows just like any - // other contact attributes. There can be up to 32,768 UTF-8 bytes across all - // key-value pairs per contact. Attribute keys can include only alphanumeric, dash, - // and underscore characters. + // Amazon Connect attributes, and can be accessed in flows just like any other + // contact attributes. There can be up to 32,768 UTF-8 bytes across all key-value + // pairs per contact. Attribute keys can include only alphanumeric, dash, and + // underscore characters. Attributes map[string]string // The campaign identifier of the outbound communication. @@ -87,8 +84,8 @@ type StartOutboundVoiceContactInput struct { // The queue for the call. If you specify a queue, the phone displayed for caller // ID is the phone number specified in the queue. If you do not specify a queue, - // the queue defined in the contact flow is used. If you do not specify a queue, - // you must specify a source phone number. + // the queue defined in the flow is used. If you do not specify a queue, you must + // specify a source phone number. QueueId *string // The phone number associated with the Amazon Connect instance, in E.164 format. diff --git a/service/connect/api_op_StartTaskContact.go b/service/connect/api_op_StartTaskContact.go index 1dcb663cf22..c5e3260d399 100644 --- a/service/connect/api_op_StartTaskContact.go +++ b/service/connect/api_op_StartTaskContact.go @@ -13,7 +13,7 @@ import ( "time" ) -// Initiates a contact flow to start a new task. +// Initiates a flow to start a new task. func (c *Client) StartTaskContact(ctx context.Context, params *StartTaskContactInput, optFns ...func(*Options)) (*StartTaskContactOutput, error) { if params == nil { params = &StartTaskContactInput{} @@ -43,21 +43,21 @@ type StartTaskContactInput struct { Name *string // A custom key-value pair using an attribute map. The attributes are standard - // Amazon Connect attributes, and can be accessed in contact flows just like any - // other contact attributes. There can be up to 32,768 UTF-8 bytes across all - // key-value pairs per contact. Attribute keys can include only alphanumeric, dash, - // and underscore characters. + // Amazon Connect attributes, and can be accessed in flows just like any other + // contact attributes. There can be up to 32,768 UTF-8 bytes across all key-value + // pairs per contact. Attribute keys can include only alphanumeric, dash, and + // underscore characters. Attributes map[string]string // A unique, case-sensitive identifier that you provide to ensure the idempotency // of the request. ClientToken *string - // The identifier of the contact flow for initiating the tasks. To see the - // ContactFlowId in the Amazon Connect console user interface, on the navigation - // menu go to Routing, Contact Flows. Choose the contact flow. On the contact flow - // page, under the name of the contact flow, choose Show additional flow - // information. The ContactFlowId is the last part of the ARN, shown here in bold: + // The identifier of the flow for initiating the tasks. To see the ContactFlowId in + // the Amazon Connect console user interface, on the navigation menu go to Routing, + // Contact Flows. Choose the flow. On the flow page, under the name of the flow, + // choose Show additional flow information. The ContactFlowId is the last part of + // the ARN, shown here in bold: // arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx ContactFlowId *string @@ -75,8 +75,8 @@ type StartTaskContactInput struct { References map[string]types.Reference // The timestamp, in Unix Epoch seconds format, at which to start running the - // inbound contact flow. The scheduled time cannot be in the past. It must be - // within up to 6 days in future. + // inbound flow. The scheduled time cannot be in the past. It must be within up to + // 6 days in future. ScheduledTime *time.Time // A unique identifier for the task template. diff --git a/service/connect/api_op_TagResource.go b/service/connect/api_op_TagResource.go index 43ace5b4178..f2b03b2a32d 100644 --- a/service/connect/api_op_TagResource.go +++ b/service/connect/api_op_TagResource.go @@ -10,11 +10,12 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Adds the specified tags to the specified resource. The supported resource types -// are users, routing profiles, queues, quick connects, contact flows, agent -// status, hours of operation, phone number, security profiles, and task templates. -// For sample policies that use tags, see Amazon Connect Identity-Based Policy -// Examples +// Adds the specified tags to the specified resource. Some of the supported +// resource types are agents, routing profiles, queues, quick connects, contact +// flows, agent statuses, hours of operation, phone numbers, security profiles, and +// task templates. For a complete list, see Tagging resources in Amazon Connect +// (https://docs.aws.amazon.com/connect/latest/adminguide/tagging.html). For sample +// policies that use tags, see Amazon Connect Identity-Based Policy Examples // (https://docs.aws.amazon.com/connect/latest/adminguide/security_iam_id-based-policy-examples.html) // in the Amazon Connect Administrator Guide. func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error) { @@ -39,7 +40,8 @@ type TagResourceInput struct { // This member is required. ResourceArn *string - // One or more tags. For example, { "tags": {"key1":"value1", "key2":"value2"} }. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. // // This member is required. Tags map[string]string diff --git a/service/connect/api_op_TransferContact.go b/service/connect/api_op_TransferContact.go index e50b0745916..bcaf1021b32 100644 --- a/service/connect/api_op_TransferContact.go +++ b/service/connect/api_op_TransferContact.go @@ -13,24 +13,24 @@ import ( // Transfers contacts from one agent or queue to another agent or queue at any // point after a contact is created. You can transfer a contact to another queue by -// providing the contact flow which orchestrates the contact to the destination -// queue. This gives you more control over contact handling and helps you adhere to -// the service level agreement (SLA) guaranteed to your customers. Note the -// following requirements: +// providing the flow which orchestrates the contact to the destination queue. This +// gives you more control over contact handling and helps you adhere to the service +// level agreement (SLA) guaranteed to your customers. Note the following +// requirements: // // * Transfer is supported for only TASK contacts. // -// * Do -// not use both QueueId and UserId in the same call. +// * Do not use +// both QueueId and UserId in the same call. // -// * The following contact flow -// types are supported: Inbound contact flow, Transfer to agent flow, and Transfer -// to queue flow. +// * The following flow types are +// supported: Inbound flow, Transfer to agent flow, and Transfer to queue flow. // -// * The TransferContact API can be called only on active -// contacts. +// * +// The TransferContact API can be called only on active contacts. // -// * A contact cannot be transferred more than 11 times. +// * A contact +// cannot be transferred more than 11 times. func (c *Client) TransferContact(ctx context.Context, params *TransferContactInput, optFns ...func(*Options)) (*TransferContactOutput, error) { if params == nil { params = &TransferContactInput{} @@ -48,7 +48,7 @@ func (c *Client) TransferContact(ctx context.Context, params *TransferContactInp type TransferContactInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string diff --git a/service/connect/api_op_UpdateContactAttributes.go b/service/connect/api_op_UpdateContactAttributes.go index 63abd50b4c0..22a00b5773f 100644 --- a/service/connect/api_op_UpdateContactAttributes.go +++ b/service/connect/api_op_UpdateContactAttributes.go @@ -19,16 +19,10 @@ import ( // application and save the data with the contact in Amazon Connect. You could also // flag calls for additional analysis, such as legal review or to identify abusive // callers. Contact attributes are available in Amazon Connect for 24 months, and -// are then deleted. For information about CTR retention and the maximum size of -// the CTR attributes section, see Feature specifications +// are then deleted. For information about contact record retention and the maximum +// size of the contact record attributes section, see Feature specifications // (https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#feature-limits) -// in the Amazon Connect Administrator Guide. Important: You cannot use the -// operation to update attributes for contacts that occurred prior to the release -// of the API, which was September 12, 2018. You can update attributes only for -// contacts that started after the release of the API. If you attempt to update -// attributes for a contact that occurred prior to the release of the API, a 400 -// error is returned. This applies also to queued callbacks that were initiated -// prior to the release of the API but are still active in your instance. +// in the Amazon Connect Administrator Guide. func (c *Client) UpdateContactAttributes(ctx context.Context, params *UpdateContactAttributesInput, optFns ...func(*Options)) (*UpdateContactAttributesOutput, error) { if params == nil { params = &UpdateContactAttributesInput{} @@ -46,10 +40,10 @@ func (c *Client) UpdateContactAttributes(ctx context.Context, params *UpdateCont type UpdateContactAttributesInput struct { - // The Amazon Connect attributes. These attributes can be accessed in contact flows - // just like any other contact attributes. You can have up to 32,768 UTF-8 bytes - // across all attributes for a contact. Attribute keys can include only - // alphanumeric, dash, and underscore characters. + // The Amazon Connect attributes. These attributes can be accessed in flows just + // like any other contact attributes. You can have up to 32,768 UTF-8 bytes across + // all attributes for a contact. Attribute keys can include only alphanumeric, + // dash, and underscore characters. // // This member is required. Attributes map[string]string diff --git a/service/connect/api_op_UpdateContactFlowContent.go b/service/connect/api_op_UpdateContactFlowContent.go index b1177fd337f..fe9e99e6e00 100644 --- a/service/connect/api_op_UpdateContactFlowContent.go +++ b/service/connect/api_op_UpdateContactFlowContent.go @@ -10,8 +10,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates the specified contact flow. You can also create and update contact flows -// using the Amazon Connect Flow language +// Updates the specified flow. You can also create and update flows using the +// Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). func (c *Client) UpdateContactFlowContent(ctx context.Context, params *UpdateContactFlowContentInput, optFns ...func(*Options)) (*UpdateContactFlowContentOutput, error) { if params == nil { @@ -30,13 +30,13 @@ func (c *Client) UpdateContactFlowContent(ctx context.Context, params *UpdateCon type UpdateContactFlowContentInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string - // The JSON string that represents contact flow’s content. For an example, see - // Example contact flow in Amazon Connect Flow language + // The JSON string that represents flow's content. For an example, see Example + // contact flow in Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language-example.html) // in the Amazon Connect Administrator Guide. // diff --git a/service/connect/api_op_UpdateContactFlowMetadata.go b/service/connect/api_op_UpdateContactFlowMetadata.go index 6d30bb974e9..3fd494e92f0 100644 --- a/service/connect/api_op_UpdateContactFlowMetadata.go +++ b/service/connect/api_op_UpdateContactFlowMetadata.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates metadata about specified contact flow. +// Updates metadata about specified flow. func (c *Client) UpdateContactFlowMetadata(ctx context.Context, params *UpdateContactFlowMetadataInput, optFns ...func(*Options)) (*UpdateContactFlowMetadataOutput, error) { if params == nil { params = &UpdateContactFlowMetadataInput{} @@ -29,7 +29,7 @@ func (c *Client) UpdateContactFlowMetadata(ctx context.Context, params *UpdateCo type UpdateContactFlowMetadataInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string @@ -40,13 +40,13 @@ type UpdateContactFlowMetadataInput struct { // This member is required. InstanceId *string - // The state of contact flow. + // The state of flow. ContactFlowState types.ContactFlowState - // The description of the contact flow. + // The description of the flow. Description *string - // TThe name of the contact flow. + // TThe name of the flow. Name *string noSmithyDocumentSerde diff --git a/service/connect/api_op_UpdateContactFlowModuleContent.go b/service/connect/api_op_UpdateContactFlowModuleContent.go index 859e7573a9a..383f3894d0d 100644 --- a/service/connect/api_op_UpdateContactFlowModuleContent.go +++ b/service/connect/api_op_UpdateContactFlowModuleContent.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates specified contact flow module for the specified Amazon Connect instance. +// Updates specified flow module for the specified Amazon Connect instance. func (c *Client) UpdateContactFlowModuleContent(ctx context.Context, params *UpdateContactFlowModuleContentInput, optFns ...func(*Options)) (*UpdateContactFlowModuleContentOutput, error) { if params == nil { params = &UpdateContactFlowModuleContentInput{} @@ -28,12 +28,12 @@ func (c *Client) UpdateContactFlowModuleContent(ctx context.Context, params *Upd type UpdateContactFlowModuleContentInput struct { - // The identifier of the contact flow module. + // The identifier of the flow module. // // This member is required. ContactFlowModuleId *string - // The content of the contact flow module. + // The content of the flow module. // // This member is required. Content *string diff --git a/service/connect/api_op_UpdateContactFlowModuleMetadata.go b/service/connect/api_op_UpdateContactFlowModuleMetadata.go index 60ed577bc20..3cbdb012ba6 100644 --- a/service/connect/api_op_UpdateContactFlowModuleMetadata.go +++ b/service/connect/api_op_UpdateContactFlowModuleMetadata.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates metadata about specified contact flow module. +// Updates metadata about specified flow module. func (c *Client) UpdateContactFlowModuleMetadata(ctx context.Context, params *UpdateContactFlowModuleMetadataInput, optFns ...func(*Options)) (*UpdateContactFlowModuleMetadataOutput, error) { if params == nil { params = &UpdateContactFlowModuleMetadataInput{} @@ -29,7 +29,7 @@ func (c *Client) UpdateContactFlowModuleMetadata(ctx context.Context, params *Up type UpdateContactFlowModuleMetadataInput struct { - // The identifier of the contact flow module. + // The identifier of the flow module. // // This member is required. ContactFlowModuleId *string @@ -40,13 +40,13 @@ type UpdateContactFlowModuleMetadataInput struct { // This member is required. InstanceId *string - // The description of the contact flow module. + // The description of the flow module. Description *string - // The name of the contact flow module. + // The name of the flow module. Name *string - // The state of contact flow module. + // The state of flow module. State types.ContactFlowModuleState noSmithyDocumentSerde diff --git a/service/connect/api_op_UpdateContactFlowName.go b/service/connect/api_op_UpdateContactFlowName.go index e3e4e51b598..63c06f407df 100644 --- a/service/connect/api_op_UpdateContactFlowName.go +++ b/service/connect/api_op_UpdateContactFlowName.go @@ -10,8 +10,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// The name of the contact flow. You can also create and update contact flows using -// the Amazon Connect Flow language +// The name of the flow. You can also create and update flows using the Amazon +// Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). func (c *Client) UpdateContactFlowName(ctx context.Context, params *UpdateContactFlowNameInput, optFns ...func(*Options)) (*UpdateContactFlowNameOutput, error) { if params == nil { @@ -30,7 +30,7 @@ func (c *Client) UpdateContactFlowName(ctx context.Context, params *UpdateContac type UpdateContactFlowNameInput struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string @@ -40,10 +40,10 @@ type UpdateContactFlowNameInput struct { // This member is required. InstanceId *string - // The description of the contact flow. + // The description of the flow. Description *string - // The name of the contact flow. + // The name of the flow. Name *string noSmithyDocumentSerde diff --git a/service/connect/api_op_UpdateContactSchedule.go b/service/connect/api_op_UpdateContactSchedule.go index e7bbd29fd13..0d7bd7dd2c9 100644 --- a/service/connect/api_op_UpdateContactSchedule.go +++ b/service/connect/api_op_UpdateContactSchedule.go @@ -41,8 +41,8 @@ type UpdateContactScheduleInput struct { InstanceId *string // The timestamp, in Unix Epoch seconds format, at which to start running the - // inbound contact flow. The scheduled time cannot be in the past. It must be - // within up to 6 days in future. + // inbound flow. The scheduled time cannot be in the past. It must be within up to + // 6 days in future. // // This member is required. ScheduledTime *time.Time diff --git a/service/connect/deserializers.go b/service/connect/deserializers.go index 8e793daf28c..a0e16473c18 100644 --- a/service/connect/deserializers.go +++ b/service/connect/deserializers.go @@ -15501,6 +15501,187 @@ func awsRestjson1_deserializeOpDocumentSearchAvailablePhoneNumbersOutput(v **Sea return nil } +type awsRestjson1_deserializeOpSearchSecurityProfiles struct { +} + +func (*awsRestjson1_deserializeOpSearchSecurityProfiles) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpSearchSecurityProfiles) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorSearchSecurityProfiles(response, &metadata) + } + output := &SearchSecurityProfilesOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentSearchSecurityProfilesOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorSearchSecurityProfiles(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("InternalServiceException", errorCode): + return awsRestjson1_deserializeErrorInternalServiceException(response, errorBody) + + case strings.EqualFold("InvalidParameterException", errorCode): + return awsRestjson1_deserializeErrorInvalidParameterException(response, errorBody) + + case strings.EqualFold("InvalidRequestException", errorCode): + return awsRestjson1_deserializeErrorInvalidRequestException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentSearchSecurityProfilesOutput(v **SearchSecurityProfilesOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *SearchSecurityProfilesOutput + if *v == nil { + sv = &SearchSecurityProfilesOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "ApproximateTotalCount": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected ApproximateTotalCount to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.ApproximateTotalCount = ptr.Int64(i64) + } + + case "NextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected NextToken2500 to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + case "SecurityProfiles": + if err := awsRestjson1_deserializeDocumentSecurityProfilesSearchSummaryList(&sv.SecurityProfiles, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpSearchUsers struct { } @@ -28755,6 +28936,121 @@ func awsRestjson1_deserializeDocumentSecurityProfileIds(v *[]string, value inter return nil } +func awsRestjson1_deserializeDocumentSecurityProfileSearchSummary(v **types.SecurityProfileSearchSummary, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.SecurityProfileSearchSummary + if *v == nil { + sv = &types.SecurityProfileSearchSummary{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Arn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ARN to be of type string, got %T instead", value) + } + sv.Arn = ptr.String(jtv) + } + + case "Description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected SecurityProfileDescription to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "Id": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected SecurityProfileId to be of type string, got %T instead", value) + } + sv.Id = ptr.String(jtv) + } + + case "OrganizationResourceId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InstanceId to be of type string, got %T instead", value) + } + sv.OrganizationResourceId = ptr.String(jtv) + } + + case "SecurityProfileName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected SecurityProfileName to be of type string, got %T instead", value) + } + sv.SecurityProfileName = ptr.String(jtv) + } + + case "Tags": + if err := awsRestjson1_deserializeDocumentTagMap(&sv.Tags, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentSecurityProfilesSearchSummaryList(v *[]types.SecurityProfileSearchSummary, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.SecurityProfileSearchSummary + if *v == nil { + cv = []types.SecurityProfileSearchSummary{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.SecurityProfileSearchSummary + destAddr := &col + if err := awsRestjson1_deserializeDocumentSecurityProfileSearchSummary(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentSecurityProfileSummary(v **types.SecurityProfileSummary, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/connect/doc.go b/service/connect/doc.go index 1f94b81e2b9..26249391e52 100644 --- a/service/connect/doc.go +++ b/service/connect/doc.go @@ -16,6 +16,6 @@ // an Amazon Web Services service by using an endpoint. For a list of Amazon // Connect endpoints, see Amazon Connect Endpoints // (https://docs.aws.amazon.com/general/latest/gr/connect_region.html). Working -// with contact flows? Check out the Amazon Connect Flow language +// with flows? Check out the Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). package connect diff --git a/service/connect/generated.json b/service/connect/generated.json index 553a0c0545b..aa351b5fc43 100644 --- a/service/connect/generated.json +++ b/service/connect/generated.json @@ -112,6 +112,7 @@ "api_op_ReleasePhoneNumber.go", "api_op_ResumeContactRecording.go", "api_op_SearchAvailablePhoneNumbers.go", + "api_op_SearchSecurityProfiles.go", "api_op_SearchUsers.go", "api_op_SearchVocabularies.go", "api_op_StartChatContact.go", diff --git a/service/connect/serializers.go b/service/connect/serializers.go index 2debb7a0dce..bdfaf29ea16 100644 --- a/service/connect/serializers.go +++ b/service/connect/serializers.go @@ -8104,6 +8104,98 @@ func awsRestjson1_serializeOpDocumentSearchAvailablePhoneNumbersInput(v *SearchA return nil } +type awsRestjson1_serializeOpSearchSecurityProfiles struct { +} + +func (*awsRestjson1_serializeOpSearchSecurityProfiles) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpSearchSecurityProfiles) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*SearchSecurityProfilesInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/search-security-profiles") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "POST" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentSearchSecurityProfilesInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsSearchSecurityProfilesInput(v *SearchSecurityProfilesInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + return nil +} + +func awsRestjson1_serializeOpDocumentSearchSecurityProfilesInput(v *SearchSecurityProfilesInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.InstanceId != nil { + ok := object.Key("InstanceId") + ok.String(*v.InstanceId) + } + + if v.MaxResults != 0 { + ok := object.Key("MaxResults") + ok.Integer(v.MaxResults) + } + + if v.NextToken != nil { + ok := object.Key("NextToken") + ok.String(*v.NextToken) + } + + if v.SearchCriteria != nil { + ok := object.Key("SearchCriteria") + if err := awsRestjson1_serializeDocumentSecurityProfileSearchCriteria(v.SearchCriteria, ok); err != nil { + return err + } + } + + if v.SearchFilter != nil { + ok := object.Key("SearchFilter") + if err := awsRestjson1_serializeDocumentSecurityProfilesSearchFilter(v.SearchFilter, ok); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpSearchUsers struct { } @@ -13339,6 +13431,61 @@ func awsRestjson1_serializeDocumentSecurityProfileIds(v []string, value smithyjs return nil } +func awsRestjson1_serializeDocumentSecurityProfileSearchConditionList(v []types.SecurityProfileSearchCriteria, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentSecurityProfileSearchCriteria(&v[i], av); err != nil { + return err + } + } + return nil +} + +func awsRestjson1_serializeDocumentSecurityProfileSearchCriteria(v *types.SecurityProfileSearchCriteria, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.AndConditions != nil { + ok := object.Key("AndConditions") + if err := awsRestjson1_serializeDocumentSecurityProfileSearchConditionList(v.AndConditions, ok); err != nil { + return err + } + } + + if v.OrConditions != nil { + ok := object.Key("OrConditions") + if err := awsRestjson1_serializeDocumentSecurityProfileSearchConditionList(v.OrConditions, ok); err != nil { + return err + } + } + + if v.StringCondition != nil { + ok := object.Key("StringCondition") + if err := awsRestjson1_serializeDocumentStringCondition(v.StringCondition, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentSecurityProfilesSearchFilter(v *types.SecurityProfilesSearchFilter, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.TagFilter != nil { + ok := object.Key("TagFilter") + if err := awsRestjson1_serializeDocumentControlPlaneTagFilter(v.TagFilter, ok); err != nil { + return err + } + } + + return nil +} + func awsRestjson1_serializeDocumentSingleSelectOptions(v []string, value smithyjson.Value) error { array := value.Array() defer array.Close() diff --git a/service/connect/types/errors.go b/service/connect/types/errors.go index 4594e00da6a..335b79ea395 100644 --- a/service/connect/types/errors.go +++ b/service/connect/types/errors.go @@ -26,7 +26,7 @@ func (e *AccessDeniedException) ErrorMessage() string { func (e *AccessDeniedException) ErrorCode() string { return "AccessDeniedException" } func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } -// The contact flow has not been published. +// The flow has not been published. type ContactFlowNotPublishedException struct { Message *string @@ -142,7 +142,7 @@ func (e *InternalServiceException) ErrorMessage() string { func (e *InternalServiceException) ErrorCode() string { return "InternalServiceException" } func (e *InternalServiceException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer } -// The contact flow is not valid. +// The flow is not valid. type InvalidContactFlowException struct { Message *string @@ -266,6 +266,7 @@ func (e *OutboundContactNotPermittedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } +// The property is not valid. type PropertyValidationException struct { Message *string diff --git a/service/connect/types/types.go b/service/connect/types/types.go index 09ac893e63c..873ee0537d6 100644 --- a/service/connect/types/types.go +++ b/service/connect/types/types.go @@ -70,7 +70,8 @@ type AgentStatus struct { // The state of the agent status. State AgentStatusState - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string // The type of agent status. @@ -221,7 +222,8 @@ type ClaimedPhoneNumberSummary struct { // The type of phone number. PhoneNumberType PhoneNumberType - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string // The Amazon Resource Name (ARN) for Amazon Connect instances that phone numbers @@ -298,32 +300,33 @@ type ContactFilter struct { noSmithyDocumentSerde } -// Contains information about a contact flow. +// Contains information about a flow. type ContactFlow struct { - // The Amazon Resource Name (ARN) of the contact flow. + // The Amazon Resource Name (ARN) of the flow. Arn *string - // The content of the contact flow. + // The content of the flow. Content *string - // The description of the contact flow. + // The description of the flow. Description *string - // The identifier of the contact flow. + // The identifier of the flow. Id *string - // The name of the contact flow. + // The name of the flow. Name *string - // The type of contact flow. + // The type of flow. State ContactFlowState - // One or more tags. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string - // The type of the contact flow. For descriptions of the available types, see - // Choose a Contact Flow Type + // The type of the flow. For descriptions of the available types, see Choose a flow + // type // (https://docs.aws.amazon.com/connect/latest/adminguide/create-contact-flow.html#contact-flow-types) // in the Amazon Connect Administrator Guide. Type ContactFlowType @@ -331,72 +334,73 @@ type ContactFlow struct { noSmithyDocumentSerde } -// Contains information about a contact flow module. +// Contains information about a flow module. type ContactFlowModule struct { // The Amazon Resource Name (ARN). Arn *string - // The content of the contact flow module. + // The content of the flow module. Content *string - // The description of the contact flow module. + // The description of the flow module. Description *string - // The identifier of the contact flow module. + // The identifier of the flow module. Id *string - // The name of the contact flow module. + // The name of the flow module. Name *string - // The type of contact flow module. + // The type of flow module. State ContactFlowModuleState - // The status of the contact flow module. + // The status of the flow module. Status ContactFlowModuleStatus - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde } -// Contains summary information about a contact flow. +// Contains summary information about a flow. type ContactFlowModuleSummary struct { - // The Amazon Resource Name (ARN) of the contact flow module. + // The Amazon Resource Name (ARN) of the flow module. Arn *string - // The identifier of the contact flow module. + // The identifier of the flow module. Id *string - // The name of the contact flow module. + // The name of the flow module. Name *string - // The type of contact flow module. + // The type of flow module. State ContactFlowModuleState noSmithyDocumentSerde } -// Contains summary information about a contact flow. You can also create and -// update contact flows using the Amazon Connect Flow language +// Contains summary information about a flow. You can also create and update flows +// using the Amazon Connect Flow language // (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html). type ContactFlowSummary struct { - // The Amazon Resource Name (ARN) of the contact flow. + // The Amazon Resource Name (ARN) of the flow. Arn *string - // The type of contact flow. + // The type of flow. ContactFlowState ContactFlowState - // The type of contact flow. + // The type of flow. ContactFlowType ContactFlowType - // The identifier of the contact flow. + // The identifier of the flow. Id *string - // The name of the contact flow. + // The name of the flow. Name *string noSmithyDocumentSerde @@ -596,7 +600,8 @@ type HierarchyGroup struct { // The name of the hierarchy group. Name *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde @@ -814,7 +819,8 @@ type HoursOfOperation struct { // The name for the hours of operation. Name *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string // The time zone for the hours of operation. @@ -1301,7 +1307,8 @@ type Queue struct { // The status of the queue. Status QueueStatus - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde @@ -1319,11 +1326,11 @@ type QueueInfo struct { noSmithyDocumentSerde } -// Contains information about a queue for a quick connect. The contact flow must be -// of type Transfer to Queue. +// Contains information about a queue for a quick connect. The flow must be of type +// Transfer to Queue. type QueueQuickConnectConfig struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string @@ -1384,7 +1391,8 @@ type QuickConnect struct { // The identifier for the quick connect. QuickConnectId *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde @@ -1565,7 +1573,8 @@ type RoutingProfile struct { // The identifier of the routing profile. RoutingProfileId *string - // One or more tags. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde @@ -1737,12 +1746,70 @@ type SecurityProfile struct { // The name for the security profile. SecurityProfileName *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde } +// The search criteria to be used to return security profiles. +type SecurityProfileSearchCriteria struct { + + // A list of conditions which would be applied together with an AND condition. + AndConditions []SecurityProfileSearchCriteria + + // A list of conditions which would be applied together with an OR condition. + OrConditions []SecurityProfileSearchCriteria + + // A leaf node condition which can be used to specify a string condition, for + // example, username = 'abc'. + StringCondition *StringCondition + + noSmithyDocumentSerde +} + +// Information about the returned security profiles. +type SecurityProfileSearchSummary struct { + + // The Amazon Resource Name (ARN) of the security profile. + Arn *string + + // The description of the security profile. + Description *string + + // The identifier of the security profile. + Id *string + + // The organization resource identifier. + OrganizationResourceId *string + + // The name of the security profile. + SecurityProfileName *string + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]string + + noSmithyDocumentSerde +} + +// Filters to be applied to search results. +type SecurityProfilesSearchFilter struct { + + // An object that can be used to specify Tag conditions inside the SearchFilter. + // This accepts an OR of AND (List of List) input where: + // + // * Top level list + // specifies conditions that need to be applied with OR operator + // + // * Inner list + // specifies conditions that need to be applied with AND operator. + TagFilter *ControlPlaneTagFilter + + noSmithyDocumentSerde +} + // Contains information about a security profile. type SecurityProfileSummary struct { @@ -2074,7 +2141,7 @@ type UserPhoneConfig struct { // The contact flow must be of type Transfer to Agent. type UserQuickConnectConfig struct { - // The identifier of the contact flow. + // The identifier of the flow. // // This member is required. ContactFlowId *string @@ -2160,7 +2227,8 @@ type UserSearchSummary struct { // The identifiers of the user's security profiles. SecurityProfileIds []string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string // The name of the user. @@ -2229,7 +2297,8 @@ type Vocabulary struct { // The reason why the custom vocabulary was not created. FailureReason *string - // The tags used to organize, track, or control access for this resource. + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. Tags map[string]string noSmithyDocumentSerde diff --git a/service/connect/validators.go b/service/connect/validators.go index 2d7963d3a3d..39e557dceff 100644 --- a/service/connect/validators.go +++ b/service/connect/validators.go @@ -2050,6 +2050,26 @@ func (m *validateOpSearchAvailablePhoneNumbers) HandleInitialize(ctx context.Con return next.HandleInitialize(ctx, in) } +type validateOpSearchSecurityProfiles struct { +} + +func (*validateOpSearchSecurityProfiles) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpSearchSecurityProfiles) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*SearchSecurityProfilesInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpSearchSecurityProfilesInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpSearchVocabularies struct { } @@ -3378,6 +3398,10 @@ func addOpSearchAvailablePhoneNumbersValidationMiddleware(stack *middleware.Stac return stack.Initialize.Add(&validateOpSearchAvailablePhoneNumbers{}, middleware.After) } +func addOpSearchSecurityProfilesValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpSearchSecurityProfiles{}, middleware.After) +} + func addOpSearchVocabulariesValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpSearchVocabularies{}, middleware.After) } @@ -6015,6 +6039,21 @@ func validateOpSearchAvailablePhoneNumbersInput(v *SearchAvailablePhoneNumbersIn } } +func validateOpSearchSecurityProfilesInput(v *SearchSecurityProfilesInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "SearchSecurityProfilesInput"} + if v.InstanceId == nil { + invalidParams.Add(smithy.NewErrParamRequired("InstanceId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpSearchVocabulariesInput(v *SearchVocabulariesInput) error { if v == nil { return nil diff --git a/service/ivschat/api_op_CreateRoom.go b/service/ivschat/api_op_CreateRoom.go index 86464f4139f..48598067d73 100644 --- a/service/ivschat/api_op_CreateRoom.go +++ b/service/ivschat/api_op_CreateRoom.go @@ -46,7 +46,11 @@ type CreateRoomInput struct { Name *string // Tags to attach to the resource. Array of maps, each of the form string:string - // (key:value). + // (key:value). See Tagging AWS Resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) for details, + // including restrictions that apply to tags and "Tag naming limits and + // requirements"; Amazon IVS Chat has no constraints beyond what is documented + // there. Tags map[string]string noSmithyDocumentSerde diff --git a/service/ivschat/api_op_ListTagsForResource.go b/service/ivschat/api_op_ListTagsForResource.go index 44fa0b4a6bf..e8e8618347f 100644 --- a/service/ivschat/api_op_ListTagsForResource.go +++ b/service/ivschat/api_op_ListTagsForResource.go @@ -38,8 +38,7 @@ type ListTagsForResourceInput struct { type ListTagsForResourceOutput struct { - // Tags to attach to the resource. Array of maps, each of the form string:string - // (key:value). + // Tags attached to the resource, from the request. // // This member is required. Tags map[string]string diff --git a/service/ivschat/api_op_TagResource.go b/service/ivschat/api_op_TagResource.go index d7642392738..2e960257ea5 100644 --- a/service/ivschat/api_op_TagResource.go +++ b/service/ivschat/api_op_TagResource.go @@ -33,7 +33,11 @@ type TagResourceInput struct { // This member is required. ResourceArn *string - // Array of tags to be added or updated. + // Array of tags to be added or updated. See Tagging AWS Resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) for details, + // including restrictions that apply to tags and "Tag naming limits and + // requirements"; Amazon IVS Chat has no constraints beyond what is documented + // there. // // This member is required. Tags map[string]string diff --git a/service/ivschat/api_op_UntagResource.go b/service/ivschat/api_op_UntagResource.go index ee0a70b0ced..5688a25e458 100644 --- a/service/ivschat/api_op_UntagResource.go +++ b/service/ivschat/api_op_UntagResource.go @@ -33,7 +33,11 @@ type UntagResourceInput struct { // This member is required. ResourceArn *string - // Array of tags to be removed. + // Array of tags to be removed. See Tagging AWS Resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) for details, + // including restrictions that apply to tags and "Tag naming limits and + // requirements"; Amazon IVS Chat has no constraints beyond what is documented + // there. // // This member is required. TagKeys []string diff --git a/service/ivschat/doc.go b/service/ivschat/doc.go index 452c517f139..33d499f88c6 100644 --- a/service/ivschat/doc.go +++ b/service/ivschat/doc.go @@ -27,7 +27,21 @@ // through which clients connect to and exchange chat messages. See the Room // endpoints for more information. // -// API Access Security Your Amazon IVS Chat +// Tagging A tag is a metadata label that you +// assign to an AWS resource. A tag comprises a key and a value, both set by you. +// For example, you might set a tag as topic:nature to label a particular video +// category. See Tagging AWS Resources +// (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) for more +// information, including restrictions that apply to tags and "Tag naming limits +// and requirements"; Amazon IVS Chat has no service-specific constraints beyond +// what is documented there. Tags can help you identify and organize your AWS +// resources. For example, you can use the same tag for different resources to +// indicate that they are related. You can also use tags to manage access (see +// Access Tags +// (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)). The Amazon +// IVS Chat API has these tag-related endpoints: TagResource, UntagResource, and +// ListTagsForResource. The following resource supports tagging: Room. At most 50 +// tags can be applied to a resource. API Access Security Your Amazon IVS Chat // applications (service applications and clients) must be authenticated and // authorized to access Amazon IVS Chat resources. Note the differences between // these concepts: diff --git a/service/ivschat/types/types.go b/service/ivschat/types/types.go index d9fc37d0408..0c4c52bf907 100644 --- a/service/ivschat/types/types.go +++ b/service/ivschat/types/types.go @@ -46,7 +46,11 @@ type RoomSummary struct { // Room name. The value does not need to be unique. Name *string - // Tags attached to the resource. + // Tags attached to the resource. See Tagging AWS Resources + // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) for details, + // including restrictions that apply to tags and "Tag naming limits and + // requirements"; Amazon IVS Chat has no constraints beyond what is documented + // there. Tags map[string]string // Time of the room’s last update. This is an ISO 8601 timestamp; note that this is diff --git a/service/kendra/api_op_CreateDataSource.go b/service/kendra/api_op_CreateDataSource.go index 62566cd32c8..e2f836255a7 100644 --- a/service/kendra/api_op_CreateDataSource.go +++ b/service/kendra/api_op_CreateDataSource.go @@ -12,12 +12,12 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a data source that you want to use with an Amazon Kendra index. You -// specify a name, data source connector type and description for your data source. -// You also specify configuration information for the data source connector. -// CreateDataSource is a synchronous operation. The operation returns 200 if the -// data source was successfully created. Otherwise, an exception is raised. Amazon -// S3 and custom +// Creates a data source connector that you want to use with an Amazon Kendra +// index. You specify a name, data source connector type and description for your +// data source. You also specify configuration information for the data source +// connector. CreateDataSource is a synchronous operation. The operation returns +// 200 if the data source was successfully created. Otherwise, an exception is +// raised. Amazon S3 and custom // (https://docs.aws.amazon.com/kendra/latest/dg/data-source-custom.html) data // sources are the only supported data sources in the Amazon Web Services GovCloud // (US-West) region. For an example of creating an index and data source using the @@ -87,11 +87,11 @@ type CreateDataSourceInput struct { LanguageCode *string // The Amazon Resource Name (ARN) of a role with permission to access the data - // source connector. For more information, see IAM Roles for Amazon Kendra - // (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). You can't specify - // the RoleArn parameter when the Type parameter is set to CUSTOM. If you do, you - // receive a ValidationException exception. The RoleArn parameter is required for - // all other data sources. + // source and required resources. For more information, see IAM roles for Amazon + // Kendra (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). You can't + // specify the RoleArn parameter when the Type parameter is set to CUSTOM. If you + // do, you receive a ValidationException exception. The RoleArn parameter is + // required for all other data sources. RoleArn *string // Sets the frequency for Amazon Kendra to check the documents in your data source diff --git a/service/kendra/api_op_DeleteDataSource.go b/service/kendra/api_op_DeleteDataSource.go index 608f5cc57e6..fbdfe7c2a70 100644 --- a/service/kendra/api_op_DeleteDataSource.go +++ b/service/kendra/api_op_DeleteDataSource.go @@ -10,10 +10,10 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Deletes an Amazon Kendra data source. An exception is not thrown if the data -// source is already being deleted. While the data source is being deleted, the -// Status field returned by a call to the DescribeDataSource API is set to -// DELETING. For more information, see Deleting Data Sources +// Deletes an Amazon Kendra data source connector. An exception is not thrown if +// the data source is already being deleted. While the data source is being +// deleted, the Status field returned by a call to the DescribeDataSource API is +// set to DELETING. For more information, see Deleting Data Sources // (https://docs.aws.amazon.com/kendra/latest/dg/delete-data-source.html). func (c *Client) DeleteDataSource(ctx context.Context, params *DeleteDataSourceInput, optFns ...func(*Options)) (*DeleteDataSourceOutput, error) { if params == nil { @@ -32,12 +32,12 @@ func (c *Client) DeleteDataSource(ctx context.Context, params *DeleteDataSourceI type DeleteDataSourceInput struct { - // The identifier of the data source you want to delete. + // The identifier of the data source connector you want to delete. // // This member is required. Id *string - // The identifier of the index used with the data source. + // The identifier of the index used with the data source connector. // // This member is required. IndexId *string diff --git a/service/kendra/api_op_DescribeDataSource.go b/service/kendra/api_op_DescribeDataSource.go index bdc6dadddd4..60e3434b09f 100644 --- a/service/kendra/api_op_DescribeDataSource.go +++ b/service/kendra/api_op_DescribeDataSource.go @@ -12,7 +12,7 @@ import ( "time" ) -// Gets information about an Amazon Kendra data source. +// Gets information about an Amazon Kendra data source connector. func (c *Client) DescribeDataSource(ctx context.Context, params *DescribeDataSourceInput, optFns ...func(*Options)) (*DescribeDataSourceOutput, error) { if params == nil { params = &DescribeDataSourceInput{} @@ -30,12 +30,12 @@ func (c *Client) DescribeDataSource(ctx context.Context, params *DescribeDataSou type DescribeDataSourceInput struct { - // The identifier of the data source. + // The identifier of the data source connector. // // This member is required. Id *string - // The identifier of the index used with the data source. + // The identifier of the index used with the data source connector. // // This member is required. IndexId *string @@ -45,12 +45,12 @@ type DescribeDataSourceInput struct { type DescribeDataSourceOutput struct { - // Configuration details for the data source. This shows how the data source is - // configured. The configuration options for a data source depend on the data - // source provider. + // Configuration details for the data source connector. This shows how the data + // source is configured. The configuration options for a data source depend on the + // data source provider. Configuration *types.DataSourceConfiguration - // The Unix timestamp of when the data source was created. + // The Unix timestamp of when the data source connector was created. CreatedAt *time.Time // Configuration information for altering document metadata and content during the @@ -61,17 +61,17 @@ type DescribeDataSourceOutput struct { // (https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html). CustomDocumentEnrichmentConfiguration *types.CustomDocumentEnrichmentConfiguration - // The description for the data source. + // The description for the data source connector. Description *string // When the Status field value is FAILED, the ErrorMessage field contains a // description of the error that caused the data source to fail. ErrorMessage *string - // The identifier of the data source. + // The identifier of the data source connector. Id *string - // The identifier of the index that contains the data source. + // The identifier of the index used with the data source connector. IndexId *string // The code for a language. This shows a supported language for all documents in @@ -81,25 +81,25 @@ type DescribeDataSourceOutput struct { // (https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html). LanguageCode *string - // The name for the data source. + // The name for the data source connector. Name *string - // The Amazon Resource Name (ARN) of the role that enables the data source to - // access its resources. + // The Amazon Resource Name (ARN) of the role with permission to access the data + // source and required resources. RoleArn *string // The schedule for Amazon Kendra to update the index. Schedule *string - // The current status of the data source. When the status is ACTIVE the data source - // is ready to use. When the status is FAILED, the ErrorMessage field contains the - // reason that the data source failed. + // The current status of the data source connector. When the status is ACTIVE the + // data source is ready to use. When the status is FAILED, the ErrorMessage field + // contains the reason that the data source failed. Status types.DataSourceStatus - // The type of the data source. + // The type of the data source. For example, SHAREPOINT. Type types.DataSourceType - // The Unix timestamp of when the data source was last updated. + // The Unix timestamp of when the data source connector was last updated. UpdatedAt *time.Time // Configuration information for an Amazon Virtual Private Cloud to connect to your diff --git a/service/kendra/api_op_ListDataSourceSyncJobs.go b/service/kendra/api_op_ListDataSourceSyncJobs.go index 8f80eced445..c77a1756694 100644 --- a/service/kendra/api_op_ListDataSourceSyncJobs.go +++ b/service/kendra/api_op_ListDataSourceSyncJobs.go @@ -12,7 +12,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Gets statistics about synchronizing Amazon Kendra with a data source. +// Gets statistics about synchronizing a data source connector. func (c *Client) ListDataSourceSyncJobs(ctx context.Context, params *ListDataSourceSyncJobsInput, optFns ...func(*Options)) (*ListDataSourceSyncJobsOutput, error) { if params == nil { params = &ListDataSourceSyncJobsInput{} @@ -30,12 +30,12 @@ func (c *Client) ListDataSourceSyncJobs(ctx context.Context, params *ListDataSou type ListDataSourceSyncJobsInput struct { - // The identifier of the data source. + // The identifier of the data source connector. // // This member is required. Id *string - // The identifier of the index used with the data source. + // The identifier of the index used with the data source connector. // // This member is required. IndexId *string @@ -53,8 +53,8 @@ type ListDataSourceSyncJobsInput struct { // jobs between the specified dates. StartTimeFilter *types.TimeRange - // When specified, only returns synchronization jobs with the Status field equal to - // the specified status. + // Only returns synchronization jobs with the Status field equal to the specified + // status. StatusFilter types.DataSourceSyncJobStatus noSmithyDocumentSerde @@ -62,7 +62,7 @@ type ListDataSourceSyncJobsInput struct { type ListDataSourceSyncJobsOutput struct { - // A history of synchronization jobs for the data source. + // A history of synchronization jobs for the data source connector. History []types.DataSourceSyncJob // If the response is truncated, Amazon Kendra returns this token that you can use diff --git a/service/kendra/api_op_ListDataSources.go b/service/kendra/api_op_ListDataSources.go index be75dcce8d7..45d3c87ac75 100644 --- a/service/kendra/api_op_ListDataSources.go +++ b/service/kendra/api_op_ListDataSources.go @@ -12,7 +12,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists the data sources that you have created. +// Lists the data source connectors that you have created. func (c *Client) ListDataSources(ctx context.Context, params *ListDataSourcesInput, optFns ...func(*Options)) (*ListDataSourcesOutput, error) { if params == nil { params = &ListDataSourcesInput{} @@ -30,17 +30,17 @@ func (c *Client) ListDataSources(ctx context.Context, params *ListDataSourcesInp type ListDataSourcesInput struct { - // The identifier of the index used with one or more data sources. + // The identifier of the index used with one or more data source connectors. // // This member is required. IndexId *string - // The maximum number of data sources to return. + // The maximum number of data source connectors to return. MaxResults *int32 // If the previous response was incomplete (because there is more data to // retrieve), Amazon Kendra returns a pagination token in the response. You can use - // this pagination token to retrieve the next set of data sources + // this pagination token to retrieve the next set of data source connectors // (DataSourceSummaryItems). NextToken *string @@ -50,10 +50,10 @@ type ListDataSourcesInput struct { type ListDataSourcesOutput struct { // If the response is truncated, Amazon Kendra returns this token that you can use - // in the subsequent request to retrieve the next set of data sources. + // in the subsequent request to retrieve the next set of data source connectors. NextToken *string - // An array of summary information for one or more data sources. + // An array of summary information for one or more data source connector. SummaryItems []types.DataSourceSummary // Metadata pertaining to the operation's result. @@ -135,7 +135,7 @@ var _ ListDataSourcesAPIClient = (*Client)(nil) // ListDataSourcesPaginatorOptions is the paginator options for ListDataSources type ListDataSourcesPaginatorOptions struct { - // The maximum number of data sources to return. + // The maximum number of data source connectors to return. Limit int32 // Set to true if pagination should stop if the service returns a pagination token diff --git a/service/kendra/api_op_StartDataSourceSyncJob.go b/service/kendra/api_op_StartDataSourceSyncJob.go index e3662c5fccb..74988a59110 100644 --- a/service/kendra/api_op_StartDataSourceSyncJob.go +++ b/service/kendra/api_op_StartDataSourceSyncJob.go @@ -10,8 +10,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Starts a synchronization job for a data source. If a synchronization job is -// already in progress, Amazon Kendra returns a ResourceInUseException exception. +// Starts a synchronization job for a data source connector. If a synchronization +// job is already in progress, Amazon Kendra returns a ResourceInUseException +// exception. func (c *Client) StartDataSourceSyncJob(ctx context.Context, params *StartDataSourceSyncJobInput, optFns ...func(*Options)) (*StartDataSourceSyncJobOutput, error) { if params == nil { params = &StartDataSourceSyncJobInput{} @@ -29,12 +30,12 @@ func (c *Client) StartDataSourceSyncJob(ctx context.Context, params *StartDataSo type StartDataSourceSyncJobInput struct { - // The identifier of the data source to synchronize. + // The identifier of the data source connector to synchronize. // // This member is required. Id *string - // The identifier of the index that contains the data source. + // The identifier of the index used with the data source connector. // // This member is required. IndexId *string diff --git a/service/kendra/api_op_StopDataSourceSyncJob.go b/service/kendra/api_op_StopDataSourceSyncJob.go index 6b17157f0af..482d17a300f 100644 --- a/service/kendra/api_op_StopDataSourceSyncJob.go +++ b/service/kendra/api_op_StopDataSourceSyncJob.go @@ -29,12 +29,13 @@ func (c *Client) StopDataSourceSyncJob(ctx context.Context, params *StopDataSour type StopDataSourceSyncJobInput struct { - // The identifier of the data source for which to stop the synchronization jobs. + // The identifier of the data source connector for which to stop the + // synchronization jobs. // // This member is required. Id *string - // The identifier of the index that contains the data source. + // The identifier of the index used with the data source connector. // // This member is required. IndexId *string diff --git a/service/kendra/api_op_UpdateDataSource.go b/service/kendra/api_op_UpdateDataSource.go index de3364022f2..ae26163b79f 100644 --- a/service/kendra/api_op_UpdateDataSource.go +++ b/service/kendra/api_op_UpdateDataSource.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Updates an existing Amazon Kendra data source. +// Updates an existing Amazon Kendra data source connector. func (c *Client) UpdateDataSource(ctx context.Context, params *UpdateDataSourceInput, optFns ...func(*Options)) (*UpdateDataSourceOutput, error) { if params == nil { params = &UpdateDataSourceInput{} @@ -29,7 +29,7 @@ func (c *Client) UpdateDataSource(ctx context.Context, params *UpdateDataSourceI type UpdateDataSourceInput struct { - // The identifier of the data source you want to update. + // The identifier of the data source connector you want to update. // // This member is required. Id *string @@ -64,8 +64,8 @@ type UpdateDataSourceInput struct { Name *string // The Amazon Resource Name (ARN) of a role with permission to access the data - // source. For more information, see IAM Roles for Amazon Kendra - // (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). + // source and required resources. For more information, see IAM roles for Amazon + // Kendra (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). RoleArn *string // The sync schedule you want to update for the data source connector. diff --git a/service/kendra/deserializers.go b/service/kendra/deserializers.go index a8fa829c53f..cc4856989e9 100644 --- a/service/kendra/deserializers.go +++ b/service/kendra/deserializers.go @@ -9069,6 +9069,15 @@ func awsAwsjson11_deserializeDocumentConfluenceConfiguration(v **types.Confluenc return err } + case "AuthenticationType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ConfluenceAuthenticationType to be of type string, got %T instead", value) + } + sv.AuthenticationType = types.ConfluenceAuthenticationType(jtv) + } + case "BlogConfiguration": if err := awsAwsjson11_deserializeDocumentConfluenceBlogConfiguration(&sv.BlogConfiguration, value); err != nil { return err diff --git a/service/kendra/serializers.go b/service/kendra/serializers.go index ad7d12c73dd..33c2d5fb00d 100644 --- a/service/kendra/serializers.go +++ b/service/kendra/serializers.go @@ -3876,6 +3876,11 @@ func awsAwsjson11_serializeDocumentConfluenceConfiguration(v *types.ConfluenceCo } } + if len(v.AuthenticationType) > 0 { + ok := object.Key("AuthenticationType") + ok.String(string(v.AuthenticationType)) + } + if v.BlogConfiguration != nil { ok := object.Key("BlogConfiguration") if err := awsAwsjson11_serializeDocumentConfluenceBlogConfiguration(v.BlogConfiguration, ok); err != nil { diff --git a/service/kendra/types/enums.go b/service/kendra/types/enums.go index e19e519f07e..e04c61c045b 100644 --- a/service/kendra/types/enums.go +++ b/service/kendra/types/enums.go @@ -112,6 +112,24 @@ func (ConfluenceAttachmentFieldName) Values() []ConfluenceAttachmentFieldName { } } +type ConfluenceAuthenticationType string + +// Enum values for ConfluenceAuthenticationType +const ( + ConfluenceAuthenticationTypeHttpBasic ConfluenceAuthenticationType = "HTTP_BASIC" + ConfluenceAuthenticationTypePat ConfluenceAuthenticationType = "PAT" +) + +// Values returns all known values for ConfluenceAuthenticationType. Note that this +// can be expanded in the future, and so it is only as up to date as the client. +// The ordering of this slice is not guaranteed to be stable across updates. +func (ConfluenceAuthenticationType) Values() []ConfluenceAuthenticationType { + return []ConfluenceAuthenticationType{ + "HTTP_BASIC", + "PAT", + } +} + type ConfluenceBlogFieldName string // Enum values for ConfluenceBlogFieldName diff --git a/service/kendra/types/types.go b/service/kendra/types/types.go index 169ad2ef68b..0f2627b5746 100644 --- a/service/kendra/types/types.go +++ b/service/kendra/types/types.go @@ -105,7 +105,11 @@ type AlfrescoConfiguration struct { SiteUrl *string // The path to the SSL certificate stored in an Amazon S3 bucket. You use this to - // connect to Alfresco. + // connect to Alfresco if you require a secure SSL connection. You can simply + // generate a self-signed X509 certificate on any computer using OpenSSL. For an + // example of using OpenSSL to create an X509 certificate, see Create and sign an + // X509 certificate + // (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https-ssl.html). // // This member is required. SslCertificateS3Path *S3Path @@ -577,9 +581,12 @@ type ConfluenceConfiguration struct { // The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the // user name and password required to connect to the Confluence instance. If you - // use Confluence cloud, you use a generated API token as the password. For more + // use Confluence Cloud, you use a generated API token as the password. For more // information, see Using a Confluence data source - // (https://docs.aws.amazon.com/kendra/latest/dg/data-source-confluence.html). + // (https://docs.aws.amazon.com/kendra/latest/dg/data-source-confluence.html). You + // can also provide authentication credentials in the form of a personal access + // token. For more information, see Authentication for a Confluence data source + // (https://docs.aws.amazon.com/kendra/latest/dg/data-source-confluence.html#confluence-authentication). // // This member is required. SecretArn *string @@ -600,6 +607,11 @@ type ConfluenceConfiguration struct { // pages. AttachmentConfiguration *ConfluenceAttachmentConfiguration + // Whether you want to connect to Confluence using basic authentication of user + // name and password, or a personal access token. You can use a personal access + // token for Confluence Server. + AuthenticationType ConfluenceAuthenticationType + // Configuration information for indexing Confluence blogs. BlogConfiguration *ConfluenceBlogConfiguration @@ -2442,7 +2454,11 @@ type OnPremiseConfiguration struct { OrganizationName *string // The path to the SSL certificate stored in an Amazon S3 bucket. You use this to - // connect to GitHub. + // connect to GitHub if you require a secure SSL connection. You can simply + // generate a self-signed X509 certificate on any computer using OpenSSL. For an + // example of using OpenSSL to create an X509 certificate, see Create and sign an + // X509 certificate + // (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https-ssl.html). // // This member is required. SslCertificateS3Path *S3Path @@ -2614,7 +2630,8 @@ type QuerySuggestionsBlockListSummary struct { // Provides the configuration information to connect to Quip as your data source. type QuipConfiguration struct { - // The Quip site domain. + // The Quip site domain. For example, https://quip-company.quipdomain.com/browse. + // The domain in this example is "quipdomain". // // This member is required. Domain *string @@ -2654,9 +2671,10 @@ type QuipConfiguration struct { // precedence, and the file isn't included in the index. ExclusionPatterns []string - // The identifiers of the Quip folders you want to index. You can find in your - // browser URL when you access your folder in Quip. For example, - // https://quip-company.com/zlLuOVNSarTL/folder-name. + // The identifiers of the Quip folders you want to index. You can find the folder + // ID in your browser URL when you access your folder in Quip. For example, + // https://quip-company.quipdomain.com/zlLuOVNSarTL/folder-name. The folder ID in + // this example is "zlLuOVNSarTL". FolderIds []string // A list of regular expression patterns to include certain files in your Quip file @@ -3302,7 +3320,7 @@ type SharePointConfiguration struct { // This member is required. SharePointVersion SharePointVersion - // The Microsoft SharePoint site URLs for the documents you want to indext. + // The Microsoft SharePoint site URLs for the documents you want to index. // // This member is required. Urls []string @@ -3363,7 +3381,11 @@ type SharePointConfiguration struct { ProxyConfiguration *ProxyConfiguration // The path to the SSL certificate stored in an Amazon S3 bucket. You use this to - // connect to SharePoint. + // connect to SharePoint Server if you require a secure SSL connection. You can + // simply generate a self-signed X509 certificate on any computer using OpenSSL. + // For an example of using OpenSSL to create an X509 certificate, see Create and + // sign an X509 certificate + // (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https-ssl.html). SslCertificateS3Path *S3Path // TRUE to use the SharePoint change log to determine which documents require diff --git a/service/lookoutmetrics/api_op_CreateMetricSet.go b/service/lookoutmetrics/api_op_CreateMetricSet.go index 58022cd7505..3125570e170 100644 --- a/service/lookoutmetrics/api_op_CreateMetricSet.go +++ b/service/lookoutmetrics/api_op_CreateMetricSet.go @@ -59,7 +59,8 @@ type CreateMetricSetInput struct { MetricSetFrequency types.Frequency // After an interval ends, the amount of seconds that the detector waits before - // importing data. Offset is only supported for S3 and Redshift datasources. + // importing data. Offset is only supported for S3, Redshift, Athena and + // datasources. Offset int32 // A list of tags diff --git a/service/lookoutmetrics/api_op_DescribeMetricSet.go b/service/lookoutmetrics/api_op_DescribeMetricSet.go index a3a87acb0e3..937d5a06502 100644 --- a/service/lookoutmetrics/api_op_DescribeMetricSet.go +++ b/service/lookoutmetrics/api_op_DescribeMetricSet.go @@ -72,7 +72,9 @@ type DescribeMetricSetOutput struct { // Contains information about the dataset's source data. MetricSource *types.MetricSource - // The offset in seconds. Only supported for S3 and Redshift datasources. + // After an interval ends, the amount of seconds that the detector waits before + // importing data. Offset is only supported for S3, Redshift, Athena and + // datasources. Offset int32 // Contains information about the column used for tracking time in your source diff --git a/service/lookoutmetrics/api_op_GetDataQualityMetrics.go b/service/lookoutmetrics/api_op_GetDataQualityMetrics.go new file mode 100644 index 00000000000..244e2cbd970 --- /dev/null +++ b/service/lookoutmetrics/api_op_GetDataQualityMetrics.go @@ -0,0 +1,126 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package lookoutmetrics + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/lookoutmetrics/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Returns details about the requested data quality metrics. +func (c *Client) GetDataQualityMetrics(ctx context.Context, params *GetDataQualityMetricsInput, optFns ...func(*Options)) (*GetDataQualityMetricsOutput, error) { + if params == nil { + params = &GetDataQualityMetricsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "GetDataQualityMetrics", params, optFns, c.addOperationGetDataQualityMetricsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*GetDataQualityMetricsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type GetDataQualityMetricsInput struct { + + // The Amazon Resource Name (ARN) of the anomaly detector that you want to + // investigate. + // + // This member is required. + AnomalyDetectorArn *string + + // The Amazon Resource Name (ARN) of a specific data quality metric set. + MetricSetArn *string + + noSmithyDocumentSerde +} + +type GetDataQualityMetricsOutput struct { + + // A list of the data quality metrics for the AnomalyDetectorArn that you + // requested. + AnomalyDetectorDataQualityMetricList []types.AnomalyDetectorDataQualityMetric + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationGetDataQualityMetricsMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpGetDataQualityMetrics{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetDataQualityMetrics{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpGetDataQualityMetricsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetDataQualityMetrics(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opGetDataQualityMetrics(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "lookoutmetrics", + OperationName: "GetDataQualityMetrics", + } +} diff --git a/service/lookoutmetrics/api_op_UpdateMetricSet.go b/service/lookoutmetrics/api_op_UpdateMetricSet.go index f144a603372..09bc4886b06 100644 --- a/service/lookoutmetrics/api_op_UpdateMetricSet.go +++ b/service/lookoutmetrics/api_op_UpdateMetricSet.go @@ -50,7 +50,8 @@ type UpdateMetricSetInput struct { MetricSource *types.MetricSource // After an interval ends, the amount of seconds that the detector waits before - // importing data. Offset is only supported for S3 and Redshift datasources. + // importing data. Offset is only supported for S3, Redshift, Athena and + // datasources. Offset int32 // The timestamp column. diff --git a/service/lookoutmetrics/deserializers.go b/service/lookoutmetrics/deserializers.go index db193450550..645ae1acf01 100644 --- a/service/lookoutmetrics/deserializers.go +++ b/service/lookoutmetrics/deserializers.go @@ -2180,6 +2180,165 @@ func awsRestjson1_deserializeOpDocumentGetAnomalyGroupOutput(v **GetAnomalyGroup return nil } +type awsRestjson1_deserializeOpGetDataQualityMetrics struct { +} + +func (*awsRestjson1_deserializeOpGetDataQualityMetrics) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpGetDataQualityMetrics) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorGetDataQualityMetrics(response, &metadata) + } + output := &GetDataQualityMetricsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentGetDataQualityMetricsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorGetDataQualityMetrics(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("TooManyRequestsException", errorCode): + return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentGetDataQualityMetricsOutput(v **GetDataQualityMetricsOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *GetDataQualityMetricsOutput + if *v == nil { + sv = &GetDataQualityMetricsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "AnomalyDetectorDataQualityMetricList": + if err := awsRestjson1_deserializeDocumentAnomalyDetectorDataQualityMetricList(&sv.AnomalyDetectorDataQualityMetricList, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpGetFeedback struct { } @@ -5180,6 +5339,92 @@ func awsRestjson1_deserializeDocumentAnomalyDetectorConfigSummary(v **types.Anom return nil } +func awsRestjson1_deserializeDocumentAnomalyDetectorDataQualityMetric(v **types.AnomalyDetectorDataQualityMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.AnomalyDetectorDataQualityMetric + if *v == nil { + sv = &types.AnomalyDetectorDataQualityMetric{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "MetricSetDataQualityMetricList": + if err := awsRestjson1_deserializeDocumentMetricSetDataQualityMetricList(&sv.MetricSetDataQualityMetricList, value); err != nil { + return err + } + + case "StartTimestamp": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.StartTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64)) + + default: + return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value) + + } + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentAnomalyDetectorDataQualityMetricList(v *[]types.AnomalyDetectorDataQualityMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.AnomalyDetectorDataQualityMetric + if *v == nil { + cv = []types.AnomalyDetectorDataQualityMetric{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AnomalyDetectorDataQualityMetric + destAddr := &col + if err := awsRestjson1_deserializeDocumentAnomalyDetectorDataQualityMetric(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentAnomalyDetectorSummary(v **types.AnomalyDetectorSummary, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -6125,6 +6370,132 @@ func awsRestjson1_deserializeDocumentCsvFormatDescriptor(v **types.CsvFormatDesc return nil } +func awsRestjson1_deserializeDocumentDataQualityMetric(v **types.DataQualityMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.DataQualityMetric + if *v == nil { + sv = &types.DataQualityMetric{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "MetricDescription": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DataQualityMetricDescription to be of type string, got %T instead", value) + } + sv.MetricDescription = ptr.String(jtv) + } + + case "MetricType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DataQualityMetricType to be of type string, got %T instead", value) + } + sv.MetricType = types.DataQualityMetricType(jtv) + } + + case "MetricValue": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.MetricValue = ptr.Float64(f64) + + case string: + var f64 float64 + switch { + case strings.EqualFold(jtv, "NaN"): + f64 = math.NaN() + + case strings.EqualFold(jtv, "Infinity"): + f64 = math.Inf(1) + + case strings.EqualFold(jtv, "-Infinity"): + f64 = math.Inf(-1) + + default: + return fmt.Errorf("unknown JSON number value: %s", jtv) + + } + sv.MetricValue = ptr.Float64(f64) + + default: + return fmt.Errorf("expected Double to be a JSON Number, got %T instead", value) + + } + } + + case "RelatedColumnName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected RelatedColumnName to be of type string, got %T instead", value) + } + sv.RelatedColumnName = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentDataQualityMetricList(v *[]types.DataQualityMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.DataQualityMetric + if *v == nil { + cv = []types.DataQualityMetric{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.DataQualityMetric + destAddr := &col + if err := awsRestjson1_deserializeDocumentDataQualityMetric(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentDetectedCsvFormatDescriptor(v **types.DetectedCsvFormatDescriptor, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -7673,6 +8044,85 @@ func awsRestjson1_deserializeDocumentMetricNameList(v *[]string, value interface return nil } +func awsRestjson1_deserializeDocumentMetricSetDataQualityMetric(v **types.MetricSetDataQualityMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.MetricSetDataQualityMetric + if *v == nil { + sv = &types.MetricSetDataQualityMetric{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "DataQualityMetricList": + if err := awsRestjson1_deserializeDocumentDataQualityMetricList(&sv.DataQualityMetricList, value); err != nil { + return err + } + + case "MetricSetArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Arn to be of type string, got %T instead", value) + } + sv.MetricSetArn = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentMetricSetDataQualityMetricList(v *[]types.MetricSetDataQualityMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.MetricSetDataQualityMetric + if *v == nil { + cv = []types.MetricSetDataQualityMetric{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.MetricSetDataQualityMetric + destAddr := &col + if err := awsRestjson1_deserializeDocumentMetricSetDataQualityMetric(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentMetricSetSummary(v **types.MetricSetSummary, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/lookoutmetrics/generated.json b/service/lookoutmetrics/generated.json index e36b664e5e3..dda0b9ff2ea 100644 --- a/service/lookoutmetrics/generated.json +++ b/service/lookoutmetrics/generated.json @@ -22,6 +22,7 @@ "api_op_DescribeMetricSet.go", "api_op_DetectMetricSetConfig.go", "api_op_GetAnomalyGroup.go", + "api_op_GetDataQualityMetrics.go", "api_op_GetFeedback.go", "api_op_GetSampleData.go", "api_op_ListAlerts.go", diff --git a/service/lookoutmetrics/serializers.go b/service/lookoutmetrics/serializers.go index 23268f2e842..c376ef59cf7 100644 --- a/service/lookoutmetrics/serializers.go +++ b/service/lookoutmetrics/serializers.go @@ -1113,6 +1113,79 @@ func awsRestjson1_serializeOpDocumentGetAnomalyGroupInput(v *GetAnomalyGroupInpu return nil } +type awsRestjson1_serializeOpGetDataQualityMetrics struct { +} + +func (*awsRestjson1_serializeOpGetDataQualityMetrics) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpGetDataQualityMetrics) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*GetDataQualityMetricsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/GetDataQualityMetrics") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "POST" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentGetDataQualityMetricsInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsGetDataQualityMetricsInput(v *GetDataQualityMetricsInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + return nil +} + +func awsRestjson1_serializeOpDocumentGetDataQualityMetricsInput(v *GetDataQualityMetricsInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.AnomalyDetectorArn != nil { + ok := object.Key("AnomalyDetectorArn") + ok.String(*v.AnomalyDetectorArn) + } + + if v.MetricSetArn != nil { + ok := object.Key("MetricSetArn") + ok.String(*v.MetricSetArn) + } + + return nil +} + type awsRestjson1_serializeOpGetFeedback struct { } diff --git a/service/lookoutmetrics/types/enums.go b/service/lookoutmetrics/types/enums.go index b323b575803..79168c9eb59 100644 --- a/service/lookoutmetrics/types/enums.go +++ b/service/lookoutmetrics/types/enums.go @@ -176,6 +176,40 @@ func (CSVFileCompression) Values() []CSVFileCompression { } } +type DataQualityMetricType string + +// Enum values for DataQualityMetricType +const ( + DataQualityMetricTypeColumnCompleteness DataQualityMetricType = "COLUMN_COMPLETENESS" + DataQualityMetricTypeDimensionUniqueness DataQualityMetricType = "DIMENSION_UNIQUENESS" + DataQualityMetricTypeTimeSeriesCount DataQualityMetricType = "TIME_SERIES_COUNT" + DataQualityMetricTypeRowsProcessed DataQualityMetricType = "ROWS_PROCESSED" + DataQualityMetricTypeRowsPartialCompliance DataQualityMetricType = "ROWS_PARTIAL_COMPLIANCE" + DataQualityMetricTypeInvalidRowsCompliance DataQualityMetricType = "INVALID_ROWS_COMPLIANCE" + DataQualityMetricTypeBacktestTrainingDataStartTimeStamp DataQualityMetricType = "BACKTEST_TRAINING_DATA_START_TIME_STAMP" + DataQualityMetricTypeBacktestTrainingDataEndTimeStamp DataQualityMetricType = "BACKTEST_TRAINING_DATA_END_TIME_STAMP" + DataQualityMetricTypeBacktestInferenceDataStartTimeStamp DataQualityMetricType = "BACKTEST_INFERENCE_DATA_START_TIME_STAMP" + DataQualityMetricTypeBacktestInferenceDataEndTimeStamp DataQualityMetricType = "BACKTEST_INFERENCE_DATA_END_TIME_STAMP" +) + +// Values returns all known values for DataQualityMetricType. Note that this can be +// expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (DataQualityMetricType) Values() []DataQualityMetricType { + return []DataQualityMetricType{ + "COLUMN_COMPLETENESS", + "DIMENSION_UNIQUENESS", + "TIME_SERIES_COUNT", + "ROWS_PROCESSED", + "ROWS_PARTIAL_COMPLIANCE", + "INVALID_ROWS_COMPLIANCE", + "BACKTEST_TRAINING_DATA_START_TIME_STAMP", + "BACKTEST_TRAINING_DATA_END_TIME_STAMP", + "BACKTEST_INFERENCE_DATA_START_TIME_STAMP", + "BACKTEST_INFERENCE_DATA_END_TIME_STAMP", + } +} + type Frequency string // Enum values for Frequency diff --git a/service/lookoutmetrics/types/types.go b/service/lookoutmetrics/types/types.go index 47f583c2df5..8b497343d5d 100644 --- a/service/lookoutmetrics/types/types.go +++ b/service/lookoutmetrics/types/types.go @@ -124,6 +124,20 @@ type AnomalyDetectorConfigSummary struct { noSmithyDocumentSerde } +// Aggregated details about the data quality metrics collected for the +// AnomalyDetectorArn provided in the GetDataQualityMetrics object. +type AnomalyDetectorDataQualityMetric struct { + + // An array of DataQualityMetricList objects. Each object in the array contains + // information about a data quality metric. + MetricSetDataQualityMetricList []MetricSetDataQualityMetric + + // The start time for the data quality metrics collection. + StartTimestamp *time.Time + + noSmithyDocumentSerde +} + // Contains information about an an anomaly detector. type AnomalyDetectorSummary struct { @@ -388,6 +402,26 @@ type CsvFormatDescriptor struct { noSmithyDocumentSerde } +// An array that describes a data quality metric. Each DataQualityMetric object +// contains the data quality metric name, its value, a description of the metric, +// and the affected column. +type DataQualityMetric struct { + + // A description of the data quality metric. + MetricDescription *string + + // The name of the data quality metric. + MetricType DataQualityMetricType + + // The value of the data quality metric. + MetricValue *float64 + + // The column that is being monitored. + RelatedColumnName *string + + noSmithyDocumentSerde +} + // Properties of an inferred CSV format. type DetectedCsvFormatDescriptor struct { @@ -661,6 +695,19 @@ type MetricLevelImpact struct { noSmithyDocumentSerde } +// An array of DataQualityMetric objects that describes one or more data quality +// metrics. +type MetricSetDataQualityMetric struct { + + // The array of data quality metrics contained in the data quality metric set. + DataQualityMetricList []DataQualityMetric + + // The Amazon Resource Name (ARN) of the data quality metric array. + MetricSetArn *string + + noSmithyDocumentSerde +} + // Contains information about a dataset. type MetricSetSummary struct { diff --git a/service/lookoutmetrics/validators.go b/service/lookoutmetrics/validators.go index 5075a04c376..1d3a87e9d8a 100644 --- a/service/lookoutmetrics/validators.go +++ b/service/lookoutmetrics/validators.go @@ -290,6 +290,26 @@ func (m *validateOpGetAnomalyGroup) HandleInitialize(ctx context.Context, in mid return next.HandleInitialize(ctx, in) } +type validateOpGetDataQualityMetrics struct { +} + +func (*validateOpGetDataQualityMetrics) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpGetDataQualityMetrics) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*GetDataQualityMetricsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpGetDataQualityMetricsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpGetFeedback struct { } @@ -586,6 +606,10 @@ func addOpGetAnomalyGroupValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetAnomalyGroup{}, middleware.After) } +func addOpGetDataQualityMetricsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpGetDataQualityMetrics{}, middleware.After) +} + func addOpGetFeedbackValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetFeedback{}, middleware.After) } @@ -1160,6 +1184,21 @@ func validateOpGetAnomalyGroupInput(v *GetAnomalyGroupInput) error { } } +func validateOpGetDataQualityMetricsInput(v *GetDataQualityMetricsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "GetDataQualityMetricsInput"} + if v.AnomalyDetectorArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpGetFeedbackInput(v *GetFeedbackInput) error { if v == nil { return nil diff --git a/service/sagemakerruntime/internal/endpoints/endpoints.go b/service/sagemakerruntime/internal/endpoints/endpoints.go index 51c8a534338..17107152448 100644 --- a/service/sagemakerruntime/internal/endpoints/endpoints.go +++ b/service/sagemakerruntime/internal/endpoints/endpoints.go @@ -159,6 +159,9 @@ var defaultPartitions = endpoints.Partitions{ endpoints.EndpointKey{ Region: "ap-southeast-2", }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ap-southeast-3", + }: endpoints.Endpoint{}, endpoints.EndpointKey{ Region: "ca-central-1", }: endpoints.Endpoint{}, diff --git a/service/wellarchitected/internal/endpoints/endpoints.go b/service/wellarchitected/internal/endpoints/endpoints.go index 53371017b05..cce440a8c7a 100644 --- a/service/wellarchitected/internal/endpoints/endpoints.go +++ b/service/wellarchitected/internal/endpoints/endpoints.go @@ -302,5 +302,13 @@ var defaultPartitions = endpoints.Partitions{ }, RegionRegex: partitionRegexp.AwsUsGov, IsRegionalized: true, + Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-gov-east-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-gov-west-1", + }: endpoints.Endpoint{}, + }, }, }