From b0b6524b6ba655c9ceda161034a8bf37ac061f0d Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Tue, 19 Oct 2021 12:13:06 -0700 Subject: [PATCH] Release v1.41.6 (2021-10-19) (#4137) Release v1.41.6 (2021-10-19) === ### Service Client Updates * `service/chime-sdk-messaging`: Updates service API, documentation, and paginators * `service/dataexchange`: Updates service API and documentation --- CHANGELOG.md | 7 + aws/version.go | 2 +- .../chime-sdk-messaging/2021-05-15/api-2.json | 666 ++- .../2021-05-15/docs-2.json | 300 +- .../2021-05-15/paginators-1.json | 10 + .../apis/dataexchange/2017-07-25/api-2.json | 110 +- .../apis/dataexchange/2017-07-25/docs-2.json | 107 +- service/chimesdkmessaging/api.go | 4084 +++++++++++++++-- .../chimesdkmessagingiface/interface.go | 62 +- service/dataexchange/api.go | 391 +- 10 files changed, 5342 insertions(+), 397 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 71406000e42..b28e1d6cc88 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +Release v1.41.6 (2021-10-19) +=== + +### Service Client Updates +* `service/chime-sdk-messaging`: Updates service API, documentation, and paginators +* `service/dataexchange`: Updates service API and documentation + Release v1.41.5 (2021-10-18) === diff --git a/aws/version.go b/aws/version.go index 7496913665c..931b8973273 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.41.5" +const SDKVersion = "1.41.6" diff --git a/models/apis/chime-sdk-messaging/2021-05-15/api-2.json b/models/apis/chime-sdk-messaging/2021-05-15/api-2.json index 2a605254101..7afee148242 100644 --- a/models/apis/chime-sdk-messaging/2021-05-15/api-2.json +++ b/models/apis/chime-sdk-messaging/2021-05-15/api-2.json @@ -11,6 +11,25 @@ "uid":"chime-sdk-messaging-2021-05-15" }, "operations":{ + "AssociateChannelFlow":{ + "name":"AssociateChannelFlow", + "http":{ + "method":"PUT", + "requestUri":"/channels/{channelArn}/channel-flow", + "responseCode":200 + }, + "input":{"shape":"AssociateChannelFlowRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "BatchCreateChannelMembership":{ "name":"BatchCreateChannelMembership", "http":{ @@ -29,6 +48,25 @@ {"shape":"ThrottledClientException"} ] }, + "ChannelFlowCallback":{ + "name":"ChannelFlowCallback", + "http":{ + "method":"POST", + "requestUri":"/channels/{channelArn}?operation=channel-flow-callback", + "responseCode":200 + }, + "input":{"shape":"ChannelFlowCallbackRequest"}, + "output":{"shape":"ChannelFlowCallbackResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "CreateChannel":{ "name":"CreateChannel", "http":{ @@ -69,6 +107,26 @@ {"shape":"ServiceFailureException"} ] }, + "CreateChannelFlow":{ + "name":"CreateChannelFlow", + "http":{ + "method":"POST", + "requestUri":"/channel-flows", + "responseCode":201 + }, + "input":{"shape":"CreateChannelFlowRequest"}, + "output":{"shape":"CreateChannelFlowResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "CreateChannelMembership":{ "name":"CreateChannelMembership", "http":{ @@ -143,6 +201,24 @@ {"shape":"ServiceFailureException"} ] }, + "DeleteChannelFlow":{ + "name":"DeleteChannelFlow", + "http":{ + "method":"DELETE", + "requestUri":"/channel-flows/{channelFlowArn}", + "responseCode":204 + }, + "input":{"shape":"DeleteChannelFlowRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "DeleteChannelMembership":{ "name":"DeleteChannelMembership", "http":{ @@ -232,6 +308,24 @@ {"shape":"ServiceFailureException"} ] }, + "DescribeChannelFlow":{ + "name":"DescribeChannelFlow", + "http":{ + "method":"GET", + "requestUri":"/channel-flows/{channelFlowArn}", + "responseCode":200 + }, + "input":{"shape":"DescribeChannelFlowRequest"}, + "output":{"shape":"DescribeChannelFlowResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "DescribeChannelMembership":{ "name":"DescribeChannelMembership", "http":{ @@ -306,6 +400,25 @@ {"shape":"ServiceFailureException"} ] }, + "DisassociateChannelFlow":{ + "name":"DisassociateChannelFlow", + "http":{ + "method":"DELETE", + "requestUri":"/channels/{channelArn}/channel-flow/{channelFlowArn}", + "responseCode":204 + }, + "input":{"shape":"DisassociateChannelFlowRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetChannelMessage":{ "name":"GetChannelMessage", "http":{ @@ -325,6 +438,24 @@ {"shape":"ServiceFailureException"} ] }, + "GetChannelMessageStatus":{ + "name":"GetChannelMessageStatus", + "http":{ + "method":"GET", + "requestUri":"/channels/{channelArn}/messages/{messageId}?scope=message-status", + "responseCode":200 + }, + "input":{"shape":"GetChannelMessageStatusRequest"}, + "output":{"shape":"GetChannelMessageStatusResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetMessagingSessionEndpoint":{ "name":"GetMessagingSessionEndpoint", "http":{ @@ -360,6 +491,24 @@ {"shape":"ServiceFailureException"} ] }, + "ListChannelFlows":{ + "name":"ListChannelFlows", + "http":{ + "method":"GET", + "requestUri":"/channel-flows", + "responseCode":200 + }, + "input":{"shape":"ListChannelFlowsRequest"}, + "output":{"shape":"ListChannelFlowsResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "ListChannelMemberships":{ "name":"ListChannelMemberships", "http":{ @@ -450,6 +599,24 @@ {"shape":"ServiceFailureException"} ] }, + "ListChannelsAssociatedWithChannelFlow":{ + "name":"ListChannelsAssociatedWithChannelFlow", + "http":{ + "method":"GET", + "requestUri":"/channels?scope=channel-flow-associations", + "responseCode":200 + }, + "input":{"shape":"ListChannelsAssociatedWithChannelFlowRequest"}, + "output":{"shape":"ListChannelsAssociatedWithChannelFlowResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "ListChannelsModeratedByAppInstanceUser":{ "name":"ListChannelsModeratedByAppInstanceUser", "http":{ @@ -468,6 +635,24 @@ {"shape":"ServiceFailureException"} ] }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "RedactChannelMessage":{ "name":"RedactChannelMessage", "http":{ @@ -505,6 +690,41 @@ {"shape":"ServiceFailureException"} ] }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags?operation=tag-resource", + "responseCode":204 + }, + "input":{"shape":"TagResourceRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/tags?operation=untag-resource", + "responseCode":204 + }, + "input":{"shape":"UntagResourceRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "UpdateChannel":{ "name":"UpdateChannel", "http":{ @@ -524,6 +744,25 @@ {"shape":"ServiceFailureException"} ] }, + "UpdateChannelFlow":{ + "name":"UpdateChannelFlow", + "http":{ + "method":"PUT", + "requestUri":"/channel-flows/{channelFlowArn}", + "responseCode":200 + }, + "input":{"shape":"UpdateChannelFlowRequest"}, + "output":{"shape":"UpdateChannelFlowResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "UpdateChannelMessage":{ "name":"UpdateChannelMessage", "http":{ @@ -571,6 +810,27 @@ "ReadMarkerTimestamp":{"shape":"Timestamp"} } }, + "AssociateChannelFlowRequest":{ + "type":"structure", + "required":[ + "ChannelArn", + "ChannelFlowArn", + "ChimeBearer" + ], + "members":{ + "ChannelArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelArn" + }, + "ChannelFlowArn":{"shape":"ChimeArn"}, + "ChimeBearer":{ + "shape":"ChimeArn", + "location":"header", + "locationName":"x-amz-chime-bearer" + } + } + }, "BadRequestException":{ "type":"structure", "members":{ @@ -630,6 +890,11 @@ "Errors":{"shape":"BatchCreateChannelMembershipErrors"} } }, + "CallbackIdType":{ + "type":"string", + "max":64, + "min":32 + }, "Channel":{ "type":"structure", "members":{ @@ -641,9 +906,24 @@ "CreatedBy":{"shape":"Identity"}, "CreatedTimestamp":{"shape":"Timestamp"}, "LastMessageTimestamp":{"shape":"Timestamp"}, - "LastUpdatedTimestamp":{"shape":"Timestamp"} + "LastUpdatedTimestamp":{"shape":"Timestamp"}, + "ChannelFlowArn":{"shape":"ChimeArn"} + } + }, + "ChannelAssociatedWithFlowSummary":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyResourceName"}, + "ChannelArn":{"shape":"ChimeArn"}, + "Mode":{"shape":"ChannelMode"}, + "Privacy":{"shape":"ChannelPrivacy"}, + "Metadata":{"shape":"Metadata"} } }, + "ChannelAssociatedWithFlowSummaryList":{ + "type":"list", + "member":{"shape":"ChannelAssociatedWithFlowSummary"} + }, "ChannelBan":{ "type":"structure", "members":{ @@ -663,6 +943,61 @@ "type":"list", "member":{"shape":"ChannelBanSummary"} }, + "ChannelFlow":{ + "type":"structure", + "members":{ + "ChannelFlowArn":{"shape":"ChimeArn"}, + "Processors":{"shape":"ProcessorList"}, + "Name":{"shape":"NonEmptyResourceName"}, + "CreatedTimestamp":{"shape":"Timestamp"}, + "LastUpdatedTimestamp":{"shape":"Timestamp"} + } + }, + "ChannelFlowCallbackRequest":{ + "type":"structure", + "required":[ + "CallbackId", + "ChannelArn", + "ChannelMessage" + ], + "members":{ + "CallbackId":{ + "shape":"CallbackIdType", + "idempotencyToken":true + }, + "ChannelArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelArn" + }, + "DeleteResource":{"shape":"NonNullableBoolean"}, + "ChannelMessage":{"shape":"ChannelMessageCallback"} + } + }, + "ChannelFlowCallbackResponse":{ + "type":"structure", + "members":{ + "ChannelArn":{"shape":"ChimeArn"}, + "CallbackId":{"shape":"CallbackIdType"} + } + }, + "ChannelFlowExecutionOrder":{ + "type":"integer", + "max":3, + "min":1 + }, + "ChannelFlowSummary":{ + "type":"structure", + "members":{ + "ChannelFlowArn":{"shape":"ChimeArn"}, + "Name":{"shape":"NonEmptyResourceName"}, + "Processors":{"shape":"ProcessorList"} + } + }, + "ChannelFlowSummaryList":{ + "type":"list", + "member":{"shape":"ChannelFlowSummary"} + }, "ChannelMembership":{ "type":"structure", "members":{ @@ -715,7 +1050,17 @@ "LastUpdatedTimestamp":{"shape":"Timestamp"}, "Sender":{"shape":"Identity"}, "Redacted":{"shape":"NonNullableBoolean"}, - "Persistence":{"shape":"ChannelMessagePersistenceType"} + "Persistence":{"shape":"ChannelMessagePersistenceType"}, + "Status":{"shape":"ChannelMessageStatusStructure"} + } + }, + "ChannelMessageCallback":{ + "type":"structure", + "required":["MessageId"], + "members":{ + "MessageId":{"shape":"MessageId"}, + "Content":{"shape":"NonEmptyContent"}, + "Metadata":{"shape":"Metadata"} } }, "ChannelMessagePersistenceType":{ @@ -725,6 +1070,22 @@ "NON_PERSISTENT" ] }, + "ChannelMessageStatus":{ + "type":"string", + "enum":[ + "SENT", + "PENDING", + "FAILED", + "DENIED" + ] + }, + "ChannelMessageStatusStructure":{ + "type":"structure", + "members":{ + "Value":{"shape":"ChannelMessageStatus"}, + "Detail":{"shape":"StatusDetail"} + } + }, "ChannelMessageSummary":{ "type":"structure", "members":{ @@ -736,7 +1097,8 @@ "LastUpdatedTimestamp":{"shape":"Timestamp"}, "LastEditedTimestamp":{"shape":"Timestamp"}, "Sender":{"shape":"Identity"}, - "Redacted":{"shape":"NonNullableBoolean"} + "Redacted":{"shape":"NonNullableBoolean"}, + "Status":{"shape":"ChannelMessageStatusStructure"} } }, "ChannelMessageSummaryList":{ @@ -865,6 +1227,28 @@ "Member":{"shape":"Identity"} } }, + "CreateChannelFlowRequest":{ + "type":"structure", + "required":[ + "AppInstanceArn", + "Processors", + "Name", + "ClientRequestToken" + ], + "members":{ + "AppInstanceArn":{"shape":"ChimeArn"}, + "Processors":{"shape":"ProcessorList"}, + "Name":{"shape":"NonEmptyResourceName"}, + "Tags":{"shape":"TagList"}, + "ClientRequestToken":{"shape":"ClientRequestToken"} + } + }, + "CreateChannelFlowResponse":{ + "type":"structure", + "members":{ + "ChannelFlowArn":{"shape":"ChimeArn"} + } + }, "CreateChannelMembershipRequest":{ "type":"structure", "required":[ @@ -980,6 +1364,17 @@ } } }, + "DeleteChannelFlowRequest":{ + "type":"structure", + "required":["ChannelFlowArn"], + "members":{ + "ChannelFlowArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelFlowArn" + } + } + }, "DeleteChannelMembershipRequest":{ "type":"structure", "required":[ @@ -1105,6 +1500,23 @@ "ChannelBan":{"shape":"ChannelBan"} } }, + "DescribeChannelFlowRequest":{ + "type":"structure", + "required":["ChannelFlowArn"], + "members":{ + "ChannelFlowArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelFlowArn" + } + } + }, + "DescribeChannelFlowResponse":{ + "type":"structure", + "members":{ + "ChannelFlow":{"shape":"ChannelFlow"} + } + }, "DescribeChannelMembershipForAppInstanceUserRequest":{ "type":"structure", "required":[ @@ -1254,6 +1666,31 @@ "Channel":{"shape":"Channel"} } }, + "DisassociateChannelFlowRequest":{ + "type":"structure", + "required":[ + "ChannelArn", + "ChannelFlowArn", + "ChimeBearer" + ], + "members":{ + "ChannelArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelArn" + }, + "ChannelFlowArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelFlowArn" + }, + "ChimeBearer":{ + "shape":"ChimeArn", + "location":"header", + "locationName":"x-amz-chime-bearer" + } + } + }, "ErrorCode":{ "type":"string", "enum":[ @@ -1274,6 +1711,13 @@ "PhoneNumberAssociationsExist" ] }, + "FallbackAction":{ + "type":"string", + "enum":[ + "CONTINUE", + "ABORT" + ] + }, "ForbiddenException":{ "type":"structure", "members":{ @@ -1314,6 +1758,37 @@ "ChannelMessage":{"shape":"ChannelMessage"} } }, + "GetChannelMessageStatusRequest":{ + "type":"structure", + "required":[ + "ChannelArn", + "MessageId", + "ChimeBearer" + ], + "members":{ + "ChannelArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelArn" + }, + "MessageId":{ + "shape":"MessageId", + "location":"uri", + "locationName":"messageId" + }, + "ChimeBearer":{ + "shape":"ChimeArn", + "location":"header", + "locationName":"x-amz-chime-bearer" + } + } + }, + "GetChannelMessageStatusResponse":{ + "type":"structure", + "members":{ + "Status":{"shape":"ChannelMessageStatusStructure"} + } + }, "GetMessagingSessionEndpointRequest":{ "type":"structure", "members":{ @@ -1332,6 +1807,27 @@ "Name":{"shape":"ResourceName"} } }, + "InvocationType":{ + "type":"string", + "enum":["ASYNC"] + }, + "LambdaConfiguration":{ + "type":"structure", + "required":[ + "ResourceArn", + "InvocationType" + ], + "members":{ + "ResourceArn":{"shape":"LambdaFunctionArn"}, + "InvocationType":{"shape":"InvocationType"} + } + }, + "LambdaFunctionArn":{ + "type":"string", + "max":2048, + "min":15, + "pattern":"arn:aws:lambda:[a-z]{2}-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9\\-_\\.]+(:(\\$LATEST|[a-zA-Z0-9\\-_]+))?" + }, "ListChannelBansRequest":{ "type":"structure", "required":[ @@ -1369,6 +1865,34 @@ "ChannelBans":{"shape":"ChannelBanSummaryList"} } }, + "ListChannelFlowsRequest":{ + "type":"structure", + "required":["AppInstanceArn"], + "members":{ + "AppInstanceArn":{ + "shape":"ChimeArn", + "location":"querystring", + "locationName":"app-instance-arn" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"max-results" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"next-token" + } + } + }, + "ListChannelFlowsResponse":{ + "type":"structure", + "members":{ + "ChannelFlows":{"shape":"ChannelFlowSummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListChannelMembershipsForAppInstanceUserRequest":{ "type":"structure", "required":["ChimeBearer"], @@ -1533,6 +2057,34 @@ "ChannelModerators":{"shape":"ChannelModeratorSummaryList"} } }, + "ListChannelsAssociatedWithChannelFlowRequest":{ + "type":"structure", + "required":["ChannelFlowArn"], + "members":{ + "ChannelFlowArn":{ + "shape":"ChimeArn", + "location":"querystring", + "locationName":"channel-flow-arn" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"max-results" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"next-token" + } + } + }, + "ListChannelsAssociatedWithChannelFlowResponse":{ + "type":"structure", + "members":{ + "Channels":{"shape":"ChannelAssociatedWithFlowSummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListChannelsModeratedByAppInstanceUserRequest":{ "type":"structure", "required":["ChimeBearer"], @@ -1607,6 +2159,23 @@ "NextToken":{"shape":"NextToken"} } }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{ + "shape":"ChimeArn", + "location":"querystring", + "locationName":"arn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagList"} + } + }, "MaxResults":{ "type":"integer", "max":50, @@ -1671,6 +2240,34 @@ "error":{"httpStatusCode":404}, "exception":true }, + "Processor":{ + "type":"structure", + "required":[ + "Name", + "Configuration", + "ExecutionOrder", + "FallbackAction" + ], + "members":{ + "Name":{"shape":"NonEmptyResourceName"}, + "Configuration":{"shape":"ProcessorConfiguration"}, + "ExecutionOrder":{"shape":"ChannelFlowExecutionOrder"}, + "FallbackAction":{"shape":"FallbackAction"} + } + }, + "ProcessorConfiguration":{ + "type":"structure", + "required":["Lambda"], + "members":{ + "Lambda":{"shape":"LambdaConfiguration"} + } + }, + "ProcessorList":{ + "type":"list", + "member":{"shape":"Processor"}, + "max":3, + "min":1 + }, "RedactChannelMessageRequest":{ "type":"structure", "required":[ @@ -1754,7 +2351,8 @@ "type":"structure", "members":{ "ChannelArn":{"shape":"ChimeArn"}, - "MessageId":{"shape":"MessageId"} + "MessageId":{"shape":"MessageId"}, + "Status":{"shape":"ChannelMessageStatusStructure"} } }, "ServiceFailureException":{ @@ -1784,6 +2382,12 @@ "DESCENDING" ] }, + "StatusDetail":{ + "type":"string", + "max":256, + "min":0, + "pattern":"[\\s\\S]*" + }, "String":{"type":"string"}, "Tag":{ "type":"structure", @@ -1802,12 +2406,29 @@ "min":1, "sensitive":true }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":50, + "min":1 + }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "max":50, "min":1 }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "Tags" + ], + "members":{ + "ResourceARN":{"shape":"ChimeArn"}, + "Tags":{"shape":"TagList"} + } + }, "TagValue":{ "type":"string", "max":256, @@ -1833,6 +2454,40 @@ "error":{"httpStatusCode":401}, "exception":true }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "TagKeys" + ], + "members":{ + "ResourceARN":{"shape":"ChimeArn"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, + "UpdateChannelFlowRequest":{ + "type":"structure", + "required":[ + "ChannelFlowArn", + "Processors", + "Name" + ], + "members":{ + "ChannelFlowArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelFlowArn" + }, + "Processors":{"shape":"ProcessorList"}, + "Name":{"shape":"NonEmptyResourceName"} + } + }, + "UpdateChannelFlowResponse":{ + "type":"structure", + "members":{ + "ChannelFlowArn":{"shape":"ChimeArn"} + } + }, "UpdateChannelMessageRequest":{ "type":"structure", "required":[ @@ -1864,7 +2519,8 @@ "type":"structure", "members":{ "ChannelArn":{"shape":"ChimeArn"}, - "MessageId":{"shape":"MessageId"} + "MessageId":{"shape":"MessageId"}, + "Status":{"shape":"ChannelMessageStatusStructure"} } }, "UpdateChannelReadMarkerRequest":{ diff --git a/models/apis/chime-sdk-messaging/2021-05-15/docs-2.json b/models/apis/chime-sdk-messaging/2021-05-15/docs-2.json index 9127d183818..1eda69fbf7e 100644 --- a/models/apis/chime-sdk-messaging/2021-05-15/docs-2.json +++ b/models/apis/chime-sdk-messaging/2021-05-15/docs-2.json @@ -2,34 +2,47 @@ "version": "2.0", "service": "
The Amazon Chime SDK Messaging APIs in this section allow software developers to send and receive messages in custom messaging applications. These APIs depend on the frameworks provided by the Amazon Chime SDK Identity APIs. For more information about the messaging APIs, see Amazon Chime SDK messaging
", "operations": { + "AssociateChannelFlow": "Associates a channel flow with a channel. Once associated, all messages to that channel go through channel flow processors. To stop processing, use the DisassociateChannelFlow
API.
Only administrators or channel moderators can associate a channel flow. The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Adds a specified number of users to a channel.
", + "ChannelFlowCallback": "Calls back Chime SDK Messaging with a processing response message. This should be invoked from the processor Lambda. This is a developer API.
You can return one of the following processing responses:
Update message content or metadata
Deny a message
Make no changes to the message
Creates a channel to which you can add users and send messages.
Restriction: You can't change a channel's privacy.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Permanently bans a member from a channel. Moderators can't add banned members to a channel. To undo a ban, you first have to DeleteChannelBan
, and then CreateChannelMembership
. Bans are cleaned up when you delete users or channels.
If you ban a user who is already part of a channel, that user is automatically kicked from the channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Creates a channel flow, a container for processors. Processors are AWS Lambda functions that perform actions on chat messages, such as stripping out profanity. You can associate channel flows with channels, and the processors in the channel flow then take action on all messages sent to that channel. This is a developer API.
Channel flows process the following items:
New and updated messages
Persistent and non-persistent messages
The Standard message type
Channel flows don't process Control or System messages. For more information about the message types provided by Chime SDK Messaging, refer to Message types in the Amazon Chime developer guide.
Adds a user to a channel. The InvitedBy
response field is derived from the request header. A channel member can:
List messages
Send messages
Receive messages
Edit their own messages
Leave the channel
Privacy settings impact this action as follows:
Public Channels: You do not need to be a member to list messages, but you must be a member to send messages.
Private Channels: You must be a member to list or send messages.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Creates a new ChannelModerator
. A channel moderator can:
Add and remove other members of the channel.
Add and remove other moderators of the channel.
Add and remove user bans for the channel.
Redact messages in the channel.
List messages in the channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Immediately makes a channel and its memberships inaccessible and marks them for deletion. This is an irreversible process.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Removes a user from a channel's ban list.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Deletes a channel flow, an irreversible process. This is a developer API.
This API works only when the channel flow is not associated with any channel. To get a list of all channels that a channel flow is associated with, use the ListChannelsAssociatedWithChannelFlow
API. Use the DisassociateChannelFlow
API to disassociate a channel flow from all channels.
Removes a member from a channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Deletes a channel message. Only admins can perform this action. Deletion makes messages inaccessible immediately. A background process deletes any revisions created by UpdateChannelMessage
.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Deletes a channel moderator.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the full details of a channel in an Amazon Chime AppInstance
.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the full details of a channel ban.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the full details of a channel flow in an Amazon Chime AppInstance
. This is a developer API.
Returns the full details of a user's channel membership.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the details of a channel based on the membership of the specified AppInstanceUser
.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the full details of a channel moderated by the specified AppInstanceUser
.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the full details of a single ChannelModerator.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Disassociates a channel flow from all its channels. Once disassociated, all messages to that channel stop going through the channel flow processor.
Only administrators or channel moderators can disassociate a channel flow. The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Gets the full details of a channel message.
The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Gets message status for a specified messageId
. Use this API to determine the intermediate status of messages going through channel flow processing. The API provides an alternative to retrieving message status if the event was not received because a client wasn't connected to a websocket.
Messages can have any one of these statuses.
Message processed successfully
Ongoing processing
Processing failed
Messasge denied by the processor
This API does not return statuses for denied messages, because we don't store them once the processor denies them.
Only the message sender can invoke this API.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header
The details of the endpoint for the messaging session.
", "ListChannelBans": "Lists all the users banned from a particular channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns a paginated lists of all the channel flows created under a single Chime. This is a developer API.
", "ListChannelMemberships": "Lists all channel memberships in a channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Lists all channels that a particular AppInstanceUser
is a part of. Only an AppInstanceAdmin
can call the API with a user ARN that is not their own.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
List all the messages in a channel. Returns a paginated list of ChannelMessages
. By default, sorted by creation timestamp in descending order.
Redacted messages appear in the results as empty, since they are only redacted, not deleted. Deleted messages do not appear in the results. This action always returns the latest version of an edited message.
Also, the x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Lists all the moderators for a channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Lists all Channels created under a single Chime App as a paginated list. You can specify filters to narrow results.
Functionality & restrictions
Use privacy = PUBLIC
to retrieve all public channels in the account.
Only an AppInstanceAdmin
can set privacy = PRIVATE
to list the private channels in an account.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Lists all channels associated with a specified channel flow. You can associate a channel flow with multiple channels, but you can only associate a channel with one channel flow. This is a developer API.
", "ListChannelsModeratedByAppInstanceUser": "A list of the channels moderated by an AppInstanceUser
.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Lists the tags applied to an Amazon Chime SDK messaging resource.
", "RedactChannelMessage": "Redacts message content, but not metadata. The message exists in the back end, but the action returns null content, and the state shows as redacted.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Sends a message to a particular channel that the member is a part of.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Also, STANDARD
messages can contain 4KB of data and the 1KB of metadata. CONTROL
messages can contain 30 bytes of data and no metadata.
Applies the specified tags to the specified Amazon Chime SDK messaging resource.
", + "UntagResource": "Removes the specified tags from the specified Amazon Chime SDK messaging resource.
", "UpdateChannel": "Update a channel's attributes.
Restriction: You can't change a channel's privacy.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Updates channel flow attributes. This is a developer API.
", "UpdateChannelMessage": "Updates the content of a message.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
The details of the time when a user last read messages in a channel.
The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the user that makes the API call as the value in the header.
Returns the channel membership data for an AppInstance
.
The input parameters don't match the service's restrictions.
", "refs": { @@ -73,12 +91,31 @@ "refs": { } }, + "CallbackIdType": { + "base": null, + "refs": { + "ChannelFlowCallbackRequest$CallbackId": "The identifier passed to the processor by the service when invoked. Use the identifier to call back the service.
", + "ChannelFlowCallbackResponse$CallbackId": "The call back ID passed in the request.
" + } + }, "Channel": { "base": "The details of a channel.
", "refs": { "DescribeChannelResponse$Channel": "The channel details.
" } }, + "ChannelAssociatedWithFlowSummary": { + "base": "Summary of details of a channel associated with channel flow.
", + "refs": { + "ChannelAssociatedWithFlowSummaryList$member": null + } + }, + "ChannelAssociatedWithFlowSummaryList": { + "base": null, + "refs": { + "ListChannelsAssociatedWithChannelFlowResponse$Channels": "The information about each channel.
" + } + }, "ChannelBan": { "base": "The details of a channel ban.
", "refs": { @@ -97,6 +134,40 @@ "ListChannelBansResponse$ChannelBans": "The information for each requested ban.
" } }, + "ChannelFlow": { + "base": "The details of a channel flow.
", + "refs": { + "DescribeChannelFlowResponse$ChannelFlow": "The channel flow details.
" + } + }, + "ChannelFlowCallbackRequest": { + "base": null, + "refs": { + } + }, + "ChannelFlowCallbackResponse": { + "base": null, + "refs": { + } + }, + "ChannelFlowExecutionOrder": { + "base": null, + "refs": { + "Processor$ExecutionOrder": "The sequence in which processors run. If you have multiple processors in a channel flow, message processing goes through each processor in the sequence. The value determines the sequence. At this point, we support only 1 processor within a flow.
" + } + }, + "ChannelFlowSummary": { + "base": "Summary of details of a channel flow.
", + "refs": { + "ChannelFlowSummaryList$member": null + } + }, + "ChannelFlowSummaryList": { + "base": null, + "refs": { + "ListChannelFlowsResponse$ChannelFlows": "The information about each channel flow.
" + } + }, "ChannelMembership": { "base": "The details of a channel member.
", "refs": { @@ -145,6 +216,12 @@ "GetChannelMessageResponse$ChannelMessage": "The details of and content in the message.
" } }, + "ChannelMessageCallback": { + "base": "Stores information about a callback.
", + "refs": { + "ChannelFlowCallbackRequest$ChannelMessage": "Stores information about the processed message.
" + } + }, "ChannelMessagePersistenceType": { "base": null, "refs": { @@ -152,6 +229,22 @@ "SendChannelMessageRequest$Persistence": "Boolean that controls whether the message is persisted on the back end. Required.
" } }, + "ChannelMessageStatus": { + "base": null, + "refs": { + "ChannelMessageStatusStructure$Value": "The message status value.
" + } + }, + "ChannelMessageStatusStructure": { + "base": "Stores information about a message status.
", + "refs": { + "ChannelMessage$Status": "The status of the channel message.
", + "ChannelMessageSummary$Status": "The message status. The status value is SENT
for messages sent to a channel without a channel flow. For channels associated with channel flow, the value determines the processing stage.
The message status and details.
", + "SendChannelMessageResponse$Status": "The status of the channel message.
", + "UpdateChannelMessageResponse$Status": "The status of the message update.
" + } + }, "ChannelMessageSummary": { "base": "Summary of the messages in a Channel
.
The mode of the channel.
", + "ChannelAssociatedWithFlowSummary$Mode": "The mode of the channel.
", "ChannelSummary$Mode": "The mode of the channel.
", "CreateChannelRequest$Mode": "The channel mode: UNRESTRICTED
or RESTRICTED
. Administrators, moderators, and channel members can add themselves and other members to unrestricted channels. Only administrators and moderators can add members to restricted channels.
The mode of the update request.
" @@ -216,6 +310,7 @@ "base": null, "refs": { "Channel$Privacy": "The channel's privacy setting.
", + "ChannelAssociatedWithFlowSummary$Privacy": "The channel's privacy setting.
", "ChannelSummary$Privacy": "The privacy setting of the channel.
", "CreateChannelRequest$Privacy": "The channel's privacy level: PUBLIC
or PRIVATE
. Private channels aren't discoverable by users outside the channel. Public channels are discoverable by anyone in the AppInstance
.
The privacy setting. PUBLIC
retrieves all the public channels. PRIVATE
retrieves private channels. Only an AppInstanceAdmin
can retrieve private channels.
The ARN of the channel.
", + "AssociateChannelFlowRequest$ChannelFlowArn": "The ARN of the channel flow.
", + "AssociateChannelFlowRequest$ChimeBearer": "The AppInstanceUserArn
of the user making the API call.
The ARN of the channel to which you're adding users.
", "BatchCreateChannelMembershipError$MemberArn": "The ARN of the member that the service couldn't add.
", "BatchCreateChannelMembershipRequest$ChannelArn": "The ARN of the channel to which you're adding users.
", "BatchCreateChannelMembershipRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of a channel.
", + "Channel$ChannelFlowArn": "The ARN of the channel flow.
", + "ChannelAssociatedWithFlowSummary$ChannelArn": "The ARN of the channel.
", "ChannelBan$ChannelArn": "The ARN of the channel from which a member is being banned.
", + "ChannelFlow$ChannelFlowArn": "The ARN of the channel flow.
", + "ChannelFlowCallbackRequest$ChannelArn": "The ARN of the channel.
", + "ChannelFlowCallbackResponse$ChannelArn": "The ARN of the channel.
", + "ChannelFlowSummary$ChannelFlowArn": "The ARN of the channel flow.
", "ChannelMembership$ChannelArn": "The ARN of the member's channel.
", "ChannelMessage$ChannelArn": "The ARN of the channel.
", "ChannelModerator$ChannelArn": "The ARN of the moderator's channel.
", @@ -252,6 +356,8 @@ "CreateChannelBanRequest$MemberArn": "The ARN of the member being banned.
", "CreateChannelBanRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the response to the ban request.
", + "CreateChannelFlowRequest$AppInstanceArn": "The ARN of the channel flow request.
", + "CreateChannelFlowResponse$ChannelFlowArn": "The ARN of the channel flow.
", "CreateChannelMembershipRequest$ChannelArn": "The ARN of the channel to which you're adding users.
", "CreateChannelMembershipRequest$MemberArn": "The ARN of the member you want to add to the channel.
", "CreateChannelMembershipRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel from which the AppInstanceUser
was banned.
The ARN of the AppInstanceUser
that you want to reinstate.
The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel flow.
", "DeleteChannelMembershipRequest$ChannelArn": "The ARN of the channel from which you want to remove the user.
", "DeleteChannelMembershipRequest$MemberArn": "The ARN of the member that you're removing from the channel.
", "DeleteChannelMembershipRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel from which the user is banned.
", "DescribeChannelBanRequest$MemberArn": "The ARN of the member being banned.
", "DescribeChannelBanRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel flow.
", "DescribeChannelMembershipForAppInstanceUserRequest$ChannelArn": "The ARN of the channel to which the user belongs.
", "DescribeChannelMembershipForAppInstanceUserRequest$AppInstanceUserArn": "The ARN of the user in a channel.
", "DescribeChannelMembershipForAppInstanceUserRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", "DescribeChannelRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", + "DisassociateChannelFlowRequest$ChannelFlowArn": "The ARN of the channel flow.
", + "DisassociateChannelFlowRequest$ChimeBearer": "The AppInstanceUserArn
of the user making the API call.
The ARN of the channel.
", "GetChannelMessageRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel
", + "GetChannelMessageStatusRequest$ChimeBearer": "The AppInstanceUserArn
of the user making the API call.
The ARN in an Identity.
", "ListChannelBansRequest$ChannelArn": "The ARN of the channel.
", "ListChannelBansRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", + "ListChannelFlowsRequest$AppInstanceArn": "The ARN of the app instance.
", "ListChannelMembershipsForAppInstanceUserRequest$AppInstanceUserArn": "The ARN of the AppInstanceUser
s
The AppInstanceUserArn
of the user that makes the API call.
The maximum number of channel memberships that you want returned.
", @@ -310,10 +424,12 @@ "ListChannelModeratorsRequest$ChannelArn": "The ARN of the channel.
", "ListChannelModeratorsRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", + "ListChannelsAssociatedWithChannelFlowRequest$ChannelFlowArn": "The ARN of the channel flow.
", "ListChannelsModeratedByAppInstanceUserRequest$AppInstanceUserArn": "The ARN of the user in the moderated channel.
", "ListChannelsModeratedByAppInstanceUserRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the AppInstance
.
The AppInstanceUserArn
of the user that makes the API call.
The ARN of the resource.
", "MemberArns$member": null, "RedactChannelMessageRequest$ChannelArn": "The ARN of the channel containing the messages that you want to redact.
", "RedactChannelMessageRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", "SendChannelMessageRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", + "TagResourceRequest$ResourceARN": "The resource ARN.
", + "UntagResourceRequest$ResourceARN": "The resource ARN.
", + "UpdateChannelFlowRequest$ChannelFlowArn": "The ARN of the channel flow.
", + "UpdateChannelFlowResponse$ChannelFlowArn": "The ARN of the channel flow.
", "UpdateChannelMessageRequest$ChannelArn": "The ARN of the channel.
", "UpdateChannelMessageRequest$ChimeBearer": "The AppInstanceUserArn
of the user that makes the API call.
The ARN of the channel.
", @@ -335,6 +455,7 @@ "ClientRequestToken": { "base": null, "refs": { + "CreateChannelFlowRequest$ClientRequestToken": "The client token for the request. An Idempotency token.
", "CreateChannelRequest$ClientRequestToken": "The client token for the request. An Idempotency
token.
The Idempotency
token for each client request.
Determines whether to continue or stop processing if communication with processor fails. If the last processor in a channel flow sequence has a fallback action of CONTINUE, and communication with the processor fails, the message is considered processed and sent to the recipients in the channel.
" + } + }, "ForbiddenException": { "base": "The client is permanently forbidden from making the request.
", "refs": { @@ -507,6 +664,16 @@ "refs": { } }, + "GetChannelMessageStatusRequest": { + "base": null, + "refs": { + } + }, + "GetChannelMessageStatusResponse": { + "base": null, + "refs": { + } + }, "GetMessagingSessionEndpointRequest": { "base": null, "refs": { @@ -539,6 +706,24 @@ "Members$member": null } }, + "InvocationType": { + "base": null, + "refs": { + "LambdaConfiguration$InvocationType": "Controls how the Lambda function is invoked.
" + } + }, + "LambdaConfiguration": { + "base": "Stores metadata about a Lambda processor.
", + "refs": { + "ProcessorConfiguration$Lambda": "Indicates that the processor is of type Lambda.
" + } + }, + "LambdaFunctionArn": { + "base": null, + "refs": { + "LambdaConfiguration$ResourceArn": "The ARN of the Lambda message processing function.
" + } + }, "ListChannelBansRequest": { "base": null, "refs": { @@ -549,6 +734,16 @@ "refs": { } }, + "ListChannelFlowsRequest": { + "base": null, + "refs": { + } + }, + "ListChannelFlowsResponse": { + "base": null, + "refs": { + } + }, "ListChannelMembershipsForAppInstanceUserRequest": { "base": null, "refs": { @@ -589,6 +784,16 @@ "refs": { } }, + "ListChannelsAssociatedWithChannelFlowRequest": { + "base": null, + "refs": { + } + }, + "ListChannelsAssociatedWithChannelFlowResponse": { + "base": null, + "refs": { + } + }, "ListChannelsModeratedByAppInstanceUserRequest": { "base": null, "refs": { @@ -609,14 +814,26 @@ "refs": { } }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, "MaxResults": { "base": null, "refs": { "ListChannelBansRequest$MaxResults": "The maximum number of bans that you want returned.
", + "ListChannelFlowsRequest$MaxResults": "The maximum number of channel flows that you want to return.
", "ListChannelMembershipsForAppInstanceUserRequest$MaxResults": "The maximum number of users that you want returned.
", "ListChannelMembershipsRequest$MaxResults": "The maximum number of channel memberships that you want returned.
", "ListChannelMessagesRequest$MaxResults": "The maximum number of messages that you want returned.
", "ListChannelModeratorsRequest$MaxResults": "The maximum number of moderators that you want returned.
", + "ListChannelsAssociatedWithChannelFlowRequest$MaxResults": "The maximum number of channels that you want to return.
", "ListChannelsModeratedByAppInstanceUserRequest$MaxResults": "The maximum number of channels in the request.
", "ListChannelsRequest$MaxResults": "The maximum number of channels that you want to return.
" } @@ -637,9 +854,11 @@ "base": null, "refs": { "ChannelMessage$MessageId": "The ID of a message.
", + "ChannelMessageCallback$MessageId": "The message ID.
", "ChannelMessageSummary$MessageId": "The ID of the message.
", "DeleteChannelMessageRequest$MessageId": "The ID of the message being deleted.
", "GetChannelMessageRequest$MessageId": "The ID of the message.
", + "GetChannelMessageStatusRequest$MessageId": "The ID of the message.
", "RedactChannelMessageRequest$MessageId": "The ID of the message being redacted.
", "RedactChannelMessageResponse$MessageId": "The ID of the message being redacted.
", "SendChannelMessageResponse$MessageId": "The ID string assigned to each message.
", @@ -657,7 +876,9 @@ "base": null, "refs": { "Channel$Metadata": "The channel's metadata.
", + "ChannelAssociatedWithFlowSummary$Metadata": "The channel's metadata.
", "ChannelMessage$Metadata": "The message metadata.
", + "ChannelMessageCallback$Metadata": "The message metadata.
", "ChannelMessageSummary$Metadata": "The metadata of the message.
", "ChannelSummary$Metadata": "The metadata of the channel.
", "CreateChannelRequest$Metadata": "The metadata of the creation request. Limited to 1KB and UTF-8.
", @@ -671,6 +892,8 @@ "refs": { "ListChannelBansRequest$NextToken": "The token passed by previous API calls until all requested bans are returned.
", "ListChannelBansResponse$NextToken": "The token passed by previous API calls until all requested bans are returned.
", + "ListChannelFlowsRequest$NextToken": "The token passed by previous API calls until all requested channel flows are returned.
", + "ListChannelFlowsResponse$NextToken": "The token passed by previous API calls until all requested channels are returned.
", "ListChannelMembershipsForAppInstanceUserRequest$NextToken": "The token returned from previous API requests until the number of channel memberships is reached.
", "ListChannelMembershipsForAppInstanceUserResponse$NextToken": "The token passed by previous API calls until all requested users are returned.
", "ListChannelMembershipsRequest$NextToken": "The token passed by previous API calls until all requested channel memberships are returned.
", @@ -679,6 +902,8 @@ "ListChannelMessagesResponse$NextToken": "The token passed by previous API calls until all requested messages are returned.
", "ListChannelModeratorsRequest$NextToken": "The token passed by previous API calls until all requested moderators are returned.
", "ListChannelModeratorsResponse$NextToken": "The token passed by previous API calls until all requested moderators are returned.
", + "ListChannelsAssociatedWithChannelFlowRequest$NextToken": "The token passed by previous API calls until all requested channels are returned.
", + "ListChannelsAssociatedWithChannelFlowResponse$NextToken": "The token passed by previous API calls until all requested channels are returned.
", "ListChannelsModeratedByAppInstanceUserRequest$NextToken": "The token returned from previous API requests until the number of channels moderated by the user is reached.
", "ListChannelsModeratedByAppInstanceUserResponse$NextToken": "The token returned from previous API requests until the number of channels moderated by the user is reached.
", "ListChannelsRequest$NextToken": "The token passed by previous API calls until all requested channels are returned.
", @@ -688,6 +913,7 @@ "NonEmptyContent": { "base": null, "refs": { + "ChannelMessageCallback$Content": "The message content.
", "SendChannelMessageRequest$Content": "The content of the message.
" } }, @@ -695,14 +921,21 @@ "base": null, "refs": { "Channel$Name": "The name of a channel.
", + "ChannelAssociatedWithFlowSummary$Name": "The name of the channel flow.
", + "ChannelFlow$Name": "The name of the channel flow.
", + "ChannelFlowSummary$Name": "The name of the channel flow.
", "ChannelSummary$Name": "The name of the channel.
", + "CreateChannelFlowRequest$Name": "The name of the channel flow.
", "CreateChannelRequest$Name": "The name of the channel.
", + "Processor$Name": "The name of the channel flow.
", + "UpdateChannelFlowRequest$Name": "The name of the channel flow.
", "UpdateChannelRequest$Name": "The name of the channel.
" } }, "NonNullableBoolean": { "base": null, "refs": { + "ChannelFlowCallbackRequest$DeleteResource": "When a processor determines that a message needs to be DENIED
, pass this parameter with a value of true.
Hides the content of a message.
", "ChannelMessageSummary$Redacted": "Indicates whether a message was redacted.
" } @@ -712,6 +945,27 @@ "refs": { } }, + "Processor": { + "base": "The information about a processor in a channel flow.
", + "refs": { + "ProcessorList$member": null + } + }, + "ProcessorConfiguration": { + "base": "A processor's metadata.
", + "refs": { + "Processor$Configuration": "The information about the type of processor and its identifier.
" + } + }, + "ProcessorList": { + "base": null, + "refs": { + "ChannelFlow$Processors": "Information about the processor Lambda functions.
", + "ChannelFlowSummary$Processors": "Information about the processor Lambda functions.
", + "CreateChannelFlowRequest$Processors": "Information about the processor Lambda functions.
", + "UpdateChannelFlowRequest$Processors": "Information about the processor Lambda functions
" + } + }, "RedactChannelMessageRequest": { "base": null, "refs": { @@ -759,6 +1013,12 @@ "ListChannelMessagesRequest$SortOrder": "The order in which you want messages sorted. Default is Descending, based on time created.
" } }, + "StatusDetail": { + "base": null, + "refs": { + "ChannelMessageStatusStructure$Detail": "Contains more details about the messasge status.
" + } + }, "String": { "base": null, "refs": { @@ -775,7 +1035,7 @@ } }, "Tag": { - "base": "Describes a tag applied to a resource.
", + "base": "A tag object containing a key-value pair.
", "refs": { "TagList$member": null } @@ -783,19 +1043,34 @@ "TagKey": { "base": null, "refs": { - "Tag$Key": "The key of the tag.
" + "Tag$Key": "The key in a tag.
", + "TagKeyList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$TagKeys": "The tag keys.
" } }, "TagList": { "base": null, "refs": { - "CreateChannelRequest$Tags": "The tags for the creation request.
" + "CreateChannelFlowRequest$Tags": "The tags for the creation request.
", + "CreateChannelRequest$Tags": "The tags for the creation request.
", + "ListTagsForResourceResponse$Tags": "The tag key-value pairs.
", + "TagResourceRequest$Tags": "The tag key-value pairs.
" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { } }, "TagValue": { "base": null, "refs": { - "Tag$Value": "The value of the tag.
" + "Tag$Value": "The value in a tag.
" } }, "ThrottledClientException": { @@ -811,6 +1086,8 @@ "Channel$LastMessageTimestamp": "The time at which a member sent the last message in the channel.
", "Channel$LastUpdatedTimestamp": "The time at which a channel was last updated.
", "ChannelBan$CreatedTimestamp": "The time at which the ban was created.
", + "ChannelFlow$CreatedTimestamp": "The time at which the channel flow was created.
", + "ChannelFlow$LastUpdatedTimestamp": "The time at which a channel flow was updated.
", "ChannelMembership$CreatedTimestamp": "The time at which the channel membership was created.
", "ChannelMembership$LastUpdatedTimestamp": "The time at which a channel membership was last updated.
", "ChannelMessage$CreatedTimestamp": "The time at which the message was created.
", @@ -830,6 +1107,21 @@ "refs": { } }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UpdateChannelFlowRequest": { + "base": null, + "refs": { + } + }, + "UpdateChannelFlowResponse": { + "base": null, + "refs": { + } + }, "UpdateChannelMessageRequest": { "base": null, "refs": { diff --git a/models/apis/chime-sdk-messaging/2021-05-15/paginators-1.json b/models/apis/chime-sdk-messaging/2021-05-15/paginators-1.json index f17af841290..7e174fa9bfd 100644 --- a/models/apis/chime-sdk-messaging/2021-05-15/paginators-1.json +++ b/models/apis/chime-sdk-messaging/2021-05-15/paginators-1.json @@ -5,6 +5,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListChannelFlows": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListChannelMemberships": { "input_token": "NextToken", "output_token": "NextToken", @@ -30,6 +35,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListChannelsAssociatedWithChannelFlow": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListChannelsModeratedByAppInstanceUser": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/dataexchange/2017-07-25/api-2.json b/models/apis/dataexchange/2017-07-25/api-2.json index 67eba2c0212..056b0413e44 100644 --- a/models/apis/dataexchange/2017-07-25/api-2.json +++ b/models/apis/dataexchange/2017-07-25/api-2.json @@ -116,19 +116,19 @@ }, "errors": [ { - "shape": "ValidationException" + "shape": "ResourceNotFoundException" }, { - "shape": "InternalServerException" + "shape": "ThrottlingException" }, { - "shape": "AccessDeniedException" + "shape": "ValidationException" }, { - "shape": "ResourceNotFoundException" + "shape": "InternalServerException" }, { - "shape": "ThrottlingException" + "shape": "AccessDeniedException" } ] }, @@ -815,6 +815,9 @@ "members": { "S3SnapshotAsset": { "shape": "S3SnapshotAsset" + }, + "RedshiftDataShareAsset": { + "shape": "RedshiftDataShareAsset" } } }, @@ -885,7 +888,8 @@ "AssetType": { "type": "string", "enum": [ - "S3_SNAPSHOT" + "S3_SNAPSHOT", + "REDSHIFT_DATA_SHARE" ] }, "AutoExportRevisionDestinationEntry": { @@ -1445,11 +1449,11 @@ "Encryption": { "shape": "ExportServerSideEncryption" }, - "EventActionArn": { - "shape": "__string" - }, "RevisionDestinations": { "shape": "ListOfRevisionDestinationEntry" + }, + "EventActionArn": { + "shape": "__string" } }, "required": [ @@ -1776,6 +1780,44 @@ "RevisionId" ] }, + "ImportAssetsFromRedshiftDataSharesRequestDetails": { + "type": "structure", + "members": { + "AssetSources": { + "shape": "ListOfRedshiftDataShareAssetSourceEntry" + }, + "DataSetId": { + "shape": "Id" + }, + "RevisionId": { + "shape": "Id" + } + }, + "required": [ + "DataSetId", + "AssetSources", + "RevisionId" + ] + }, + "ImportAssetsFromRedshiftDataSharesResponseDetails": { + "type": "structure", + "members": { + "AssetSources": { + "shape": "ListOfRedshiftDataShareAssetSourceEntry" + }, + "DataSetId": { + "shape": "Id" + }, + "RevisionId": { + "shape": "Id" + } + }, + "required": [ + "DataSetId", + "AssetSources", + "RevisionId" + ] + }, "ImportAssetsFromS3RequestDetails": { "type": "structure", "members": { @@ -1901,7 +1943,8 @@ "type": "string", "enum": [ "Assets per revision", - "Asset size in GB" + "Asset size in GB", + "Amazon Redshift datashare assets per revision" ] }, "JobErrorResourceTypes": { @@ -1923,13 +1966,17 @@ "Assets per import job from Amazon S3", "Asset per export job from Amazon S3", "Asset size in GB", - "Concurrent in progress jobs to import assets from Amazon S3", - "Concurrent in progress jobs to import assets from a signed URL", "Concurrent in progress jobs to export assets to Amazon S3", "Concurrent in progress jobs to export assets to a signed URL", + "Concurrent in progress jobs to import assets from Amazon S3", + "Concurrent in progress jobs to import assets from a signed URL", "Concurrent in progress jobs to export revisions to Amazon S3", "Event actions per account", - "Auto export event actions per data set" + "Auto export event actions per data set", + "Amazon Redshift datashare assets per import job from Redshift", + "Concurrent in progress jobs to import assets from Amazon Redshift datashares", + "Revisions per Amazon Redshift datashare data set", + "Amazon Redshift datashare assets per revision" ] }, "ListDataSetRevisionsRequest": { @@ -2076,6 +2123,12 @@ "shape": "AssetSourceEntry" } }, + "ListOfRedshiftDataShareAssetSourceEntry": { + "type": "list", + "member": { + "shape": "RedshiftDataShareAssetSourceEntry" + } + }, "ListOfRevisionDestinationEntry": { "type": "list", "member": { @@ -2173,6 +2226,28 @@ "ProductId" ] }, + "RedshiftDataShareAsset": { + "type": "structure", + "members": { + "Arn": { + "shape": "__string" + } + }, + "required": [ + "Arn" + ] + }, + "RedshiftDataShareAssetSourceEntry": { + "type": "structure", + "members": { + "DataShareArn": { + "shape": "__string" + } + }, + "required": [ + "DataShareArn" + ] + }, "RequestDetails": { "type": "structure", "members": { @@ -2190,6 +2265,9 @@ }, "ImportAssetsFromS3": { "shape": "ImportAssetsFromS3RequestDetails" + }, + "ImportAssetsFromRedshiftDataShares": { + "shape": "ImportAssetsFromRedshiftDataSharesRequestDetails" } } }, @@ -2241,6 +2319,9 @@ }, "ImportAssetsFromS3": { "shape": "ImportAssetsFromS3ResponseDetails" + }, + "ImportAssetsFromRedshiftDataShares": { + "shape": "ImportAssetsFromRedshiftDataSharesResponseDetails" } } }, @@ -2420,7 +2501,8 @@ "IMPORT_ASSET_FROM_SIGNED_URL", "EXPORT_ASSETS_TO_S3", "EXPORT_ASSET_TO_SIGNED_URL", - "EXPORT_REVISIONS_TO_S3" + "EXPORT_REVISIONS_TO_S3", + "IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES" ] }, "UntagResourceRequest": { diff --git a/models/apis/dataexchange/2017-07-25/docs-2.json b/models/apis/dataexchange/2017-07-25/docs-2.json index 8f846e91c15..b2dec4bc709 100644 --- a/models/apis/dataexchange/2017-07-25/docs-2.json +++ b/models/apis/dataexchange/2017-07-25/docs-2.json @@ -36,7 +36,7 @@ "refs" : { } }, "Action" : { - "base" : null, + "base" : "What occurs after a certain event.
", "refs" : { "CreateEventActionRequest$Action" : "What occurs after a certain event.
", "EventAction$Action" : "What occurs after a certain event.
", @@ -52,17 +52,17 @@ "DataSet$Arn" : "The ARN for the data set.
", "DataSetEntry$Arn" : "The ARN for the data set.
", "EventAction$Arn" : "The ARN for the event action.
", - "EventActionEntry$Arn" : "The ARN for the event action.
", + "EventActionEntry$Arn" : "The Amazon Resource Name (ARN) for the event action.
", "Job$Arn" : "The ARN for the job.
", "JobEntry$Arn" : "The ARN for the job.
", "Revision$Arn" : "The ARN for the revision.
", "RevisionEntry$Arn" : "The ARN for the revision.
", "TaggedDataSet$Arn" : "The ARN for the data set.
", - "TaggedRevision$Arn" : "The ARN for the revision
" + "TaggedRevision$Arn" : "The ARN for the revision.
" } }, "Asset" : { - "base" : "An asset in AWS Data Exchange is a piece of data that can be stored as an S3 object. The asset can be a structured data file, an image file, or some other data file. When you create an import job for your files, you create an asset in AWS Data Exchange for each of those files.
", + "base" : "An asset in AWS Data Exchange is a piece of data. The asset can be a structured data file, an image file, or some other data file that can be stored as an S3 object, or an Amazon Redshift datashare (Preview). When you create an import job for your files, you create an asset in AWS Data Exchange for each of those files.
", "refs" : { } }, "AssetDestinationEntry" : { @@ -72,14 +72,14 @@ } }, "AssetDetails" : { - "base" : null, + "base" : "Information about the asset.
", "refs" : { - "Asset$AssetDetails" : "Information about the asset, including its size.
", - "AssetEntry$AssetDetails" : "Information about the asset, including its size.
" + "Asset$AssetDetails" : "Information about the asset.
", + "AssetEntry$AssetDetails" : "Information about the asset.
" } }, "AssetEntry" : { - "base" : "An asset in AWS Data Exchange is a piece of data that can be stored as an S3 object. The asset can be a structured data file, an image file, or some other data file. When you create an import job for your files, you create an asset in AWS Data Exchange for each of those files.
", + "base" : "An asset in AWS Data Exchange is a piece of data. The asset can be a structured data file, an image file, or some other data file that can be stored as an S3 object, or an Amazon Redshift datashare (Preview). When you create an import job for your files, you create an asset in AWS Data Exchange for each of those files.
", "refs" : { "ListOfAssetEntry$member" : null } @@ -87,11 +87,11 @@ "AssetName" : { "base" : "The name of the asset. When importing from Amazon S3, the S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target S3 object key.
", "refs" : { - "Asset$Name" : "The name of the asset When importing from Amazon S3, the S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target S3 object key.
", + "Asset$Name" : "The name of the asset. When importing from Amazon S3, the S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target S3 object key.
", "AssetEntry$Name" : "The name of the asset. When importing from Amazon S3, the S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target S3 object key.
", - "ImportAssetFromSignedUrlJobErrorDetails$AssetName" : null, + "ImportAssetFromSignedUrlJobErrorDetails$AssetName" : "Information about the job error.
", "ImportAssetFromSignedUrlRequestDetails$AssetName" : "The name of the asset. When importing from Amazon S3, the S3 object key is used as the asset name.
", - "ImportAssetFromSignedUrlResponseDetails$AssetName" : "The name for the asset associated with this import response.
", + "ImportAssetFromSignedUrlResponseDetails$AssetName" : "The name for the asset associated with this import job.
", "UpdateAssetRequest$Name" : "The name of the asset. When importing from Amazon S3, the S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target S3 object key.
" } }, @@ -102,26 +102,26 @@ } }, "AssetType" : { - "base" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
", + "base" : "The type of asset that is added to a data set.
", "refs" : { - "Asset$AssetType" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
", - "AssetEntry$AssetType" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
", - "CreateDataSetRequest$AssetType" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
", - "DataSet$AssetType" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
", - "DataSetEntry$AssetType" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
", - "TaggedDataSet$AssetType" : "The type of file your data is stored in. Currently, the supported asset type is S3_SNAPSHOT.
" + "Asset$AssetType" : "The type of asset that is added to a data set.
", + "AssetEntry$AssetType" : "The type of asset that is added to a data set.
", + "CreateDataSetRequest$AssetType" : "The type of asset that is added to a data set.
", + "DataSet$AssetType" : "The type of asset that is added to a data set.
", + "DataSetEntry$AssetType" : "The type of asset that is added to a data set.
", + "TaggedDataSet$AssetType" : "The type of asset that is added to a data set.
" } }, "AutoExportRevisionDestinationEntry" : { "base" : "A revision destination is the Amazon S3 bucket folder destination to where the export will be sent.
", "refs" : { - "AutoExportRevisionToS3RequestDetails$RevisionDestination" : null + "AutoExportRevisionToS3RequestDetails$RevisionDestination" : "A revision destination is the Amazon S3 bucket folder destination to where the export will be sent.
" } }, "AutoExportRevisionToS3RequestDetails" : { "base" : "Details of the operation to be performed by the job.
", "refs" : { - "Action$ExportRevisionToS3" : null + "Action$ExportRevisionToS3" : "Details for the export revision to Amazon S3 action.
" } }, "Code" : { @@ -171,13 +171,13 @@ } }, "Details" : { - "base" : null, + "base" : "Information about the job error.
", "refs" : { - "JobError$Details" : null + "JobError$Details" : "The details about the job error.
" } }, "Event" : { - "base" : null, + "base" : "What occurs to start an action.
", "refs" : { "CreateEventActionRequest$Event" : "What occurs to start an action.
", "EventAction$Event" : "What occurs to start an action.
", @@ -239,7 +239,7 @@ "ExportServerSideEncryption" : { "base" : "Encryption configuration of the export job. Includes the encryption type in addition to the AWS KMS key. The KMS key is only necessary if you chose the KMS encryption. type.
", "refs" : { - "AutoExportRevisionToS3RequestDetails$Encryption" : null, + "AutoExportRevisionToS3RequestDetails$Encryption" : "Encryption configuration for the auto export job.
", "ExportAssetsToS3RequestDetails$Encryption" : "Encryption configuration for the export job.
", "ExportAssetsToS3ResponseDetails$Encryption" : "Encryption configuration of the export job.
", "ExportRevisionsToS3RequestDetails$Encryption" : "Encryption configuration for the export job.
", @@ -280,6 +280,10 @@ "ImportAssetFromSignedUrlRequestDetails$RevisionId" : "The unique identifier for the revision associated with this import request.
", "ImportAssetFromSignedUrlResponseDetails$DataSetId" : "The unique identifier for the data set associated with this import job.
", "ImportAssetFromSignedUrlResponseDetails$RevisionId" : "The unique identifier for the revision associated with this import response.
", + "ImportAssetsFromRedshiftDataSharesRequestDetails$DataSetId" : "The unique identifier for the data set associated with this import job.", + "ImportAssetsFromRedshiftDataSharesRequestDetails$RevisionId" : "The unique identifier for the revision associated with this import job.", + "ImportAssetsFromRedshiftDataSharesResponseDetails$DataSetId" : "The unique identifier for the data set associated with this import job.", + "ImportAssetsFromRedshiftDataSharesResponseDetails$RevisionId" : "The unique identifier for the revision associated with this import job.", "ImportAssetsFromS3RequestDetails$DataSetId" : "The unique identifier for the data set associated with this import job.
", "ImportAssetsFromS3RequestDetails$RevisionId" : "The unique identifier for the revision associated with this import request.
", "ImportAssetsFromS3ResponseDetails$DataSetId" : "The unique identifier for the data set associated with this import job.
", @@ -293,7 +297,7 @@ "RevisionEntry$DataSetId" : "The unique identifier for the data set associated with this revision.
", "RevisionEntry$Id" : "The unique identifier for the revision.
", "RevisionEntry$SourceId" : "The revision ID of the owned revision corresponding to the entitled revision being viewed. This parameter is returned when a revision owner is viewing the entitled copy of its owned revision.
", - "RevisionPublished$DataSetId" : null, + "RevisionPublished$DataSetId" : "The data set ID of the published revision.
", "TaggedDataSet$Id" : "The unique identifier for the data set.
", "TaggedDataSet$SourceId" : "The data set ID of the owned data set corresponding to the entitled data set being viewed. This parameter is returned when a data set owner is viewing the entitled copy of its owned data set.
", "TaggedRevision$DataSetId" : "The unique identifier for the data set associated with this revision.
", @@ -302,9 +306,9 @@ } }, "ImportAssetFromSignedUrlJobErrorDetails" : { - "base" : null, + "base" : "Information about the job error.
", "refs" : { - "Details$ImportAssetFromSignedUrlJobErrorDetails" : null + "Details$ImportAssetFromSignedUrlJobErrorDetails" : "Information about the job error.
" } }, "ImportAssetFromSignedUrlRequestDetails" : { @@ -319,6 +323,18 @@ "ResponseDetails$ImportAssetFromSignedUrl" : "Details for the import from signed URL response.
" } }, + "ImportAssetsFromRedshiftDataSharesRequestDetails" : { + "base" : "Details from an import from Amazon Redshift datashare request.", + "refs" : { + "RequestDetails$ImportAssetsFromRedshiftDataShares" : "Details from an import from Amazon Redshift datashare request.
" + } + }, + "ImportAssetsFromRedshiftDataSharesResponseDetails" : { + "base" : "Details from an import from Amazon Redshift datashare response.", + "refs" : { + "ResponseDetails$ImportAssetsFromRedshiftDataShares" : "Details from an import from Amazon Redshift datashare response.
" + } + }, "ImportAssetsFromS3RequestDetails" : { "base" : "Details of the operation to be performed by the job.
", "refs" : { @@ -379,7 +395,7 @@ "ListOfAssetSourceEntry" : { "base" : "The list of sources for the assets.
", "refs" : { - "Details$ImportAssetsFromS3JobErrorDetails" : null, + "Details$ImportAssetsFromS3JobErrorDetails" : "Information about the job error.
", "ImportAssetsFromS3RequestDetails$AssetSources" : "Is a list of S3 bucket and object key pairs.
", "ImportAssetsFromS3ResponseDetails$AssetSources" : "Is a list of Amazon S3 bucket and object key pairs.
" } @@ -393,13 +409,20 @@ "refs" : { } }, "ListOfEventActions" : { - "base" : "The event entry oobjects listed by the request.
", + "base" : "The event entry objects listed by the request.
", "refs" : { } }, "ListOfJobs" : { "base" : "The token value retrieved from a previous call to access the next page of results.
", "refs" : { } }, + "ListOfRedshiftDataShareAssetSourceEntry" : { + "base" : "A list of Amazon Redshift datashare asset sources.", + "refs" : { + "ImportAssetsFromRedshiftDataSharesRequestDetails$AssetSources" : "A list of Amazon Redshift datashare assets.", + "ImportAssetsFromRedshiftDataSharesResponseDetails$AssetSources" : "A list of Amazon Redshift datashare asset sources." + } + }, "ListOfRevisionDestinationEntry" : { "base" : "The destination where the assets in the revision will be exported.
", "refs" : { @@ -440,13 +463,25 @@ } }, "OriginDetails" : { - "base" : null, + "base" : "Information about the origin of the data set.
", "refs" : { "DataSet$OriginDetails" : "If the origin of this data set is ENTITLED, includes the details for the product on AWS Marketplace.
", "DataSetEntry$OriginDetails" : "If the origin of this data set is ENTITLED, includes the details for the product on AWS Marketplace.
", "TaggedDataSet$OriginDetails" : "If the origin of this data set is ENTITLED, includes the details for the product on AWS Marketplace.
" } }, + "RedshiftDataShareAsset" : { + "base" : "The Amazon Redshift datashare asset.", + "refs" : { + "AssetDetails$RedshiftDataShareAsset" : "The Amazon Redshift datashare that is the asset.
" + } + }, + "RedshiftDataShareAssetSourceEntry" : { + "base" : "The source of the Amazon Redshift datashare asset.
", + "refs" : { + "ListOfRedshiftDataShareAssetSourceEntry$member" : null + } + }, "RequestDetails" : { "base" : "The details for the request.
", "refs" : { @@ -488,15 +523,15 @@ } }, "RevisionPublished" : { - "base" : null, + "base" : "Information about the published revision.
", "refs" : { - "Event$RevisionPublished" : null + "Event$RevisionPublished" : "What occurs to start the revision publish action.
" } }, "S3SnapshotAsset" : { "base" : "The S3 object that is the asset.
", "refs" : { - "AssetDetails$S3SnapshotAsset" : null + "AssetDetails$S3SnapshotAsset" : "The S3 object that is the asset.
" } }, "ServerSideEncryptionTypes" : { @@ -677,13 +712,15 @@ "ConflictException$Message" : "The request couldn't be completed because it conflicted with the current state of the resource.
", "ConflictException$ResourceId" : "The unique identifier for the resource with the conflict.
", "ExportAssetToSignedUrlResponseDetails$SignedUrl" : "The signed URL for the export request.
", - "ExportRevisionsToS3ResponseDetails$EventActionArn": "The ARN for the event action.
", + "ExportRevisionsToS3ResponseDetails$EventActionArn" : "The Amazon Resource Name (ARN) of the event action.
", "ExportServerSideEncryption$KmsKeyArn" : "The Amazon Resource Name (ARN) of the AWS KMS key you want to use to encrypt the Amazon S3 objects. This parameter is required if you choose aws:kms as an encryption type.
", "ImportAssetFromSignedUrlResponseDetails$SignedUrl" : "The signed URL.
", "InternalServerException$Message" : "The message identifying the service exception that occurred.", "JobError$Message" : "The message related to the job error.", "JobError$ResourceId" : "The unique identifier for the resource related to the error.", - "OriginDetails$ProductId" : null, + "OriginDetails$ProductId" : "The product ID of the origin of the data set.
", + "RedshiftDataShareAsset$Arn" : "The Amazon Resource Name (ARN) of the datashare asset.", + "RedshiftDataShareAssetSourceEntry$DataShareArn" : "The Amazon Resource Name (ARN) of the datashare asset.", "ResourceNotFoundException$Message" : "The resource couldn't be found.
", "ResourceNotFoundException$ResourceId" : "The unique identifier for the resource that couldn't be found.
", "RevisionDestinationEntry$Bucket" : "The S3 bucket that is the destination for the assets in the revision.
", diff --git a/service/chimesdkmessaging/api.go b/service/chimesdkmessaging/api.go index f5810462409..94b8e6e5f95 100644 --- a/service/chimesdkmessaging/api.go +++ b/service/chimesdkmessaging/api.go @@ -13,6 +13,114 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opAssociateChannelFlow = "AssociateChannelFlow" + +// AssociateChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the AssociateChannelFlow operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See AssociateChannelFlow for more information on using the AssociateChannelFlow +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the AssociateChannelFlowRequest method. +// req, resp := client.AssociateChannelFlowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/AssociateChannelFlow +func (c *ChimeSDKMessaging) AssociateChannelFlowRequest(input *AssociateChannelFlowInput) (req *request.Request, output *AssociateChannelFlowOutput) { + op := &request.Operation{ + Name: opAssociateChannelFlow, + HTTPMethod: "PUT", + HTTPPath: "/channels/{channelArn}/channel-flow", + } + + if input == nil { + input = &AssociateChannelFlowInput{} + } + + output = &AssociateChannelFlowOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// AssociateChannelFlow API operation for Amazon Chime SDK Messaging. +// +// Associates a channel flow with a channel. Once associated, all messages to +// that channel go through channel flow processors. To stop processing, use +// the DisassociateChannelFlow API. +// +// Only administrators or channel moderators can associate a channel flow. The +// x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation AssociateChannelFlow for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/AssociateChannelFlow +func (c *ChimeSDKMessaging) AssociateChannelFlow(input *AssociateChannelFlowInput) (*AssociateChannelFlowOutput, error) { + req, out := c.AssociateChannelFlowRequest(input) + return out, req.Send() +} + +// AssociateChannelFlowWithContext is the same as AssociateChannelFlow with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateChannelFlow for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) AssociateChannelFlowWithContext(ctx aws.Context, input *AssociateChannelFlowInput, opts ...request.Option) (*AssociateChannelFlowOutput, error) { + req, out := c.AssociateChannelFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchCreateChannelMembership = "BatchCreateChannelMembership" // BatchCreateChannelMembershipRequest generates a "aws/request.Request" representing the @@ -107,6 +215,113 @@ func (c *ChimeSDKMessaging) BatchCreateChannelMembershipWithContext(ctx aws.Cont return out, req.Send() } +const opChannelFlowCallback = "ChannelFlowCallback" + +// ChannelFlowCallbackRequest generates a "aws/request.Request" representing the +// client's request for the ChannelFlowCallback operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ChannelFlowCallback for more information on using the ChannelFlowCallback +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ChannelFlowCallbackRequest method. +// req, resp := client.ChannelFlowCallbackRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ChannelFlowCallback +func (c *ChimeSDKMessaging) ChannelFlowCallbackRequest(input *ChannelFlowCallbackInput) (req *request.Request, output *ChannelFlowCallbackOutput) { + op := &request.Operation{ + Name: opChannelFlowCallback, + HTTPMethod: "POST", + HTTPPath: "/channels/{channelArn}?operation=channel-flow-callback", + } + + if input == nil { + input = &ChannelFlowCallbackInput{} + } + + output = &ChannelFlowCallbackOutput{} + req = c.newRequest(op, input, output) + return +} + +// ChannelFlowCallback API operation for Amazon Chime SDK Messaging. +// +// Calls back Chime SDK Messaging with a processing response message. This should +// be invoked from the processor Lambda. This is a developer API. +// +// You can return one of the following processing responses: +// +// * Update message content or metadata +// +// * Deny a message +// +// * Make no changes to the message +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation ChannelFlowCallback for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ChannelFlowCallback +func (c *ChimeSDKMessaging) ChannelFlowCallback(input *ChannelFlowCallbackInput) (*ChannelFlowCallbackOutput, error) { + req, out := c.ChannelFlowCallbackRequest(input) + return out, req.Send() +} + +// ChannelFlowCallbackWithContext is the same as ChannelFlowCallback with the addition of +// the ability to pass a context and additional request options. +// +// See ChannelFlowCallback for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) ChannelFlowCallbackWithContext(ctx aws.Context, input *ChannelFlowCallbackInput, opts ...request.Option) (*ChannelFlowCallbackOutput, error) { + req, out := c.ChannelFlowCallbackRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateChannel = "CreateChannel" // CreateChannelRequest generates a "aws/request.Request" representing the @@ -322,6 +537,124 @@ func (c *ChimeSDKMessaging) CreateChannelBanWithContext(ctx aws.Context, input * return out, req.Send() } +const opCreateChannelFlow = "CreateChannelFlow" + +// CreateChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the CreateChannelFlow operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateChannelFlow for more information on using the CreateChannelFlow +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateChannelFlowRequest method. +// req, resp := client.CreateChannelFlowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelFlow +func (c *ChimeSDKMessaging) CreateChannelFlowRequest(input *CreateChannelFlowInput) (req *request.Request, output *CreateChannelFlowOutput) { + op := &request.Operation{ + Name: opCreateChannelFlow, + HTTPMethod: "POST", + HTTPPath: "/channel-flows", + } + + if input == nil { + input = &CreateChannelFlowInput{} + } + + output = &CreateChannelFlowOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateChannelFlow API operation for Amazon Chime SDK Messaging. +// +// Creates a channel flow, a container for processors. Processors are AWS Lambda +// functions that perform actions on chat messages, such as stripping out profanity. +// You can associate channel flows with channels, and the processors in the +// channel flow then take action on all messages sent to that channel. This +// is a developer API. +// +// Channel flows process the following items: +// +// New and updated messages +// +// Persistent and non-persistent messages +// +// The Standard message type +// +// Channel flows don't process Control or System messages. For more information +// about the message types provided by Chime SDK Messaging, refer to Message +// types (https://docs.aws.amazon.com/chime/latest/dg/using-the-messaging-sdk.html#msg-types) +// in the Amazon Chime developer guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation CreateChannelFlow for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ResourceLimitExceededException +// The request exceeds the resource limit. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelFlow +func (c *ChimeSDKMessaging) CreateChannelFlow(input *CreateChannelFlowInput) (*CreateChannelFlowOutput, error) { + req, out := c.CreateChannelFlowRequest(input) + return out, req.Send() +} + +// CreateChannelFlowWithContext is the same as CreateChannelFlow with the addition of +// the ability to pass a context and additional request options. +// +// See CreateChannelFlow for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) CreateChannelFlowWithContext(ctx aws.Context, input *CreateChannelFlowInput, opts ...request.Option) (*CreateChannelFlowOutput, error) { + req, out := c.CreateChannelFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateChannelMembership = "CreateChannelMembership" // CreateChannelMembershipRequest generates a "aws/request.Request" representing the @@ -755,37 +1088,141 @@ func (c *ChimeSDKMessaging) DeleteChannelBanWithContext(ctx aws.Context, input * return out, req.Send() } -const opDeleteChannelMembership = "DeleteChannelMembership" +const opDeleteChannelFlow = "DeleteChannelFlow" -// DeleteChannelMembershipRequest generates a "aws/request.Request" representing the -// client's request for the DeleteChannelMembership operation. The "output" return +// DeleteChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the DeleteChannelFlow operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DeleteChannelMembership for more information on using the DeleteChannelMembership +// See DeleteChannelFlow for more information on using the DeleteChannelFlow // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the DeleteChannelMembershipRequest method. -// req, resp := client.DeleteChannelMembershipRequest(params) +// // Example sending a request using the DeleteChannelFlowRequest method. +// req, resp := client.DeleteChannelFlowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelMembership -func (c *ChimeSDKMessaging) DeleteChannelMembershipRequest(input *DeleteChannelMembershipInput) (req *request.Request, output *DeleteChannelMembershipOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelFlow +func (c *ChimeSDKMessaging) DeleteChannelFlowRequest(input *DeleteChannelFlowInput) (req *request.Request, output *DeleteChannelFlowOutput) { op := &request.Operation{ - Name: opDeleteChannelMembership, + Name: opDeleteChannelFlow, HTTPMethod: "DELETE", - HTTPPath: "/channels/{channelArn}/memberships/{memberArn}", + HTTPPath: "/channel-flows/{channelFlowArn}", + } + + if input == nil { + input = &DeleteChannelFlowInput{} + } + + output = &DeleteChannelFlowOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteChannelFlow API operation for Amazon Chime SDK Messaging. +// +// Deletes a channel flow, an irreversible process. This is a developer API. +// +// This API works only when the channel flow is not associated with any channel. +// To get a list of all channels that a channel flow is associated with, use +// the ListChannelsAssociatedWithChannelFlow API. Use the DisassociateChannelFlow +// API to disassociate a channel flow from all channels. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation DeleteChannelFlow for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelFlow +func (c *ChimeSDKMessaging) DeleteChannelFlow(input *DeleteChannelFlowInput) (*DeleteChannelFlowOutput, error) { + req, out := c.DeleteChannelFlowRequest(input) + return out, req.Send() +} + +// DeleteChannelFlowWithContext is the same as DeleteChannelFlow with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteChannelFlow for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) DeleteChannelFlowWithContext(ctx aws.Context, input *DeleteChannelFlowInput, opts ...request.Option) (*DeleteChannelFlowOutput, error) { + req, out := c.DeleteChannelFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteChannelMembership = "DeleteChannelMembership" + +// DeleteChannelMembershipRequest generates a "aws/request.Request" representing the +// client's request for the DeleteChannelMembership operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteChannelMembership for more information on using the DeleteChannelMembership +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteChannelMembershipRequest method. +// req, resp := client.DeleteChannelMembershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelMembership +func (c *ChimeSDKMessaging) DeleteChannelMembershipRequest(input *DeleteChannelMembershipInput) (req *request.Request, output *DeleteChannelMembershipOutput) { + op := &request.Operation{ + Name: opDeleteChannelMembership, + HTTPMethod: "DELETE", + HTTPPath: "/channels/{channelArn}/memberships/{memberArn}", } if input == nil { @@ -1252,6 +1689,101 @@ func (c *ChimeSDKMessaging) DescribeChannelBanWithContext(ctx aws.Context, input return out, req.Send() } +const opDescribeChannelFlow = "DescribeChannelFlow" + +// DescribeChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the DescribeChannelFlow operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeChannelFlow for more information on using the DescribeChannelFlow +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DescribeChannelFlowRequest method. +// req, resp := client.DescribeChannelFlowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelFlow +func (c *ChimeSDKMessaging) DescribeChannelFlowRequest(input *DescribeChannelFlowInput) (req *request.Request, output *DescribeChannelFlowOutput) { + op := &request.Operation{ + Name: opDescribeChannelFlow, + HTTPMethod: "GET", + HTTPPath: "/channel-flows/{channelFlowArn}", + } + + if input == nil { + input = &DescribeChannelFlowInput{} + } + + output = &DescribeChannelFlowOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeChannelFlow API operation for Amazon Chime SDK Messaging. +// +// Returns the full details of a channel flow in an Amazon Chime AppInstance. +// This is a developer API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation DescribeChannelFlow for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelFlow +func (c *ChimeSDKMessaging) DescribeChannelFlow(input *DescribeChannelFlowInput) (*DescribeChannelFlowOutput, error) { + req, out := c.DescribeChannelFlowRequest(input) + return out, req.Send() +} + +// DescribeChannelFlowWithContext is the same as DescribeChannelFlow with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeChannelFlow for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) DescribeChannelFlowWithContext(ctx aws.Context, input *DescribeChannelFlowInput, opts ...request.Option) (*DescribeChannelFlowOutput, error) { + req, out := c.DescribeChannelFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeChannelMembership = "DescribeChannelMembership" // DescribeChannelMembershipRequest generates a "aws/request.Request" representing the @@ -1647,52 +2179,55 @@ func (c *ChimeSDKMessaging) DescribeChannelModeratorWithContext(ctx aws.Context, return out, req.Send() } -const opGetChannelMessage = "GetChannelMessage" +const opDisassociateChannelFlow = "DisassociateChannelFlow" -// GetChannelMessageRequest generates a "aws/request.Request" representing the -// client's request for the GetChannelMessage operation. The "output" return +// DisassociateChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateChannelFlow operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetChannelMessage for more information on using the GetChannelMessage +// See DisassociateChannelFlow for more information on using the DisassociateChannelFlow // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetChannelMessageRequest method. -// req, resp := client.GetChannelMessageRequest(params) +// // Example sending a request using the DisassociateChannelFlowRequest method. +// req, resp := client.DisassociateChannelFlowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessage -func (c *ChimeSDKMessaging) GetChannelMessageRequest(input *GetChannelMessageInput) (req *request.Request, output *GetChannelMessageOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DisassociateChannelFlow +func (c *ChimeSDKMessaging) DisassociateChannelFlowRequest(input *DisassociateChannelFlowInput) (req *request.Request, output *DisassociateChannelFlowOutput) { op := &request.Operation{ - Name: opGetChannelMessage, - HTTPMethod: "GET", - HTTPPath: "/channels/{channelArn}/messages/{messageId}", + Name: opDisassociateChannelFlow, + HTTPMethod: "DELETE", + HTTPPath: "/channels/{channelArn}/channel-flow/{channelFlowArn}", } if input == nil { - input = &GetChannelMessageInput{} + input = &DisassociateChannelFlowInput{} } - output = &GetChannelMessageOutput{} + output = &DisassociateChannelFlowOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// GetChannelMessage API operation for Amazon Chime SDK Messaging. +// DisassociateChannelFlow API operation for Amazon Chime SDK Messaging. // -// Gets the full details of a channel message. +// Disassociates a channel flow from all its channels. Once disassociated, all +// messages to that channel stop going through the channel flow processor. // +// Only administrators or channel moderators can disassociate a channel flow. // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn // of the user that makes the API call as the value in the header. // @@ -1701,7 +2236,7 @@ func (c *ChimeSDKMessaging) GetChannelMessageRequest(input *GetChannelMessageInp // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation GetChannelMessage for usage and error information. +// API operation DisassociateChannelFlow for usage and error information. // // Returned Error Types: // * BadRequestException @@ -1716,6 +2251,10 @@ func (c *ChimeSDKMessaging) GetChannelMessageRequest(input *GetChannelMessageInp // * UnauthorizedClientException // The client is not currently authorized to make the request. // +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// // * ThrottledClientException // The client exceeded its request rate limit. // @@ -1725,88 +2264,97 @@ func (c *ChimeSDKMessaging) GetChannelMessageRequest(input *GetChannelMessageInp // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessage -func (c *ChimeSDKMessaging) GetChannelMessage(input *GetChannelMessageInput) (*GetChannelMessageOutput, error) { - req, out := c.GetChannelMessageRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DisassociateChannelFlow +func (c *ChimeSDKMessaging) DisassociateChannelFlow(input *DisassociateChannelFlowInput) (*DisassociateChannelFlowOutput, error) { + req, out := c.DisassociateChannelFlowRequest(input) return out, req.Send() } -// GetChannelMessageWithContext is the same as GetChannelMessage with the addition of +// DisassociateChannelFlowWithContext is the same as DisassociateChannelFlow with the addition of // the ability to pass a context and additional request options. // -// See GetChannelMessage for details on how to use this API operation. +// See DisassociateChannelFlow for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) GetChannelMessageWithContext(ctx aws.Context, input *GetChannelMessageInput, opts ...request.Option) (*GetChannelMessageOutput, error) { - req, out := c.GetChannelMessageRequest(input) +func (c *ChimeSDKMessaging) DisassociateChannelFlowWithContext(ctx aws.Context, input *DisassociateChannelFlowInput, opts ...request.Option) (*DisassociateChannelFlowOutput, error) { + req, out := c.DisassociateChannelFlowRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetMessagingSessionEndpoint = "GetMessagingSessionEndpoint" +const opGetChannelMessage = "GetChannelMessage" -// GetMessagingSessionEndpointRequest generates a "aws/request.Request" representing the -// client's request for the GetMessagingSessionEndpoint operation. The "output" return +// GetChannelMessageRequest generates a "aws/request.Request" representing the +// client's request for the GetChannelMessage operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetMessagingSessionEndpoint for more information on using the GetMessagingSessionEndpoint +// See GetChannelMessage for more information on using the GetChannelMessage // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetMessagingSessionEndpointRequest method. -// req, resp := client.GetMessagingSessionEndpointRequest(params) +// // Example sending a request using the GetChannelMessageRequest method. +// req, resp := client.GetChannelMessageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetMessagingSessionEndpoint -func (c *ChimeSDKMessaging) GetMessagingSessionEndpointRequest(input *GetMessagingSessionEndpointInput) (req *request.Request, output *GetMessagingSessionEndpointOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessage +func (c *ChimeSDKMessaging) GetChannelMessageRequest(input *GetChannelMessageInput) (req *request.Request, output *GetChannelMessageOutput) { op := &request.Operation{ - Name: opGetMessagingSessionEndpoint, + Name: opGetChannelMessage, HTTPMethod: "GET", - HTTPPath: "/endpoints/messaging-session", + HTTPPath: "/channels/{channelArn}/messages/{messageId}", } if input == nil { - input = &GetMessagingSessionEndpointInput{} + input = &GetChannelMessageInput{} } - output = &GetMessagingSessionEndpointOutput{} + output = &GetChannelMessageOutput{} req = c.newRequest(op, input, output) return } -// GetMessagingSessionEndpoint API operation for Amazon Chime SDK Messaging. +// GetChannelMessage API operation for Amazon Chime SDK Messaging. // -// The details of the endpoint for the messaging session. +// Gets the full details of a channel message. +// +// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation GetMessagingSessionEndpoint for usage and error information. +// API operation GetChannelMessage for usage and error information. // // Returned Error Types: -// * UnauthorizedClientException -// The client is not currently authorized to make the request. +// * BadRequestException +// The input parameters don't match the service's restrictions. // // * ForbiddenException // The client is permanently forbidden from making the request. // +// * NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// // * ThrottledClientException // The client exceeded its request rate limit. // @@ -1816,59 +2364,273 @@ func (c *ChimeSDKMessaging) GetMessagingSessionEndpointRequest(input *GetMessagi // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetMessagingSessionEndpoint -func (c *ChimeSDKMessaging) GetMessagingSessionEndpoint(input *GetMessagingSessionEndpointInput) (*GetMessagingSessionEndpointOutput, error) { - req, out := c.GetMessagingSessionEndpointRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessage +func (c *ChimeSDKMessaging) GetChannelMessage(input *GetChannelMessageInput) (*GetChannelMessageOutput, error) { + req, out := c.GetChannelMessageRequest(input) return out, req.Send() } -// GetMessagingSessionEndpointWithContext is the same as GetMessagingSessionEndpoint with the addition of +// GetChannelMessageWithContext is the same as GetChannelMessage with the addition of // the ability to pass a context and additional request options. // -// See GetMessagingSessionEndpoint for details on how to use this API operation. +// See GetChannelMessage for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) GetMessagingSessionEndpointWithContext(ctx aws.Context, input *GetMessagingSessionEndpointInput, opts ...request.Option) (*GetMessagingSessionEndpointOutput, error) { - req, out := c.GetMessagingSessionEndpointRequest(input) +func (c *ChimeSDKMessaging) GetChannelMessageWithContext(ctx aws.Context, input *GetChannelMessageInput, opts ...request.Option) (*GetChannelMessageOutput, error) { + req, out := c.GetChannelMessageRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListChannelBans = "ListChannelBans" +const opGetChannelMessageStatus = "GetChannelMessageStatus" -// ListChannelBansRequest generates a "aws/request.Request" representing the -// client's request for the ListChannelBans operation. The "output" return +// GetChannelMessageStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetChannelMessageStatus operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListChannelBans for more information on using the ListChannelBans +// See GetChannelMessageStatus for more information on using the GetChannelMessageStatus // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListChannelBansRequest method. -// req, resp := client.ListChannelBansRequest(params) +// // Example sending a request using the GetChannelMessageStatusRequest method. +// req, resp := client.GetChannelMessageStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelBans -func (c *ChimeSDKMessaging) ListChannelBansRequest(input *ListChannelBansInput) (req *request.Request, output *ListChannelBansOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessageStatus +func (c *ChimeSDKMessaging) GetChannelMessageStatusRequest(input *GetChannelMessageStatusInput) (req *request.Request, output *GetChannelMessageStatusOutput) { op := &request.Operation{ - Name: opListChannelBans, + Name: opGetChannelMessageStatus, HTTPMethod: "GET", - HTTPPath: "/channels/{channelArn}/bans", + HTTPPath: "/channels/{channelArn}/messages/{messageId}?scope=message-status", + } + + if input == nil { + input = &GetChannelMessageStatusInput{} + } + + output = &GetChannelMessageStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetChannelMessageStatus API operation for Amazon Chime SDK Messaging. +// +// Gets message status for a specified messageId. Use this API to determine +// the intermediate status of messages going through channel flow processing. +// The API provides an alternative to retrieving message status if the event +// was not received because a client wasn't connected to a websocket. +// +// Messages can have any one of these statuses. +// +// SENT +// +// Message processed successfully +// +// PENDING +// +// Ongoing processing +// +// FAILED +// +// Processing failed +// +// DENIED +// +// Messasge denied by the processor +// +// * This API does not return statuses for denied messages, because we don't +// store them once the processor denies them. +// +// * Only the message sender can invoke this API. +// +// * The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation GetChannelMessageStatus for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessageStatus +func (c *ChimeSDKMessaging) GetChannelMessageStatus(input *GetChannelMessageStatusInput) (*GetChannelMessageStatusOutput, error) { + req, out := c.GetChannelMessageStatusRequest(input) + return out, req.Send() +} + +// GetChannelMessageStatusWithContext is the same as GetChannelMessageStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetChannelMessageStatus for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) GetChannelMessageStatusWithContext(ctx aws.Context, input *GetChannelMessageStatusInput, opts ...request.Option) (*GetChannelMessageStatusOutput, error) { + req, out := c.GetChannelMessageStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetMessagingSessionEndpoint = "GetMessagingSessionEndpoint" + +// GetMessagingSessionEndpointRequest generates a "aws/request.Request" representing the +// client's request for the GetMessagingSessionEndpoint operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetMessagingSessionEndpoint for more information on using the GetMessagingSessionEndpoint +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetMessagingSessionEndpointRequest method. +// req, resp := client.GetMessagingSessionEndpointRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetMessagingSessionEndpoint +func (c *ChimeSDKMessaging) GetMessagingSessionEndpointRequest(input *GetMessagingSessionEndpointInput) (req *request.Request, output *GetMessagingSessionEndpointOutput) { + op := &request.Operation{ + Name: opGetMessagingSessionEndpoint, + HTTPMethod: "GET", + HTTPPath: "/endpoints/messaging-session", + } + + if input == nil { + input = &GetMessagingSessionEndpointInput{} + } + + output = &GetMessagingSessionEndpointOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetMessagingSessionEndpoint API operation for Amazon Chime SDK Messaging. +// +// The details of the endpoint for the messaging session. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation GetMessagingSessionEndpoint for usage and error information. +// +// Returned Error Types: +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetMessagingSessionEndpoint +func (c *ChimeSDKMessaging) GetMessagingSessionEndpoint(input *GetMessagingSessionEndpointInput) (*GetMessagingSessionEndpointOutput, error) { + req, out := c.GetMessagingSessionEndpointRequest(input) + return out, req.Send() +} + +// GetMessagingSessionEndpointWithContext is the same as GetMessagingSessionEndpoint with the addition of +// the ability to pass a context and additional request options. +// +// See GetMessagingSessionEndpoint for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) GetMessagingSessionEndpointWithContext(ctx aws.Context, input *GetMessagingSessionEndpointInput, opts ...request.Option) (*GetMessagingSessionEndpointOutput, error) { + req, out := c.GetMessagingSessionEndpointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListChannelBans = "ListChannelBans" + +// ListChannelBansRequest generates a "aws/request.Request" representing the +// client's request for the ListChannelBans operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListChannelBans for more information on using the ListChannelBans +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListChannelBansRequest method. +// req, resp := client.ListChannelBansRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelBans +func (c *ChimeSDKMessaging) ListChannelBansRequest(input *ListChannelBansInput) (req *request.Request, output *ListChannelBansOutput) { + op := &request.Operation{ + Name: opListChannelBans, + HTTPMethod: "GET", + HTTPPath: "/channels/{channelArn}/bans", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -1993,37 +2755,37 @@ func (c *ChimeSDKMessaging) ListChannelBansPagesWithContext(ctx aws.Context, inp return p.Err() } -const opListChannelMemberships = "ListChannelMemberships" +const opListChannelFlows = "ListChannelFlows" -// ListChannelMembershipsRequest generates a "aws/request.Request" representing the -// client's request for the ListChannelMemberships operation. The "output" return +// ListChannelFlowsRequest generates a "aws/request.Request" representing the +// client's request for the ListChannelFlows operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListChannelMemberships for more information on using the ListChannelMemberships +// See ListChannelFlows for more information on using the ListChannelFlows // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListChannelMembershipsRequest method. -// req, resp := client.ListChannelMembershipsRequest(params) +// // Example sending a request using the ListChannelFlowsRequest method. +// req, resp := client.ListChannelFlowsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMemberships -func (c *ChimeSDKMessaging) ListChannelMembershipsRequest(input *ListChannelMembershipsInput) (req *request.Request, output *ListChannelMembershipsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelFlows +func (c *ChimeSDKMessaging) ListChannelFlowsRequest(input *ListChannelFlowsInput) (req *request.Request, output *ListChannelFlowsOutput) { op := &request.Operation{ - Name: opListChannelMemberships, + Name: opListChannelFlows, HTTPMethod: "GET", - HTTPPath: "/channels/{channelArn}/memberships", + HTTPPath: "/channel-flows", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -2033,27 +2795,25 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsRequest(input *ListChannelMemb } if input == nil { - input = &ListChannelMembershipsInput{} + input = &ListChannelFlowsInput{} } - output = &ListChannelMembershipsOutput{} + output = &ListChannelFlowsOutput{} req = c.newRequest(op, input, output) return } -// ListChannelMemberships API operation for Amazon Chime SDK Messaging. -// -// Lists all channel memberships in a channel. +// ListChannelFlows API operation for Amazon Chime SDK Messaging. // -// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn -// of the user that makes the API call as the value in the header. +// Returns a paginated lists of all the channel flows created under a single +// Chime. This is a developer API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation ListChannelMemberships for usage and error information. +// API operation ListChannelFlows for usage and error information. // // Returned Error Types: // * BadRequestException @@ -2074,65 +2834,65 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsRequest(input *ListChannelMemb // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMemberships -func (c *ChimeSDKMessaging) ListChannelMemberships(input *ListChannelMembershipsInput) (*ListChannelMembershipsOutput, error) { - req, out := c.ListChannelMembershipsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelFlows +func (c *ChimeSDKMessaging) ListChannelFlows(input *ListChannelFlowsInput) (*ListChannelFlowsOutput, error) { + req, out := c.ListChannelFlowsRequest(input) return out, req.Send() } -// ListChannelMembershipsWithContext is the same as ListChannelMemberships with the addition of +// ListChannelFlowsWithContext is the same as ListChannelFlows with the addition of // the ability to pass a context and additional request options. // -// See ListChannelMemberships for details on how to use this API operation. +// See ListChannelFlows for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) ListChannelMembershipsWithContext(ctx aws.Context, input *ListChannelMembershipsInput, opts ...request.Option) (*ListChannelMembershipsOutput, error) { - req, out := c.ListChannelMembershipsRequest(input) +func (c *ChimeSDKMessaging) ListChannelFlowsWithContext(ctx aws.Context, input *ListChannelFlowsInput, opts ...request.Option) (*ListChannelFlowsOutput, error) { + req, out := c.ListChannelFlowsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListChannelMembershipsPages iterates over the pages of a ListChannelMemberships operation, +// ListChannelFlowsPages iterates over the pages of a ListChannelFlows operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListChannelMemberships method for more information on how to use this operation. +// See ListChannelFlows method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListChannelMemberships operation. +// // Example iterating over at most 3 pages of a ListChannelFlows operation. // pageNum := 0 -// err := client.ListChannelMembershipsPages(params, -// func(page *chimesdkmessaging.ListChannelMembershipsOutput, lastPage bool) bool { +// err := client.ListChannelFlowsPages(params, +// func(page *chimesdkmessaging.ListChannelFlowsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *ChimeSDKMessaging) ListChannelMembershipsPages(input *ListChannelMembershipsInput, fn func(*ListChannelMembershipsOutput, bool) bool) error { - return c.ListChannelMembershipsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *ChimeSDKMessaging) ListChannelFlowsPages(input *ListChannelFlowsInput, fn func(*ListChannelFlowsOutput, bool) bool) error { + return c.ListChannelFlowsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListChannelMembershipsPagesWithContext same as ListChannelMembershipsPages except +// ListChannelFlowsPagesWithContext same as ListChannelFlowsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) ListChannelMembershipsPagesWithContext(ctx aws.Context, input *ListChannelMembershipsInput, fn func(*ListChannelMembershipsOutput, bool) bool, opts ...request.Option) error { +func (c *ChimeSDKMessaging) ListChannelFlowsPagesWithContext(ctx aws.Context, input *ListChannelFlowsInput, fn func(*ListChannelFlowsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListChannelMembershipsInput + var inCpy *ListChannelFlowsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListChannelMembershipsRequest(inCpy) + req, _ := c.ListChannelFlowsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2140,7 +2900,7 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsPagesWithContext(ctx aws.Conte } for p.Next() { - if !fn(p.Page().(*ListChannelMembershipsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListChannelFlowsOutput), !p.HasNextPage()) { break } } @@ -2148,37 +2908,37 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsPagesWithContext(ctx aws.Conte return p.Err() } -const opListChannelMembershipsForAppInstanceUser = "ListChannelMembershipsForAppInstanceUser" +const opListChannelMemberships = "ListChannelMemberships" -// ListChannelMembershipsForAppInstanceUserRequest generates a "aws/request.Request" representing the -// client's request for the ListChannelMembershipsForAppInstanceUser operation. The "output" return +// ListChannelMembershipsRequest generates a "aws/request.Request" representing the +// client's request for the ListChannelMemberships operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListChannelMembershipsForAppInstanceUser for more information on using the ListChannelMembershipsForAppInstanceUser +// See ListChannelMemberships for more information on using the ListChannelMemberships // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListChannelMembershipsForAppInstanceUserRequest method. -// req, resp := client.ListChannelMembershipsForAppInstanceUserRequest(params) +// // Example sending a request using the ListChannelMembershipsRequest method. +// req, resp := client.ListChannelMembershipsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMembershipsForAppInstanceUser -func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserRequest(input *ListChannelMembershipsForAppInstanceUserInput) (req *request.Request, output *ListChannelMembershipsForAppInstanceUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMemberships +func (c *ChimeSDKMessaging) ListChannelMembershipsRequest(input *ListChannelMembershipsInput) (req *request.Request, output *ListChannelMembershipsOutput) { op := &request.Operation{ - Name: opListChannelMembershipsForAppInstanceUser, + Name: opListChannelMemberships, HTTPMethod: "GET", - HTTPPath: "/channels?scope=app-instance-user-memberships", + HTTPPath: "/channels/{channelArn}/memberships", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -2188,18 +2948,17 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserRequest(inpu } if input == nil { - input = &ListChannelMembershipsForAppInstanceUserInput{} + input = &ListChannelMembershipsInput{} } - output = &ListChannelMembershipsForAppInstanceUserOutput{} + output = &ListChannelMembershipsOutput{} req = c.newRequest(op, input, output) return } -// ListChannelMembershipsForAppInstanceUser API operation for Amazon Chime SDK Messaging. +// ListChannelMemberships API operation for Amazon Chime SDK Messaging. // -// Lists all channels that a particular AppInstanceUser is a part of. Only an -// AppInstanceAdmin can call the API with a user ARN that is not their own. +// Lists all channel memberships in a channel. // // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn // of the user that makes the API call as the value in the header. @@ -2209,7 +2968,7 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserRequest(inpu // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation ListChannelMembershipsForAppInstanceUser for usage and error information. +// API operation ListChannelMemberships for usage and error information. // // Returned Error Types: // * BadRequestException @@ -2230,9 +2989,165 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserRequest(inpu // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMembershipsForAppInstanceUser -func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUser(input *ListChannelMembershipsForAppInstanceUserInput) (*ListChannelMembershipsForAppInstanceUserOutput, error) { - req, out := c.ListChannelMembershipsForAppInstanceUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMemberships +func (c *ChimeSDKMessaging) ListChannelMemberships(input *ListChannelMembershipsInput) (*ListChannelMembershipsOutput, error) { + req, out := c.ListChannelMembershipsRequest(input) + return out, req.Send() +} + +// ListChannelMembershipsWithContext is the same as ListChannelMemberships with the addition of +// the ability to pass a context and additional request options. +// +// See ListChannelMemberships for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) ListChannelMembershipsWithContext(ctx aws.Context, input *ListChannelMembershipsInput, opts ...request.Option) (*ListChannelMembershipsOutput, error) { + req, out := c.ListChannelMembershipsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListChannelMembershipsPages iterates over the pages of a ListChannelMemberships operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListChannelMemberships method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListChannelMemberships operation. +// pageNum := 0 +// err := client.ListChannelMembershipsPages(params, +// func(page *chimesdkmessaging.ListChannelMembershipsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *ChimeSDKMessaging) ListChannelMembershipsPages(input *ListChannelMembershipsInput, fn func(*ListChannelMembershipsOutput, bool) bool) error { + return c.ListChannelMembershipsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListChannelMembershipsPagesWithContext same as ListChannelMembershipsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) ListChannelMembershipsPagesWithContext(ctx aws.Context, input *ListChannelMembershipsInput, fn func(*ListChannelMembershipsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListChannelMembershipsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListChannelMembershipsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListChannelMembershipsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListChannelMembershipsForAppInstanceUser = "ListChannelMembershipsForAppInstanceUser" + +// ListChannelMembershipsForAppInstanceUserRequest generates a "aws/request.Request" representing the +// client's request for the ListChannelMembershipsForAppInstanceUser operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListChannelMembershipsForAppInstanceUser for more information on using the ListChannelMembershipsForAppInstanceUser +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListChannelMembershipsForAppInstanceUserRequest method. +// req, resp := client.ListChannelMembershipsForAppInstanceUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMembershipsForAppInstanceUser +func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserRequest(input *ListChannelMembershipsForAppInstanceUserInput) (req *request.Request, output *ListChannelMembershipsForAppInstanceUserOutput) { + op := &request.Operation{ + Name: opListChannelMembershipsForAppInstanceUser, + HTTPMethod: "GET", + HTTPPath: "/channels?scope=app-instance-user-memberships", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListChannelMembershipsForAppInstanceUserInput{} + } + + output = &ListChannelMembershipsForAppInstanceUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListChannelMembershipsForAppInstanceUser API operation for Amazon Chime SDK Messaging. +// +// Lists all channels that a particular AppInstanceUser is a part of. Only an +// AppInstanceAdmin can call the API with a user ARN that is not their own. +// +// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation ListChannelMembershipsForAppInstanceUser for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMembershipsForAppInstanceUser +func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUser(input *ListChannelMembershipsForAppInstanceUserInput) (*ListChannelMembershipsForAppInstanceUserOutput, error) { + req, out := c.ListChannelMembershipsForAppInstanceUserRequest(input) return out, req.Send() } @@ -2782,37 +3697,37 @@ func (c *ChimeSDKMessaging) ListChannelsPagesWithContext(ctx aws.Context, input return p.Err() } -const opListChannelsModeratedByAppInstanceUser = "ListChannelsModeratedByAppInstanceUser" +const opListChannelsAssociatedWithChannelFlow = "ListChannelsAssociatedWithChannelFlow" -// ListChannelsModeratedByAppInstanceUserRequest generates a "aws/request.Request" representing the -// client's request for the ListChannelsModeratedByAppInstanceUser operation. The "output" return +// ListChannelsAssociatedWithChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the ListChannelsAssociatedWithChannelFlow operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListChannelsModeratedByAppInstanceUser for more information on using the ListChannelsModeratedByAppInstanceUser +// See ListChannelsAssociatedWithChannelFlow for more information on using the ListChannelsAssociatedWithChannelFlow // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListChannelsModeratedByAppInstanceUserRequest method. -// req, resp := client.ListChannelsModeratedByAppInstanceUserRequest(params) +// // Example sending a request using the ListChannelsAssociatedWithChannelFlowRequest method. +// req, resp := client.ListChannelsAssociatedWithChannelFlowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsModeratedByAppInstanceUser -func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserRequest(input *ListChannelsModeratedByAppInstanceUserInput) (req *request.Request, output *ListChannelsModeratedByAppInstanceUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsAssociatedWithChannelFlow +func (c *ChimeSDKMessaging) ListChannelsAssociatedWithChannelFlowRequest(input *ListChannelsAssociatedWithChannelFlowInput) (req *request.Request, output *ListChannelsAssociatedWithChannelFlowOutput) { op := &request.Operation{ - Name: opListChannelsModeratedByAppInstanceUser, + Name: opListChannelsAssociatedWithChannelFlow, HTTPMethod: "GET", - HTTPPath: "/channels?scope=app-instance-user-moderated-channels", + HTTPPath: "/channels?scope=channel-flow-associations", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -2822,27 +3737,26 @@ func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserRequest(input } if input == nil { - input = &ListChannelsModeratedByAppInstanceUserInput{} + input = &ListChannelsAssociatedWithChannelFlowInput{} } - output = &ListChannelsModeratedByAppInstanceUserOutput{} + output = &ListChannelsAssociatedWithChannelFlowOutput{} req = c.newRequest(op, input, output) return } -// ListChannelsModeratedByAppInstanceUser API operation for Amazon Chime SDK Messaging. +// ListChannelsAssociatedWithChannelFlow API operation for Amazon Chime SDK Messaging. // -// A list of the channels moderated by an AppInstanceUser. -// -// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn -// of the user that makes the API call as the value in the header. +// Lists all channels associated with a specified channel flow. You can associate +// a channel flow with multiple channels, but you can only associate a channel +// with one channel flow. This is a developer API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation ListChannelsModeratedByAppInstanceUser for usage and error information. +// API operation ListChannelsAssociatedWithChannelFlow for usage and error information. // // Returned Error Types: // * BadRequestException @@ -2863,65 +3777,65 @@ func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserRequest(input // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsModeratedByAppInstanceUser -func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUser(input *ListChannelsModeratedByAppInstanceUserInput) (*ListChannelsModeratedByAppInstanceUserOutput, error) { - req, out := c.ListChannelsModeratedByAppInstanceUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsAssociatedWithChannelFlow +func (c *ChimeSDKMessaging) ListChannelsAssociatedWithChannelFlow(input *ListChannelsAssociatedWithChannelFlowInput) (*ListChannelsAssociatedWithChannelFlowOutput, error) { + req, out := c.ListChannelsAssociatedWithChannelFlowRequest(input) return out, req.Send() } -// ListChannelsModeratedByAppInstanceUserWithContext is the same as ListChannelsModeratedByAppInstanceUser with the addition of +// ListChannelsAssociatedWithChannelFlowWithContext is the same as ListChannelsAssociatedWithChannelFlow with the addition of // the ability to pass a context and additional request options. // -// See ListChannelsModeratedByAppInstanceUser for details on how to use this API operation. +// See ListChannelsAssociatedWithChannelFlow for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserWithContext(ctx aws.Context, input *ListChannelsModeratedByAppInstanceUserInput, opts ...request.Option) (*ListChannelsModeratedByAppInstanceUserOutput, error) { - req, out := c.ListChannelsModeratedByAppInstanceUserRequest(input) +func (c *ChimeSDKMessaging) ListChannelsAssociatedWithChannelFlowWithContext(ctx aws.Context, input *ListChannelsAssociatedWithChannelFlowInput, opts ...request.Option) (*ListChannelsAssociatedWithChannelFlowOutput, error) { + req, out := c.ListChannelsAssociatedWithChannelFlowRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListChannelsModeratedByAppInstanceUserPages iterates over the pages of a ListChannelsModeratedByAppInstanceUser operation, +// ListChannelsAssociatedWithChannelFlowPages iterates over the pages of a ListChannelsAssociatedWithChannelFlow operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListChannelsModeratedByAppInstanceUser method for more information on how to use this operation. +// See ListChannelsAssociatedWithChannelFlow method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListChannelsModeratedByAppInstanceUser operation. +// // Example iterating over at most 3 pages of a ListChannelsAssociatedWithChannelFlow operation. // pageNum := 0 -// err := client.ListChannelsModeratedByAppInstanceUserPages(params, -// func(page *chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, lastPage bool) bool { +// err := client.ListChannelsAssociatedWithChannelFlowPages(params, +// func(page *chimesdkmessaging.ListChannelsAssociatedWithChannelFlowOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPages(input *ListChannelsModeratedByAppInstanceUserInput, fn func(*ListChannelsModeratedByAppInstanceUserOutput, bool) bool) error { - return c.ListChannelsModeratedByAppInstanceUserPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *ChimeSDKMessaging) ListChannelsAssociatedWithChannelFlowPages(input *ListChannelsAssociatedWithChannelFlowInput, fn func(*ListChannelsAssociatedWithChannelFlowOutput, bool) bool) error { + return c.ListChannelsAssociatedWithChannelFlowPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListChannelsModeratedByAppInstanceUserPagesWithContext same as ListChannelsModeratedByAppInstanceUserPages except +// ListChannelsAssociatedWithChannelFlowPagesWithContext same as ListChannelsAssociatedWithChannelFlowPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPagesWithContext(ctx aws.Context, input *ListChannelsModeratedByAppInstanceUserInput, fn func(*ListChannelsModeratedByAppInstanceUserOutput, bool) bool, opts ...request.Option) error { +func (c *ChimeSDKMessaging) ListChannelsAssociatedWithChannelFlowPagesWithContext(ctx aws.Context, input *ListChannelsAssociatedWithChannelFlowInput, fn func(*ListChannelsAssociatedWithChannelFlowOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListChannelsModeratedByAppInstanceUserInput + var inCpy *ListChannelsAssociatedWithChannelFlowInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListChannelsModeratedByAppInstanceUserRequest(inCpy) + req, _ := c.ListChannelsAssociatedWithChannelFlowRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2929,70 +3843,518 @@ func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPagesWithConte } for p.Next() { - if !fn(p.Page().(*ListChannelsModeratedByAppInstanceUserOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListChannelsAssociatedWithChannelFlowOutput), !p.HasNextPage()) { break } } - return p.Err() + return p.Err() +} + +const opListChannelsModeratedByAppInstanceUser = "ListChannelsModeratedByAppInstanceUser" + +// ListChannelsModeratedByAppInstanceUserRequest generates a "aws/request.Request" representing the +// client's request for the ListChannelsModeratedByAppInstanceUser operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListChannelsModeratedByAppInstanceUser for more information on using the ListChannelsModeratedByAppInstanceUser +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListChannelsModeratedByAppInstanceUserRequest method. +// req, resp := client.ListChannelsModeratedByAppInstanceUserRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsModeratedByAppInstanceUser +func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserRequest(input *ListChannelsModeratedByAppInstanceUserInput) (req *request.Request, output *ListChannelsModeratedByAppInstanceUserOutput) { + op := &request.Operation{ + Name: opListChannelsModeratedByAppInstanceUser, + HTTPMethod: "GET", + HTTPPath: "/channels?scope=app-instance-user-moderated-channels", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListChannelsModeratedByAppInstanceUserInput{} + } + + output = &ListChannelsModeratedByAppInstanceUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListChannelsModeratedByAppInstanceUser API operation for Amazon Chime SDK Messaging. +// +// A list of the channels moderated by an AppInstanceUser. +// +// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation ListChannelsModeratedByAppInstanceUser for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsModeratedByAppInstanceUser +func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUser(input *ListChannelsModeratedByAppInstanceUserInput) (*ListChannelsModeratedByAppInstanceUserOutput, error) { + req, out := c.ListChannelsModeratedByAppInstanceUserRequest(input) + return out, req.Send() +} + +// ListChannelsModeratedByAppInstanceUserWithContext is the same as ListChannelsModeratedByAppInstanceUser with the addition of +// the ability to pass a context and additional request options. +// +// See ListChannelsModeratedByAppInstanceUser for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserWithContext(ctx aws.Context, input *ListChannelsModeratedByAppInstanceUserInput, opts ...request.Option) (*ListChannelsModeratedByAppInstanceUserOutput, error) { + req, out := c.ListChannelsModeratedByAppInstanceUserRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListChannelsModeratedByAppInstanceUserPages iterates over the pages of a ListChannelsModeratedByAppInstanceUser operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListChannelsModeratedByAppInstanceUser method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListChannelsModeratedByAppInstanceUser operation. +// pageNum := 0 +// err := client.ListChannelsModeratedByAppInstanceUserPages(params, +// func(page *chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPages(input *ListChannelsModeratedByAppInstanceUserInput, fn func(*ListChannelsModeratedByAppInstanceUserOutput, bool) bool) error { + return c.ListChannelsModeratedByAppInstanceUserPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListChannelsModeratedByAppInstanceUserPagesWithContext same as ListChannelsModeratedByAppInstanceUserPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPagesWithContext(ctx aws.Context, input *ListChannelsModeratedByAppInstanceUserInput, fn func(*ListChannelsModeratedByAppInstanceUserOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListChannelsModeratedByAppInstanceUserInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListChannelsModeratedByAppInstanceUserRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListChannelsModeratedByAppInstanceUserOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListTagsForResource +func (c *ChimeSDKMessaging) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon Chime SDK Messaging. +// +// Lists the tags applied to an Amazon Chime SDK messaging resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListTagsForResource +func (c *ChimeSDKMessaging) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRedactChannelMessage = "RedactChannelMessage" + +// RedactChannelMessageRequest generates a "aws/request.Request" representing the +// client's request for the RedactChannelMessage operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See RedactChannelMessage for more information on using the RedactChannelMessage +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the RedactChannelMessageRequest method. +// req, resp := client.RedactChannelMessageRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/RedactChannelMessage +func (c *ChimeSDKMessaging) RedactChannelMessageRequest(input *RedactChannelMessageInput) (req *request.Request, output *RedactChannelMessageOutput) { + op := &request.Operation{ + Name: opRedactChannelMessage, + HTTPMethod: "POST", + HTTPPath: "/channels/{channelArn}/messages/{messageId}?operation=redact", + } + + if input == nil { + input = &RedactChannelMessageInput{} + } + + output = &RedactChannelMessageOutput{} + req = c.newRequest(op, input, output) + return +} + +// RedactChannelMessage API operation for Amazon Chime SDK Messaging. +// +// Redacts message content, but not metadata. The message exists in the back +// end, but the action returns null content, and the state shows as redacted. +// +// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation RedactChannelMessage for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/RedactChannelMessage +func (c *ChimeSDKMessaging) RedactChannelMessage(input *RedactChannelMessageInput) (*RedactChannelMessageOutput, error) { + req, out := c.RedactChannelMessageRequest(input) + return out, req.Send() +} + +// RedactChannelMessageWithContext is the same as RedactChannelMessage with the addition of +// the ability to pass a context and additional request options. +// +// See RedactChannelMessage for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) RedactChannelMessageWithContext(ctx aws.Context, input *RedactChannelMessageInput, opts ...request.Option) (*RedactChannelMessageOutput, error) { + req, out := c.RedactChannelMessageRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opSendChannelMessage = "SendChannelMessage" + +// SendChannelMessageRequest generates a "aws/request.Request" representing the +// client's request for the SendChannelMessage operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See SendChannelMessage for more information on using the SendChannelMessage +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the SendChannelMessageRequest method. +// req, resp := client.SendChannelMessageRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SendChannelMessage +func (c *ChimeSDKMessaging) SendChannelMessageRequest(input *SendChannelMessageInput) (req *request.Request, output *SendChannelMessageOutput) { + op := &request.Operation{ + Name: opSendChannelMessage, + HTTPMethod: "POST", + HTTPPath: "/channels/{channelArn}/messages", + } + + if input == nil { + input = &SendChannelMessageInput{} + } + + output = &SendChannelMessageOutput{} + req = c.newRequest(op, input, output) + return +} + +// SendChannelMessage API operation for Amazon Chime SDK Messaging. +// +// Sends a message to a particular channel that the member is a part of. +// +// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn +// of the user that makes the API call as the value in the header. +// +// Also, STANDARD messages can contain 4KB of data and the 1KB of metadata. +// CONTROL messages can contain 30 bytes of data and no metadata. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation SendChannelMessage for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SendChannelMessage +func (c *ChimeSDKMessaging) SendChannelMessage(input *SendChannelMessageInput) (*SendChannelMessageOutput, error) { + req, out := c.SendChannelMessageRequest(input) + return out, req.Send() +} + +// SendChannelMessageWithContext is the same as SendChannelMessage with the addition of +// the ability to pass a context and additional request options. +// +// See SendChannelMessage for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) SendChannelMessageWithContext(ctx aws.Context, input *SendChannelMessageInput, opts ...request.Option) (*SendChannelMessageOutput, error) { + req, out := c.SendChannelMessageRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() } -const opRedactChannelMessage = "RedactChannelMessage" +const opTagResource = "TagResource" -// RedactChannelMessageRequest generates a "aws/request.Request" representing the -// client's request for the RedactChannelMessage operation. The "output" return +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See RedactChannelMessage for more information on using the RedactChannelMessage +// See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the RedactChannelMessageRequest method. -// req, resp := client.RedactChannelMessageRequest(params) +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/RedactChannelMessage -func (c *ChimeSDKMessaging) RedactChannelMessageRequest(input *RedactChannelMessageInput) (req *request.Request, output *RedactChannelMessageOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/TagResource +func (c *ChimeSDKMessaging) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ - Name: opRedactChannelMessage, + Name: opTagResource, HTTPMethod: "POST", - HTTPPath: "/channels/{channelArn}/messages/{messageId}?operation=redact", + HTTPPath: "/tags?operation=tag-resource", } if input == nil { - input = &RedactChannelMessageInput{} + input = &TagResourceInput{} } - output = &RedactChannelMessageOutput{} + output = &TagResourceOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// RedactChannelMessage API operation for Amazon Chime SDK Messaging. -// -// Redacts message content, but not metadata. The message exists in the back -// end, but the action returns null content, and the state shows as redacted. +// TagResource API operation for Amazon Chime SDK Messaging. // -// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn -// of the user that makes the API call as the value in the header. +// Applies the specified tags to the specified Amazon Chime SDK messaging resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation RedactChannelMessage for usage and error information. +// API operation TagResource for usage and error information. // // Returned Error Types: // * BadRequestException @@ -3004,6 +4366,9 @@ func (c *ChimeSDKMessaging) RedactChannelMessageRequest(input *RedactChannelMess // * UnauthorizedClientException // The client is not currently authorized to make the request. // +// * ResourceLimitExceededException +// The request exceeds the resource limit. +// // * ThrottledClientException // The client exceeded its request rate limit. // @@ -3013,95 +4378,87 @@ func (c *ChimeSDKMessaging) RedactChannelMessageRequest(input *RedactChannelMess // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/RedactChannelMessage -func (c *ChimeSDKMessaging) RedactChannelMessage(input *RedactChannelMessageInput) (*RedactChannelMessageOutput, error) { - req, out := c.RedactChannelMessageRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/TagResource +func (c *ChimeSDKMessaging) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) return out, req.Send() } -// RedactChannelMessageWithContext is the same as RedactChannelMessage with the addition of +// TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // -// See RedactChannelMessage for details on how to use this API operation. +// See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) RedactChannelMessageWithContext(ctx aws.Context, input *RedactChannelMessageInput, opts ...request.Option) (*RedactChannelMessageOutput, error) { - req, out := c.RedactChannelMessageRequest(input) +func (c *ChimeSDKMessaging) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opSendChannelMessage = "SendChannelMessage" +const opUntagResource = "UntagResource" -// SendChannelMessageRequest generates a "aws/request.Request" representing the -// client's request for the SendChannelMessage operation. The "output" return +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See SendChannelMessage for more information on using the SendChannelMessage +// See UntagResource for more information on using the UntagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the SendChannelMessageRequest method. -// req, resp := client.SendChannelMessageRequest(params) +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SendChannelMessage -func (c *ChimeSDKMessaging) SendChannelMessageRequest(input *SendChannelMessageInput) (req *request.Request, output *SendChannelMessageOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UntagResource +func (c *ChimeSDKMessaging) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ - Name: opSendChannelMessage, + Name: opUntagResource, HTTPMethod: "POST", - HTTPPath: "/channels/{channelArn}/messages", + HTTPPath: "/tags?operation=untag-resource", } if input == nil { - input = &SendChannelMessageInput{} + input = &UntagResourceInput{} } - output = &SendChannelMessageOutput{} + output = &UntagResourceOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// SendChannelMessage API operation for Amazon Chime SDK Messaging. -// -// Sends a message to a particular channel that the member is a part of. -// -// The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn -// of the user that makes the API call as the value in the header. +// UntagResource API operation for Amazon Chime SDK Messaging. // -// Also, STANDARD messages can contain 4KB of data and the 1KB of metadata. -// CONTROL messages can contain 30 bytes of data and no metadata. +// Removes the specified tags from the specified Amazon Chime SDK messaging +// resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Chime SDK Messaging's -// API operation SendChannelMessage for usage and error information. +// API operation UntagResource for usage and error information. // // Returned Error Types: // * BadRequestException // The input parameters don't match the service's restrictions. // -// * ConflictException -// The request could not be processed because of conflict in the current state -// of the resource. -// // * ForbiddenException // The client is permanently forbidden from making the request. // @@ -3117,23 +4474,23 @@ func (c *ChimeSDKMessaging) SendChannelMessageRequest(input *SendChannelMessageI // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SendChannelMessage -func (c *ChimeSDKMessaging) SendChannelMessage(input *SendChannelMessageInput) (*SendChannelMessageOutput, error) { - req, out := c.SendChannelMessageRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UntagResource +func (c *ChimeSDKMessaging) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) return out, req.Send() } -// SendChannelMessageWithContext is the same as SendChannelMessage with the addition of +// UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // -// See SendChannelMessage for details on how to use this API operation. +// See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *ChimeSDKMessaging) SendChannelMessageWithContext(ctx aws.Context, input *SendChannelMessageInput, opts ...request.Option) (*SendChannelMessageOutput, error) { - req, out := c.SendChannelMessageRequest(input) +func (c *ChimeSDKMessaging) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() @@ -3242,6 +4599,104 @@ func (c *ChimeSDKMessaging) UpdateChannelWithContext(ctx aws.Context, input *Upd return out, req.Send() } +const opUpdateChannelFlow = "UpdateChannelFlow" + +// UpdateChannelFlowRequest generates a "aws/request.Request" representing the +// client's request for the UpdateChannelFlow operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateChannelFlow for more information on using the UpdateChannelFlow +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateChannelFlowRequest method. +// req, resp := client.UpdateChannelFlowRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelFlow +func (c *ChimeSDKMessaging) UpdateChannelFlowRequest(input *UpdateChannelFlowInput) (req *request.Request, output *UpdateChannelFlowOutput) { + op := &request.Operation{ + Name: opUpdateChannelFlow, + HTTPMethod: "PUT", + HTTPPath: "/channel-flows/{channelFlowArn}", + } + + if input == nil { + input = &UpdateChannelFlowInput{} + } + + output = &UpdateChannelFlowOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateChannelFlow API operation for Amazon Chime SDK Messaging. +// +// Updates channel flow attributes. This is a developer API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Messaging's +// API operation UpdateChannelFlow for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * ForbiddenException +// The client is permanently forbidden from making the request. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelFlow +func (c *ChimeSDKMessaging) UpdateChannelFlow(input *UpdateChannelFlowInput) (*UpdateChannelFlowOutput, error) { + req, out := c.UpdateChannelFlowRequest(input) + return out, req.Send() +} + +// UpdateChannelFlowWithContext is the same as UpdateChannelFlow with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateChannelFlow for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKMessaging) UpdateChannelFlowWithContext(ctx aws.Context, input *UpdateChannelFlowInput, opts ...request.Option) (*UpdateChannelFlowOutput, error) { + req, out := c.UpdateChannelFlowRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateChannelMessage = "UpdateChannelMessage" // UpdateChannelMessageRequest generates a "aws/request.Request" representing the @@ -3460,7 +4915,124 @@ type AppInstanceUserMembershipSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AppInstanceUserMembershipSummary) String() string { +func (s AppInstanceUserMembershipSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AppInstanceUserMembershipSummary) GoString() string { + return s.String() +} + +// SetReadMarkerTimestamp sets the ReadMarkerTimestamp field's value. +func (s *AppInstanceUserMembershipSummary) SetReadMarkerTimestamp(v time.Time) *AppInstanceUserMembershipSummary { + s.ReadMarkerTimestamp = &v + return s +} + +// SetType sets the Type field's value. +func (s *AppInstanceUserMembershipSummary) SetType(v string) *AppInstanceUserMembershipSummary { + s.Type = &v + return s +} + +type AssociateChannelFlowInput struct { + _ struct{} `type:"structure"` + + // The ARN of the channel. + // + // ChannelArn is a required field + ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` + + // The ARN of the channel flow. + // + // ChannelFlowArn is a required field + ChannelFlowArn *string `min:"5" type:"string" required:"true"` + + // The AppInstanceUserArn of the user making the API call. + // + // ChimeBearer is a required field + ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateChannelFlowInput"} + if s.ChannelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelArn")) + } + if s.ChannelArn != nil && len(*s.ChannelArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5)) + } + if s.ChannelFlowArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelFlowArn")) + } + if s.ChannelFlowArn != nil && len(*s.ChannelFlowArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelFlowArn", 5)) + } + if s.ChimeBearer == nil { + invalidParams.Add(request.NewErrParamRequired("ChimeBearer")) + } + if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *AssociateChannelFlowInput) SetChannelArn(v string) *AssociateChannelFlowInput { + s.ChannelArn = &v + return s +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *AssociateChannelFlowInput) SetChannelFlowArn(v string) *AssociateChannelFlowInput { + s.ChannelFlowArn = &v + return s +} + +// SetChimeBearer sets the ChimeBearer field's value. +func (s *AssociateChannelFlowInput) SetChimeBearer(v string) *AssociateChannelFlowInput { + s.ChimeBearer = &v + return s +} + +type AssociateChannelFlowOutput struct { + _ struct{} `type:"structure" nopayload:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateChannelFlowOutput) String() string { return awsutil.Prettify(s) } @@ -3469,22 +5041,10 @@ func (s AppInstanceUserMembershipSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AppInstanceUserMembershipSummary) GoString() string { +func (s AssociateChannelFlowOutput) GoString() string { return s.String() } -// SetReadMarkerTimestamp sets the ReadMarkerTimestamp field's value. -func (s *AppInstanceUserMembershipSummary) SetReadMarkerTimestamp(v time.Time) *AppInstanceUserMembershipSummary { - s.ReadMarkerTimestamp = &v - return s -} - -// SetType sets the Type field's value. -func (s *AppInstanceUserMembershipSummary) SetType(v string) *AppInstanceUserMembershipSummary { - s.Type = &v - return s -} - // The input parameters don't match the service's restrictions. type BadRequestException struct { _ struct{} `type:"structure"` @@ -3804,6 +5364,9 @@ type Channel struct { // The ARN of a channel. ChannelArn *string `min:"5" type:"string"` + // The ARN of the channel flow. + ChannelFlowArn *string `min:"5" type:"string"` + // The AppInstanceUser who created the channel. CreatedBy *Identity `type:"structure"` @@ -3861,6 +5424,12 @@ func (s *Channel) SetChannelArn(v string) *Channel { return s } +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *Channel) SetChannelFlowArn(v string) *Channel { + s.ChannelFlowArn = &v + return s +} + // SetCreatedBy sets the CreatedBy field's value. func (s *Channel) SetCreatedBy(v *Identity) *Channel { s.CreatedBy = v @@ -3909,6 +5478,82 @@ func (s *Channel) SetPrivacy(v string) *Channel { return s } +// Summary of details of a channel associated with channel flow. +type ChannelAssociatedWithFlowSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the channel. + ChannelArn *string `min:"5" type:"string"` + + // The channel's metadata. + // + // Metadata is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ChannelAssociatedWithFlowSummary's + // String and GoString methods. + Metadata *string `type:"string" sensitive:"true"` + + // The mode of the channel. + Mode *string `type:"string" enum:"ChannelMode"` + + // The name of the channel flow. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ChannelAssociatedWithFlowSummary's + // String and GoString methods. + Name *string `min:"1" type:"string" sensitive:"true"` + + // The channel's privacy setting. + Privacy *string `type:"string" enum:"ChannelPrivacy"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelAssociatedWithFlowSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelAssociatedWithFlowSummary) GoString() string { + return s.String() +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *ChannelAssociatedWithFlowSummary) SetChannelArn(v string) *ChannelAssociatedWithFlowSummary { + s.ChannelArn = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ChannelAssociatedWithFlowSummary) SetMetadata(v string) *ChannelAssociatedWithFlowSummary { + s.Metadata = &v + return s +} + +// SetMode sets the Mode field's value. +func (s *ChannelAssociatedWithFlowSummary) SetMode(v string) *ChannelAssociatedWithFlowSummary { + s.Mode = &v + return s +} + +// SetName sets the Name field's value. +func (s *ChannelAssociatedWithFlowSummary) SetName(v string) *ChannelAssociatedWithFlowSummary { + s.Name = &v + return s +} + +// SetPrivacy sets the Privacy field's value. +func (s *ChannelAssociatedWithFlowSummary) SetPrivacy(v string) *ChannelAssociatedWithFlowSummary { + s.Privacy = &v + return s +} + // The details of a channel ban. type ChannelBan struct { _ struct{} `type:"structure"` @@ -3972,8 +5617,253 @@ func (s *ChannelBan) SetMember(v *Identity) *ChannelBan { type ChannelBanSummary struct { _ struct{} `type:"structure"` - // The member being banned from a channel. - Member *Identity `type:"structure"` + // The member being banned from a channel. + Member *Identity `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelBanSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelBanSummary) GoString() string { + return s.String() +} + +// SetMember sets the Member field's value. +func (s *ChannelBanSummary) SetMember(v *Identity) *ChannelBanSummary { + s.Member = v + return s +} + +// The details of a channel flow. +type ChannelFlow struct { + _ struct{} `type:"structure"` + + // The ARN of the channel flow. + ChannelFlowArn *string `min:"5" type:"string"` + + // The time at which the channel flow was created. + CreatedTimestamp *time.Time `type:"timestamp"` + + // The time at which a channel flow was updated. + LastUpdatedTimestamp *time.Time `type:"timestamp"` + + // The name of the channel flow. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ChannelFlow's + // String and GoString methods. + Name *string `min:"1" type:"string" sensitive:"true"` + + // Information about the processor Lambda functions. + Processors []*Processor `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelFlow) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelFlow) GoString() string { + return s.String() +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *ChannelFlow) SetChannelFlowArn(v string) *ChannelFlow { + s.ChannelFlowArn = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *ChannelFlow) SetCreatedTimestamp(v time.Time) *ChannelFlow { + s.CreatedTimestamp = &v + return s +} + +// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value. +func (s *ChannelFlow) SetLastUpdatedTimestamp(v time.Time) *ChannelFlow { + s.LastUpdatedTimestamp = &v + return s +} + +// SetName sets the Name field's value. +func (s *ChannelFlow) SetName(v string) *ChannelFlow { + s.Name = &v + return s +} + +// SetProcessors sets the Processors field's value. +func (s *ChannelFlow) SetProcessors(v []*Processor) *ChannelFlow { + s.Processors = v + return s +} + +type ChannelFlowCallbackInput struct { + _ struct{} `type:"structure"` + + // The identifier passed to the processor by the service when invoked. Use the + // identifier to call back the service. + CallbackId *string `min:"32" type:"string" idempotencyToken:"true"` + + // The ARN of the channel. + // + // ChannelArn is a required field + ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` + + // Stores information about the processed message. + // + // ChannelMessage is a required field + ChannelMessage *ChannelMessageCallback `type:"structure" required:"true"` + + // When a processor determines that a message needs to be DENIED, pass this + // parameter with a value of true. + DeleteResource *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelFlowCallbackInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelFlowCallbackInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChannelFlowCallbackInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChannelFlowCallbackInput"} + if s.CallbackId != nil && len(*s.CallbackId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("CallbackId", 32)) + } + if s.ChannelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelArn")) + } + if s.ChannelArn != nil && len(*s.ChannelArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5)) + } + if s.ChannelMessage == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelMessage")) + } + if s.ChannelMessage != nil { + if err := s.ChannelMessage.Validate(); err != nil { + invalidParams.AddNested("ChannelMessage", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCallbackId sets the CallbackId field's value. +func (s *ChannelFlowCallbackInput) SetCallbackId(v string) *ChannelFlowCallbackInput { + s.CallbackId = &v + return s +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *ChannelFlowCallbackInput) SetChannelArn(v string) *ChannelFlowCallbackInput { + s.ChannelArn = &v + return s +} + +// SetChannelMessage sets the ChannelMessage field's value. +func (s *ChannelFlowCallbackInput) SetChannelMessage(v *ChannelMessageCallback) *ChannelFlowCallbackInput { + s.ChannelMessage = v + return s +} + +// SetDeleteResource sets the DeleteResource field's value. +func (s *ChannelFlowCallbackInput) SetDeleteResource(v bool) *ChannelFlowCallbackInput { + s.DeleteResource = &v + return s +} + +type ChannelFlowCallbackOutput struct { + _ struct{} `type:"structure"` + + // The call back ID passed in the request. + CallbackId *string `min:"32" type:"string"` + + // The ARN of the channel. + ChannelArn *string `min:"5" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelFlowCallbackOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelFlowCallbackOutput) GoString() string { + return s.String() +} + +// SetCallbackId sets the CallbackId field's value. +func (s *ChannelFlowCallbackOutput) SetCallbackId(v string) *ChannelFlowCallbackOutput { + s.CallbackId = &v + return s +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *ChannelFlowCallbackOutput) SetChannelArn(v string) *ChannelFlowCallbackOutput { + s.ChannelArn = &v + return s +} + +// Summary of details of a channel flow. +type ChannelFlowSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the channel flow. + ChannelFlowArn *string `min:"5" type:"string"` + + // The name of the channel flow. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ChannelFlowSummary's + // String and GoString methods. + Name *string `min:"1" type:"string" sensitive:"true"` + + // Information about the processor Lambda functions. + Processors []*Processor `min:"1" type:"list"` } // String returns the string representation. @@ -3981,7 +5871,7 @@ type ChannelBanSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChannelBanSummary) String() string { +func (s ChannelFlowSummary) String() string { return awsutil.Prettify(s) } @@ -3990,13 +5880,25 @@ func (s ChannelBanSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChannelBanSummary) GoString() string { +func (s ChannelFlowSummary) GoString() string { return s.String() } -// SetMember sets the Member field's value. -func (s *ChannelBanSummary) SetMember(v *Identity) *ChannelBanSummary { - s.Member = v +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *ChannelFlowSummary) SetChannelFlowArn(v string) *ChannelFlowSummary { + s.ChannelFlowArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *ChannelFlowSummary) SetName(v string) *ChannelFlowSummary { + s.Name = &v + return s +} + +// SetProcessors sets the Processors field's value. +func (s *ChannelFlowSummary) SetProcessors(v []*Processor) *ChannelFlowSummary { + s.Processors = v return s } @@ -4192,6 +6094,9 @@ type ChannelMessage struct { // The message sender. Sender *Identity `type:"structure"` + // The status of the channel message. + Status *ChannelMessageStatusStructure `type:"structure"` + // The message type. Type *string `type:"string" enum:"ChannelMessageType"` } @@ -4274,12 +6179,138 @@ func (s *ChannelMessage) SetSender(v *Identity) *ChannelMessage { return s } +// SetStatus sets the Status field's value. +func (s *ChannelMessage) SetStatus(v *ChannelMessageStatusStructure) *ChannelMessage { + s.Status = v + return s +} + // SetType sets the Type field's value. func (s *ChannelMessage) SetType(v string) *ChannelMessage { s.Type = &v return s } +// Stores information about a callback. +type ChannelMessageCallback struct { + _ struct{} `type:"structure"` + + // The message content. + // + // Content is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ChannelMessageCallback's + // String and GoString methods. + Content *string `min:"1" type:"string" sensitive:"true"` + + // The message ID. + // + // MessageId is a required field + MessageId *string `min:"1" type:"string" required:"true"` + + // The message metadata. + // + // Metadata is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ChannelMessageCallback's + // String and GoString methods. + Metadata *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelMessageCallback) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelMessageCallback) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChannelMessageCallback) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChannelMessageCallback"} + if s.Content != nil && len(*s.Content) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Content", 1)) + } + if s.MessageId == nil { + invalidParams.Add(request.NewErrParamRequired("MessageId")) + } + if s.MessageId != nil && len(*s.MessageId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MessageId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetContent sets the Content field's value. +func (s *ChannelMessageCallback) SetContent(v string) *ChannelMessageCallback { + s.Content = &v + return s +} + +// SetMessageId sets the MessageId field's value. +func (s *ChannelMessageCallback) SetMessageId(v string) *ChannelMessageCallback { + s.MessageId = &v + return s +} + +// SetMetadata sets the Metadata field's value. +func (s *ChannelMessageCallback) SetMetadata(v string) *ChannelMessageCallback { + s.Metadata = &v + return s +} + +// Stores information about a message status. +type ChannelMessageStatusStructure struct { + _ struct{} `type:"structure"` + + // Contains more details about the messasge status. + Detail *string `type:"string"` + + // The message status value. + Value *string `type:"string" enum:"ChannelMessageStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelMessageStatusStructure) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChannelMessageStatusStructure) GoString() string { + return s.String() +} + +// SetDetail sets the Detail field's value. +func (s *ChannelMessageStatusStructure) SetDetail(v string) *ChannelMessageStatusStructure { + s.Detail = &v + return s +} + +// SetValue sets the Value field's value. +func (s *ChannelMessageStatusStructure) SetValue(v string) *ChannelMessageStatusStructure { + s.Value = &v + return s +} + // Summary of the messages in a Channel. type ChannelMessageSummary struct { _ struct{} `type:"structure"` @@ -4316,6 +6347,11 @@ type ChannelMessageSummary struct { // The message sender. Sender *Identity `type:"structure"` + // The message status. The status value is SENT for messages sent to a channel + // without a channel flow. For channels associated with channel flow, the value + // determines the processing stage. + Status *ChannelMessageStatusStructure `type:"structure"` + // The type of message. Type *string `type:"string" enum:"ChannelMessageType"` } @@ -4386,6 +6422,12 @@ func (s *ChannelMessageSummary) SetSender(v *Identity) *ChannelMessageSummary { return s } +// SetStatus sets the Status field's value. +func (s *ChannelMessageSummary) SetStatus(v *ChannelMessageStatusStructure) *ChannelMessageSummary { + s.Status = v + return s +} + // SetType sets the Type field's value. func (s *ChannelMessageSummary) SetType(v string) *ChannelMessageSummary { s.Type = &v @@ -4722,8 +6764,176 @@ func (s *CreateChannelBanInput) Validate() error { if s.MemberArn == nil { invalidParams.Add(request.NewErrParamRequired("MemberArn")) } - if s.MemberArn != nil && len(*s.MemberArn) < 5 { - invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5)) + if s.MemberArn != nil && len(*s.MemberArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *CreateChannelBanInput) SetChannelArn(v string) *CreateChannelBanInput { + s.ChannelArn = &v + return s +} + +// SetChimeBearer sets the ChimeBearer field's value. +func (s *CreateChannelBanInput) SetChimeBearer(v string) *CreateChannelBanInput { + s.ChimeBearer = &v + return s +} + +// SetMemberArn sets the MemberArn field's value. +func (s *CreateChannelBanInput) SetMemberArn(v string) *CreateChannelBanInput { + s.MemberArn = &v + return s +} + +type CreateChannelBanOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the response to the ban request. + ChannelArn *string `min:"5" type:"string"` + + // The ChannelArn and BannedIdentity of the member in the ban response. + Member *Identity `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateChannelBanOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateChannelBanOutput) GoString() string { + return s.String() +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *CreateChannelBanOutput) SetChannelArn(v string) *CreateChannelBanOutput { + s.ChannelArn = &v + return s +} + +// SetMember sets the Member field's value. +func (s *CreateChannelBanOutput) SetMember(v *Identity) *CreateChannelBanOutput { + s.Member = v + return s +} + +type CreateChannelFlowInput struct { + _ struct{} `type:"structure"` + + // The ARN of the channel flow request. + // + // AppInstanceArn is a required field + AppInstanceArn *string `min:"5" type:"string" required:"true"` + + // The client token for the request. An Idempotency token. + // + // ClientRequestToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateChannelFlowInput's + // String and GoString methods. + // + // ClientRequestToken is a required field + ClientRequestToken *string `min:"2" type:"string" required:"true" sensitive:"true"` + + // The name of the channel flow. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateChannelFlowInput's + // String and GoString methods. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // Information about the processor Lambda functions. + // + // Processors is a required field + Processors []*Processor `min:"1" type:"list" required:"true"` + + // The tags for the creation request. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateChannelFlowInput"} + if s.AppInstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceArn")) + } + if s.AppInstanceArn != nil && len(*s.AppInstanceArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceArn", 5)) + } + if s.ClientRequestToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientRequestToken")) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Processors == nil { + invalidParams.Add(request.NewErrParamRequired("Processors")) + } + if s.Processors != nil && len(s.Processors) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Processors", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Processors != nil { + for i, v := range s.Processors { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Processors", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -4732,32 +6942,41 @@ func (s *CreateChannelBanInput) Validate() error { return nil } -// SetChannelArn sets the ChannelArn field's value. -func (s *CreateChannelBanInput) SetChannelArn(v string) *CreateChannelBanInput { - s.ChannelArn = &v +// SetAppInstanceArn sets the AppInstanceArn field's value. +func (s *CreateChannelFlowInput) SetAppInstanceArn(v string) *CreateChannelFlowInput { + s.AppInstanceArn = &v return s } -// SetChimeBearer sets the ChimeBearer field's value. -func (s *CreateChannelBanInput) SetChimeBearer(v string) *CreateChannelBanInput { - s.ChimeBearer = &v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateChannelFlowInput) SetClientRequestToken(v string) *CreateChannelFlowInput { + s.ClientRequestToken = &v return s } -// SetMemberArn sets the MemberArn field's value. -func (s *CreateChannelBanInput) SetMemberArn(v string) *CreateChannelBanInput { - s.MemberArn = &v +// SetName sets the Name field's value. +func (s *CreateChannelFlowInput) SetName(v string) *CreateChannelFlowInput { + s.Name = &v return s } -type CreateChannelBanOutput struct { - _ struct{} `type:"structure"` +// SetProcessors sets the Processors field's value. +func (s *CreateChannelFlowInput) SetProcessors(v []*Processor) *CreateChannelFlowInput { + s.Processors = v + return s +} - // The ARN of the response to the ban request. - ChannelArn *string `min:"5" type:"string"` +// SetTags sets the Tags field's value. +func (s *CreateChannelFlowInput) SetTags(v []*Tag) *CreateChannelFlowInput { + s.Tags = v + return s +} - // The ChannelArn and BannedIdentity of the member in the ban response. - Member *Identity `type:"structure"` +type CreateChannelFlowOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the channel flow. + ChannelFlowArn *string `min:"5" type:"string"` } // String returns the string representation. @@ -4765,7 +6984,7 @@ type CreateChannelBanOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateChannelBanOutput) String() string { +func (s CreateChannelFlowOutput) String() string { return awsutil.Prettify(s) } @@ -4774,19 +6993,13 @@ func (s CreateChannelBanOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateChannelBanOutput) GoString() string { +func (s CreateChannelFlowOutput) GoString() string { return s.String() } -// SetChannelArn sets the ChannelArn field's value. -func (s *CreateChannelBanOutput) SetChannelArn(v string) *CreateChannelBanOutput { - s.ChannelArn = &v - return s -} - -// SetMember sets the Member field's value. -func (s *CreateChannelBanOutput) SetMember(v *Identity) *CreateChannelBanOutput { - s.Member = v +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *CreateChannelFlowOutput) SetChannelFlowArn(v string) *CreateChannelFlowOutput { + s.ChannelFlowArn = &v return s } @@ -5350,6 +7563,77 @@ func (s DeleteChannelBanOutput) GoString() string { return s.String() } +type DeleteChannelFlowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the channel flow. + // + // ChannelFlowArn is a required field + ChannelFlowArn *string `location:"uri" locationName:"channelFlowArn" min:"5" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteChannelFlowInput"} + if s.ChannelFlowArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelFlowArn")) + } + if s.ChannelFlowArn != nil && len(*s.ChannelFlowArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelFlowArn", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *DeleteChannelFlowInput) SetChannelFlowArn(v string) *DeleteChannelFlowInput { + s.ChannelFlowArn = &v + return s +} + +type DeleteChannelFlowOutput struct { + _ struct{} `type:"structure" nopayload:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteChannelFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteChannelFlowOutput) GoString() string { + return s.String() +} + type DeleteChannelInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -5867,6 +8151,86 @@ func (s *DescribeChannelBanOutput) SetChannelBan(v *ChannelBan) *DescribeChannel return s } +type DescribeChannelFlowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the channel flow. + // + // ChannelFlowArn is a required field + ChannelFlowArn *string `location:"uri" locationName:"channelFlowArn" min:"5" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeChannelFlowInput"} + if s.ChannelFlowArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelFlowArn")) + } + if s.ChannelFlowArn != nil && len(*s.ChannelFlowArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelFlowArn", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *DescribeChannelFlowInput) SetChannelFlowArn(v string) *DescribeChannelFlowInput { + s.ChannelFlowArn = &v + return s +} + +type DescribeChannelFlowOutput struct { + _ struct{} `type:"structure"` + + // The channel flow details. + ChannelFlow *ChannelFlow `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeChannelFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeChannelFlowOutput) GoString() string { + return s.String() +} + +// SetChannelFlow sets the ChannelFlow field's value. +func (s *DescribeChannelFlowOutput) SetChannelFlow(v *ChannelFlow) *DescribeChannelFlowOutput { + s.ChannelFlow = v + return s +} + type DescribeChannelInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6383,17 +8747,128 @@ func (s DescribeChannelModeratorOutput) GoString() string { return s.String() } -// SetChannelModerator sets the ChannelModerator field's value. -func (s *DescribeChannelModeratorOutput) SetChannelModerator(v *ChannelModerator) *DescribeChannelModeratorOutput { - s.ChannelModerator = v +// SetChannelModerator sets the ChannelModerator field's value. +func (s *DescribeChannelModeratorOutput) SetChannelModerator(v *ChannelModerator) *DescribeChannelModeratorOutput { + s.ChannelModerator = v + return s +} + +type DescribeChannelOutput struct { + _ struct{} `type:"structure"` + + // The channel details. + Channel *Channel `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeChannelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeChannelOutput) GoString() string { + return s.String() +} + +// SetChannel sets the Channel field's value. +func (s *DescribeChannelOutput) SetChannel(v *Channel) *DescribeChannelOutput { + s.Channel = v + return s +} + +type DisassociateChannelFlowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the channel. + // + // ChannelArn is a required field + ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` + + // The ARN of the channel flow. + // + // ChannelFlowArn is a required field + ChannelFlowArn *string `location:"uri" locationName:"channelFlowArn" min:"5" type:"string" required:"true"` + + // The AppInstanceUserArn of the user making the API call. + // + // ChimeBearer is a required field + ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateChannelFlowInput"} + if s.ChannelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelArn")) + } + if s.ChannelArn != nil && len(*s.ChannelArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5)) + } + if s.ChannelFlowArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelFlowArn")) + } + if s.ChannelFlowArn != nil && len(*s.ChannelFlowArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelFlowArn", 5)) + } + if s.ChimeBearer == nil { + invalidParams.Add(request.NewErrParamRequired("ChimeBearer")) + } + if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *DisassociateChannelFlowInput) SetChannelArn(v string) *DisassociateChannelFlowInput { + s.ChannelArn = &v + return s +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *DisassociateChannelFlowInput) SetChannelFlowArn(v string) *DisassociateChannelFlowInput { + s.ChannelFlowArn = &v return s } -type DescribeChannelOutput struct { - _ struct{} `type:"structure"` +// SetChimeBearer sets the ChimeBearer field's value. +func (s *DisassociateChannelFlowInput) SetChimeBearer(v string) *DisassociateChannelFlowInput { + s.ChimeBearer = &v + return s +} - // The channel details. - Channel *Channel `type:"structure"` +type DisassociateChannelFlowOutput struct { + _ struct{} `type:"structure" nopayload:"true"` } // String returns the string representation. @@ -6401,7 +8876,7 @@ type DescribeChannelOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DescribeChannelOutput) String() string { +func (s DisassociateChannelFlowOutput) String() string { return awsutil.Prettify(s) } @@ -6410,16 +8885,10 @@ func (s DescribeChannelOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DescribeChannelOutput) GoString() string { +func (s DisassociateChannelFlowOutput) GoString() string { return s.String() } -// SetChannel sets the Channel field's value. -func (s *DescribeChannelOutput) SetChannel(v *Channel) *DescribeChannelOutput { - s.Channel = v - return s -} - // The client is permanently forbidden from making the request. type ForbiddenException struct { _ struct{} `type:"structure"` @@ -6600,6 +9069,120 @@ func (s *GetChannelMessageOutput) SetChannelMessage(v *ChannelMessage) *GetChann return s } +type GetChannelMessageStatusInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the channel + // + // ChannelArn is a required field + ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` + + // The AppInstanceUserArn of the user making the API call. + // + // ChimeBearer is a required field + ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` + + // The ID of the message. + // + // MessageId is a required field + MessageId *string `location:"uri" locationName:"messageId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChannelMessageStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChannelMessageStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetChannelMessageStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetChannelMessageStatusInput"} + if s.ChannelArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelArn")) + } + if s.ChannelArn != nil && len(*s.ChannelArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5)) + } + if s.ChimeBearer == nil { + invalidParams.Add(request.NewErrParamRequired("ChimeBearer")) + } + if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5)) + } + if s.MessageId == nil { + invalidParams.Add(request.NewErrParamRequired("MessageId")) + } + if s.MessageId != nil && len(*s.MessageId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MessageId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *GetChannelMessageStatusInput) SetChannelArn(v string) *GetChannelMessageStatusInput { + s.ChannelArn = &v + return s +} + +// SetChimeBearer sets the ChimeBearer field's value. +func (s *GetChannelMessageStatusInput) SetChimeBearer(v string) *GetChannelMessageStatusInput { + s.ChimeBearer = &v + return s +} + +// SetMessageId sets the MessageId field's value. +func (s *GetChannelMessageStatusInput) SetMessageId(v string) *GetChannelMessageStatusInput { + s.MessageId = &v + return s +} + +type GetChannelMessageStatusOutput struct { + _ struct{} `type:"structure"` + + // The message status and details. + Status *ChannelMessageStatusStructure `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChannelMessageStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetChannelMessageStatusOutput) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *GetChannelMessageStatusOutput) SetStatus(v *ChannelMessageStatusStructure) *GetChannelMessageStatusOutput { + s.Status = v + return s +} + type GetMessagingSessionEndpointInput struct { _ struct{} `type:"structure" nopayload:"true"` } @@ -6698,6 +9281,70 @@ func (s *Identity) SetName(v string) *Identity { return s } +// Stores metadata about a Lambda processor. +type LambdaConfiguration struct { + _ struct{} `type:"structure"` + + // Controls how the Lambda function is invoked. + // + // InvocationType is a required field + InvocationType *string `type:"string" required:"true" enum:"InvocationType"` + + // The ARN of the Lambda message processing function. + // + // ResourceArn is a required field + ResourceArn *string `min:"15" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LambdaConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LambdaConfiguration"} + if s.InvocationType == nil { + invalidParams.Add(request.NewErrParamRequired("InvocationType")) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 15 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 15)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInvocationType sets the InvocationType field's value. +func (s *LambdaConfiguration) SetInvocationType(v string) *LambdaConfiguration { + s.InvocationType = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *LambdaConfiguration) SetResourceArn(v string) *LambdaConfiguration { + s.ResourceArn = &v + return s +} + type ListChannelBansInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -6837,7 +9484,126 @@ func (s *ListChannelBansOutput) SetChannelBans(v []*ChannelBanSummary) *ListChan } // SetNextToken sets the NextToken field's value. -func (s *ListChannelBansOutput) SetNextToken(v string) *ListChannelBansOutput { +func (s *ListChannelBansOutput) SetNextToken(v string) *ListChannelBansOutput { + s.NextToken = &v + return s +} + +type ListChannelFlowsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the app instance. + // + // AppInstanceArn is a required field + AppInstanceArn *string `location:"querystring" locationName:"app-instance-arn" min:"5" type:"string" required:"true"` + + // The maximum number of channel flows that you want to return. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token passed by previous API calls until all requested channel flows + // are returned. + // + // NextToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListChannelFlowsInput's + // String and GoString methods. + NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelFlowsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelFlowsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListChannelFlowsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListChannelFlowsInput"} + if s.AppInstanceArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceArn")) + } + if s.AppInstanceArn != nil && len(*s.AppInstanceArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceArn", 5)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAppInstanceArn sets the AppInstanceArn field's value. +func (s *ListChannelFlowsInput) SetAppInstanceArn(v string) *ListChannelFlowsInput { + s.AppInstanceArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListChannelFlowsInput) SetMaxResults(v int64) *ListChannelFlowsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListChannelFlowsInput) SetNextToken(v string) *ListChannelFlowsInput { + s.NextToken = &v + return s +} + +type ListChannelFlowsOutput struct { + _ struct{} `type:"structure"` + + // The information about each channel flow. + ChannelFlows []*ChannelFlowSummary `type:"list"` + + // The token passed by previous API calls until all requested channels are returned. + // + // NextToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListChannelFlowsOutput's + // String and GoString methods. + NextToken *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelFlowsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelFlowsOutput) GoString() string { + return s.String() +} + +// SetChannelFlows sets the ChannelFlows field's value. +func (s *ListChannelFlowsOutput) SetChannelFlows(v []*ChannelFlowSummary) *ListChannelFlowsOutput { + s.ChannelFlows = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListChannelFlowsOutput) SetNextToken(v string) *ListChannelFlowsOutput { s.NextToken = &v return s } @@ -7449,6 +10215,124 @@ func (s *ListChannelModeratorsOutput) SetNextToken(v string) *ListChannelModerat return s } +type ListChannelsAssociatedWithChannelFlowInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the channel flow. + // + // ChannelFlowArn is a required field + ChannelFlowArn *string `location:"querystring" locationName:"channel-flow-arn" min:"5" type:"string" required:"true"` + + // The maximum number of channels that you want to return. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token passed by previous API calls until all requested channels are returned. + // + // NextToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListChannelsAssociatedWithChannelFlowInput's + // String and GoString methods. + NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelsAssociatedWithChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelsAssociatedWithChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListChannelsAssociatedWithChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListChannelsAssociatedWithChannelFlowInput"} + if s.ChannelFlowArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelFlowArn")) + } + if s.ChannelFlowArn != nil && len(*s.ChannelFlowArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelFlowArn", 5)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *ListChannelsAssociatedWithChannelFlowInput) SetChannelFlowArn(v string) *ListChannelsAssociatedWithChannelFlowInput { + s.ChannelFlowArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListChannelsAssociatedWithChannelFlowInput) SetMaxResults(v int64) *ListChannelsAssociatedWithChannelFlowInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListChannelsAssociatedWithChannelFlowInput) SetNextToken(v string) *ListChannelsAssociatedWithChannelFlowInput { + s.NextToken = &v + return s +} + +type ListChannelsAssociatedWithChannelFlowOutput struct { + _ struct{} `type:"structure"` + + // The information about each channel. + Channels []*ChannelAssociatedWithFlowSummary `type:"list"` + + // The token passed by previous API calls until all requested channels are returned. + // + // NextToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListChannelsAssociatedWithChannelFlowOutput's + // String and GoString methods. + NextToken *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelsAssociatedWithChannelFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListChannelsAssociatedWithChannelFlowOutput) GoString() string { + return s.String() +} + +// SetChannels sets the Channels field's value. +func (s *ListChannelsAssociatedWithChannelFlowOutput) SetChannels(v []*ChannelAssociatedWithFlowSummary) *ListChannelsAssociatedWithChannelFlowOutput { + s.Channels = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListChannelsAssociatedWithChannelFlowOutput) SetNextToken(v string) *ListChannelsAssociatedWithChannelFlowOutput { + s.NextToken = &v + return s +} + type ListChannelsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -7727,6 +10611,86 @@ func (s *ListChannelsOutput) SetNextToken(v string) *ListChannelsOutput { return s } +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the resource. + // + // ResourceARN is a required field + ResourceARN *string `location:"querystring" locationName:"arn" min:"5" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 5)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The tag key-value pairs. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + // The websocket endpoint used to connect to Amazon Chime SDK messaging. type MessagingSessionEndpoint struct { _ struct{} `type:"structure"` @@ -7825,6 +10789,168 @@ func (s *NotFoundException) RequestID() string { return s.RespMetadata.RequestID } +// The information about a processor in a channel flow. +type Processor struct { + _ struct{} `type:"structure"` + + // The information about the type of processor and its identifier. + // + // Configuration is a required field + Configuration *ProcessorConfiguration `type:"structure" required:"true"` + + // The sequence in which processors run. If you have multiple processors in + // a channel flow, message processing goes through each processor in the sequence. + // The value determines the sequence. At this point, we support only 1 processor + // within a flow. + // + // ExecutionOrder is a required field + ExecutionOrder *int64 `min:"1" type:"integer" required:"true"` + + // Determines whether to continue or stop processing if communication with processor + // fails. If the last processor in a channel flow sequence has a fallback action + // of CONTINUE, and communication with the processor fails, the message is considered + // processed and sent to the recipients in the channel. + // + // FallbackAction is a required field + FallbackAction *string `type:"string" required:"true" enum:"FallbackAction"` + + // The name of the channel flow. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Processor's + // String and GoString methods. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Processor) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Processor) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Processor) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Processor"} + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + if s.ExecutionOrder == nil { + invalidParams.Add(request.NewErrParamRequired("ExecutionOrder")) + } + if s.ExecutionOrder != nil && *s.ExecutionOrder < 1 { + invalidParams.Add(request.NewErrParamMinValue("ExecutionOrder", 1)) + } + if s.FallbackAction == nil { + invalidParams.Add(request.NewErrParamRequired("FallbackAction")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfiguration sets the Configuration field's value. +func (s *Processor) SetConfiguration(v *ProcessorConfiguration) *Processor { + s.Configuration = v + return s +} + +// SetExecutionOrder sets the ExecutionOrder field's value. +func (s *Processor) SetExecutionOrder(v int64) *Processor { + s.ExecutionOrder = &v + return s +} + +// SetFallbackAction sets the FallbackAction field's value. +func (s *Processor) SetFallbackAction(v string) *Processor { + s.FallbackAction = &v + return s +} + +// SetName sets the Name field's value. +func (s *Processor) SetName(v string) *Processor { + s.Name = &v + return s +} + +// A processor's metadata. +type ProcessorConfiguration struct { + _ struct{} `type:"structure"` + + // Indicates that the processor is of type Lambda. + // + // Lambda is a required field + Lambda *LambdaConfiguration `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProcessorConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProcessorConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProcessorConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProcessorConfiguration"} + if s.Lambda == nil { + invalidParams.Add(request.NewErrParamRequired("Lambda")) + } + if s.Lambda != nil { + if err := s.Lambda.Validate(); err != nil { + invalidParams.AddNested("Lambda", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLambda sets the Lambda field's value. +func (s *ProcessorConfiguration) SetLambda(v *LambdaConfiguration) *ProcessorConfiguration { + s.Lambda = v + return s +} + type RedactChannelMessageInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -8166,6 +11292,9 @@ type SendChannelMessageOutput struct { // The ID string assigned to each message. MessageId *string `min:"1" type:"string"` + + // The status of the channel message. + Status *ChannelMessageStatusStructure `type:"structure"` } // String returns the string representation. @@ -8198,6 +11327,12 @@ func (s *SendChannelMessageOutput) SetMessageId(v string) *SendChannelMessageOut return s } +// SetStatus sets the Status field's value. +func (s *SendChannelMessageOutput) SetStatus(v *ChannelMessageStatusStructure) *SendChannelMessageOutput { + s.Status = v + return s +} + // The service encountered an unexpected error. type ServiceFailureException struct { _ struct{} `type:"structure"` @@ -8330,11 +11465,11 @@ func (s *ServiceUnavailableException) RequestID() string { return s.RespMetadata.RequestID } -// Describes a tag applied to a resource. +// A tag object containing a key-value pair. type Tag struct { _ struct{} `type:"structure"` - // The key of the tag. + // The key in a tag. // // Key is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by Tag's @@ -8343,7 +11478,7 @@ type Tag struct { // Key is a required field Key *string `min:"1" type:"string" required:"true" sensitive:"true"` - // The value of the tag. + // The value in a tag. // // Value is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by Tag's @@ -8405,6 +11540,104 @@ func (s *Tag) SetValue(v string) *Tag { return s } +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The resource ARN. + // + // ResourceARN is a required field + ResourceARN *string `min:"5" type:"string" required:"true"` + + // The tag key-value pairs. + // + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 5)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure" nopayload:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + // The client exceeded its request rate limit. type ThrottledClientException struct { _ struct{} `type:"structure"` @@ -8537,6 +11770,222 @@ func (s *UnauthorizedClientException) RequestID() string { return s.RespMetadata.RequestID } +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The resource ARN. + // + // ResourceARN is a required field + ResourceARN *string `min:"5" type:"string" required:"true"` + + // The tag keys. + // + // TagKeys is a required field + TagKeys []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 5)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure" nopayload:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateChannelFlowInput struct { + _ struct{} `type:"structure"` + + // The ARN of the channel flow. + // + // ChannelFlowArn is a required field + ChannelFlowArn *string `location:"uri" locationName:"channelFlowArn" min:"5" type:"string" required:"true"` + + // The name of the channel flow. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateChannelFlowInput's + // String and GoString methods. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // Information about the processor Lambda functions + // + // Processors is a required field + Processors []*Processor `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateChannelFlowInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateChannelFlowInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateChannelFlowInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateChannelFlowInput"} + if s.ChannelFlowArn == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelFlowArn")) + } + if s.ChannelFlowArn != nil && len(*s.ChannelFlowArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ChannelFlowArn", 5)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Processors == nil { + invalidParams.Add(request.NewErrParamRequired("Processors")) + } + if s.Processors != nil && len(s.Processors) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Processors", 1)) + } + if s.Processors != nil { + for i, v := range s.Processors { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Processors", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *UpdateChannelFlowInput) SetChannelFlowArn(v string) *UpdateChannelFlowInput { + s.ChannelFlowArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateChannelFlowInput) SetName(v string) *UpdateChannelFlowInput { + s.Name = &v + return s +} + +// SetProcessors sets the Processors field's value. +func (s *UpdateChannelFlowInput) SetProcessors(v []*Processor) *UpdateChannelFlowInput { + s.Processors = v + return s +} + +type UpdateChannelFlowOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the channel flow. + ChannelFlowArn *string `min:"5" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateChannelFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateChannelFlowOutput) GoString() string { + return s.String() +} + +// SetChannelFlowArn sets the ChannelFlowArn field's value. +func (s *UpdateChannelFlowOutput) SetChannelFlowArn(v string) *UpdateChannelFlowOutput { + s.ChannelFlowArn = &v + return s +} + type UpdateChannelInput struct { _ struct{} `type:"structure"` @@ -8768,6 +12217,9 @@ type UpdateChannelMessageOutput struct { // The ID string of the message being updated. MessageId *string `min:"1" type:"string"` + + // The status of the message update. + Status *ChannelMessageStatusStructure `type:"structure"` } // String returns the string representation. @@ -8800,6 +12252,12 @@ func (s *UpdateChannelMessageOutput) SetMessageId(v string) *UpdateChannelMessag return s } +// SetStatus sets the Status field's value. +func (s *UpdateChannelMessageOutput) SetStatus(v *ChannelMessageStatusStructure) *UpdateChannelMessageOutput { + s.Status = v + return s +} + type UpdateChannelOutput struct { _ struct{} `type:"structure"` @@ -8960,6 +12418,30 @@ func ChannelMessagePersistenceType_Values() []string { } } +const ( + // ChannelMessageStatusSent is a ChannelMessageStatus enum value + ChannelMessageStatusSent = "SENT" + + // ChannelMessageStatusPending is a ChannelMessageStatus enum value + ChannelMessageStatusPending = "PENDING" + + // ChannelMessageStatusFailed is a ChannelMessageStatus enum value + ChannelMessageStatusFailed = "FAILED" + + // ChannelMessageStatusDenied is a ChannelMessageStatus enum value + ChannelMessageStatusDenied = "DENIED" +) + +// ChannelMessageStatus_Values returns all elements of the ChannelMessageStatus enum +func ChannelMessageStatus_Values() []string { + return []string{ + ChannelMessageStatusSent, + ChannelMessageStatusPending, + ChannelMessageStatusFailed, + ChannelMessageStatusDenied, + } +} + const ( // ChannelMessageTypeStandard is a ChannelMessageType enum value ChannelMessageTypeStandard = "STANDARD" @@ -9076,6 +12558,34 @@ func ErrorCode_Values() []string { } } +const ( + // FallbackActionContinue is a FallbackAction enum value + FallbackActionContinue = "CONTINUE" + + // FallbackActionAbort is a FallbackAction enum value + FallbackActionAbort = "ABORT" +) + +// FallbackAction_Values returns all elements of the FallbackAction enum +func FallbackAction_Values() []string { + return []string{ + FallbackActionContinue, + FallbackActionAbort, + } +} + +const ( + // InvocationTypeAsync is a InvocationType enum value + InvocationTypeAsync = "ASYNC" +) + +// InvocationType_Values returns all elements of the InvocationType enum +func InvocationType_Values() []string { + return []string{ + InvocationTypeAsync, + } +} + const ( // SortOrderAscending is a SortOrder enum value SortOrderAscending = "ASCENDING" diff --git a/service/chimesdkmessaging/chimesdkmessagingiface/interface.go b/service/chimesdkmessaging/chimesdkmessagingiface/interface.go index a230eb1fe22..3c3a99d8a18 100644 --- a/service/chimesdkmessaging/chimesdkmessagingiface/interface.go +++ b/service/chimesdkmessaging/chimesdkmessagingiface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // Amazon Chime SDK Messaging. // func myFunc(svc chimesdkmessagingiface.ChimeSDKMessagingAPI) bool { -// // Make svc.BatchCreateChannelMembership request +// // Make svc.AssociateChannelFlow request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockChimeSDKMessagingClient struct { // chimesdkmessagingiface.ChimeSDKMessagingAPI // } -// func (m *mockChimeSDKMessagingClient) BatchCreateChannelMembership(input *chimesdkmessaging.BatchCreateChannelMembershipInput) (*chimesdkmessaging.BatchCreateChannelMembershipOutput, error) { +// func (m *mockChimeSDKMessagingClient) AssociateChannelFlow(input *chimesdkmessaging.AssociateChannelFlowInput) (*chimesdkmessaging.AssociateChannelFlowOutput, error) { // // mock response/functionality // } // @@ -60,10 +60,18 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ChimeSDKMessagingAPI interface { + AssociateChannelFlow(*chimesdkmessaging.AssociateChannelFlowInput) (*chimesdkmessaging.AssociateChannelFlowOutput, error) + AssociateChannelFlowWithContext(aws.Context, *chimesdkmessaging.AssociateChannelFlowInput, ...request.Option) (*chimesdkmessaging.AssociateChannelFlowOutput, error) + AssociateChannelFlowRequest(*chimesdkmessaging.AssociateChannelFlowInput) (*request.Request, *chimesdkmessaging.AssociateChannelFlowOutput) + BatchCreateChannelMembership(*chimesdkmessaging.BatchCreateChannelMembershipInput) (*chimesdkmessaging.BatchCreateChannelMembershipOutput, error) BatchCreateChannelMembershipWithContext(aws.Context, *chimesdkmessaging.BatchCreateChannelMembershipInput, ...request.Option) (*chimesdkmessaging.BatchCreateChannelMembershipOutput, error) BatchCreateChannelMembershipRequest(*chimesdkmessaging.BatchCreateChannelMembershipInput) (*request.Request, *chimesdkmessaging.BatchCreateChannelMembershipOutput) + ChannelFlowCallback(*chimesdkmessaging.ChannelFlowCallbackInput) (*chimesdkmessaging.ChannelFlowCallbackOutput, error) + ChannelFlowCallbackWithContext(aws.Context, *chimesdkmessaging.ChannelFlowCallbackInput, ...request.Option) (*chimesdkmessaging.ChannelFlowCallbackOutput, error) + ChannelFlowCallbackRequest(*chimesdkmessaging.ChannelFlowCallbackInput) (*request.Request, *chimesdkmessaging.ChannelFlowCallbackOutput) + CreateChannel(*chimesdkmessaging.CreateChannelInput) (*chimesdkmessaging.CreateChannelOutput, error) CreateChannelWithContext(aws.Context, *chimesdkmessaging.CreateChannelInput, ...request.Option) (*chimesdkmessaging.CreateChannelOutput, error) CreateChannelRequest(*chimesdkmessaging.CreateChannelInput) (*request.Request, *chimesdkmessaging.CreateChannelOutput) @@ -72,6 +80,10 @@ type ChimeSDKMessagingAPI interface { CreateChannelBanWithContext(aws.Context, *chimesdkmessaging.CreateChannelBanInput, ...request.Option) (*chimesdkmessaging.CreateChannelBanOutput, error) CreateChannelBanRequest(*chimesdkmessaging.CreateChannelBanInput) (*request.Request, *chimesdkmessaging.CreateChannelBanOutput) + CreateChannelFlow(*chimesdkmessaging.CreateChannelFlowInput) (*chimesdkmessaging.CreateChannelFlowOutput, error) + CreateChannelFlowWithContext(aws.Context, *chimesdkmessaging.CreateChannelFlowInput, ...request.Option) (*chimesdkmessaging.CreateChannelFlowOutput, error) + CreateChannelFlowRequest(*chimesdkmessaging.CreateChannelFlowInput) (*request.Request, *chimesdkmessaging.CreateChannelFlowOutput) + CreateChannelMembership(*chimesdkmessaging.CreateChannelMembershipInput) (*chimesdkmessaging.CreateChannelMembershipOutput, error) CreateChannelMembershipWithContext(aws.Context, *chimesdkmessaging.CreateChannelMembershipInput, ...request.Option) (*chimesdkmessaging.CreateChannelMembershipOutput, error) CreateChannelMembershipRequest(*chimesdkmessaging.CreateChannelMembershipInput) (*request.Request, *chimesdkmessaging.CreateChannelMembershipOutput) @@ -88,6 +100,10 @@ type ChimeSDKMessagingAPI interface { DeleteChannelBanWithContext(aws.Context, *chimesdkmessaging.DeleteChannelBanInput, ...request.Option) (*chimesdkmessaging.DeleteChannelBanOutput, error) DeleteChannelBanRequest(*chimesdkmessaging.DeleteChannelBanInput) (*request.Request, *chimesdkmessaging.DeleteChannelBanOutput) + DeleteChannelFlow(*chimesdkmessaging.DeleteChannelFlowInput) (*chimesdkmessaging.DeleteChannelFlowOutput, error) + DeleteChannelFlowWithContext(aws.Context, *chimesdkmessaging.DeleteChannelFlowInput, ...request.Option) (*chimesdkmessaging.DeleteChannelFlowOutput, error) + DeleteChannelFlowRequest(*chimesdkmessaging.DeleteChannelFlowInput) (*request.Request, *chimesdkmessaging.DeleteChannelFlowOutput) + DeleteChannelMembership(*chimesdkmessaging.DeleteChannelMembershipInput) (*chimesdkmessaging.DeleteChannelMembershipOutput, error) DeleteChannelMembershipWithContext(aws.Context, *chimesdkmessaging.DeleteChannelMembershipInput, ...request.Option) (*chimesdkmessaging.DeleteChannelMembershipOutput, error) DeleteChannelMembershipRequest(*chimesdkmessaging.DeleteChannelMembershipInput) (*request.Request, *chimesdkmessaging.DeleteChannelMembershipOutput) @@ -108,6 +124,10 @@ type ChimeSDKMessagingAPI interface { DescribeChannelBanWithContext(aws.Context, *chimesdkmessaging.DescribeChannelBanInput, ...request.Option) (*chimesdkmessaging.DescribeChannelBanOutput, error) DescribeChannelBanRequest(*chimesdkmessaging.DescribeChannelBanInput) (*request.Request, *chimesdkmessaging.DescribeChannelBanOutput) + DescribeChannelFlow(*chimesdkmessaging.DescribeChannelFlowInput) (*chimesdkmessaging.DescribeChannelFlowOutput, error) + DescribeChannelFlowWithContext(aws.Context, *chimesdkmessaging.DescribeChannelFlowInput, ...request.Option) (*chimesdkmessaging.DescribeChannelFlowOutput, error) + DescribeChannelFlowRequest(*chimesdkmessaging.DescribeChannelFlowInput) (*request.Request, *chimesdkmessaging.DescribeChannelFlowOutput) + DescribeChannelMembership(*chimesdkmessaging.DescribeChannelMembershipInput) (*chimesdkmessaging.DescribeChannelMembershipOutput, error) DescribeChannelMembershipWithContext(aws.Context, *chimesdkmessaging.DescribeChannelMembershipInput, ...request.Option) (*chimesdkmessaging.DescribeChannelMembershipOutput, error) DescribeChannelMembershipRequest(*chimesdkmessaging.DescribeChannelMembershipInput) (*request.Request, *chimesdkmessaging.DescribeChannelMembershipOutput) @@ -124,10 +144,18 @@ type ChimeSDKMessagingAPI interface { DescribeChannelModeratorWithContext(aws.Context, *chimesdkmessaging.DescribeChannelModeratorInput, ...request.Option) (*chimesdkmessaging.DescribeChannelModeratorOutput, error) DescribeChannelModeratorRequest(*chimesdkmessaging.DescribeChannelModeratorInput) (*request.Request, *chimesdkmessaging.DescribeChannelModeratorOutput) + DisassociateChannelFlow(*chimesdkmessaging.DisassociateChannelFlowInput) (*chimesdkmessaging.DisassociateChannelFlowOutput, error) + DisassociateChannelFlowWithContext(aws.Context, *chimesdkmessaging.DisassociateChannelFlowInput, ...request.Option) (*chimesdkmessaging.DisassociateChannelFlowOutput, error) + DisassociateChannelFlowRequest(*chimesdkmessaging.DisassociateChannelFlowInput) (*request.Request, *chimesdkmessaging.DisassociateChannelFlowOutput) + GetChannelMessage(*chimesdkmessaging.GetChannelMessageInput) (*chimesdkmessaging.GetChannelMessageOutput, error) GetChannelMessageWithContext(aws.Context, *chimesdkmessaging.GetChannelMessageInput, ...request.Option) (*chimesdkmessaging.GetChannelMessageOutput, error) GetChannelMessageRequest(*chimesdkmessaging.GetChannelMessageInput) (*request.Request, *chimesdkmessaging.GetChannelMessageOutput) + GetChannelMessageStatus(*chimesdkmessaging.GetChannelMessageStatusInput) (*chimesdkmessaging.GetChannelMessageStatusOutput, error) + GetChannelMessageStatusWithContext(aws.Context, *chimesdkmessaging.GetChannelMessageStatusInput, ...request.Option) (*chimesdkmessaging.GetChannelMessageStatusOutput, error) + GetChannelMessageStatusRequest(*chimesdkmessaging.GetChannelMessageStatusInput) (*request.Request, *chimesdkmessaging.GetChannelMessageStatusOutput) + GetMessagingSessionEndpoint(*chimesdkmessaging.GetMessagingSessionEndpointInput) (*chimesdkmessaging.GetMessagingSessionEndpointOutput, error) GetMessagingSessionEndpointWithContext(aws.Context, *chimesdkmessaging.GetMessagingSessionEndpointInput, ...request.Option) (*chimesdkmessaging.GetMessagingSessionEndpointOutput, error) GetMessagingSessionEndpointRequest(*chimesdkmessaging.GetMessagingSessionEndpointInput) (*request.Request, *chimesdkmessaging.GetMessagingSessionEndpointOutput) @@ -139,6 +167,13 @@ type ChimeSDKMessagingAPI interface { ListChannelBansPages(*chimesdkmessaging.ListChannelBansInput, func(*chimesdkmessaging.ListChannelBansOutput, bool) bool) error ListChannelBansPagesWithContext(aws.Context, *chimesdkmessaging.ListChannelBansInput, func(*chimesdkmessaging.ListChannelBansOutput, bool) bool, ...request.Option) error + ListChannelFlows(*chimesdkmessaging.ListChannelFlowsInput) (*chimesdkmessaging.ListChannelFlowsOutput, error) + ListChannelFlowsWithContext(aws.Context, *chimesdkmessaging.ListChannelFlowsInput, ...request.Option) (*chimesdkmessaging.ListChannelFlowsOutput, error) + ListChannelFlowsRequest(*chimesdkmessaging.ListChannelFlowsInput) (*request.Request, *chimesdkmessaging.ListChannelFlowsOutput) + + ListChannelFlowsPages(*chimesdkmessaging.ListChannelFlowsInput, func(*chimesdkmessaging.ListChannelFlowsOutput, bool) bool) error + ListChannelFlowsPagesWithContext(aws.Context, *chimesdkmessaging.ListChannelFlowsInput, func(*chimesdkmessaging.ListChannelFlowsOutput, bool) bool, ...request.Option) error + ListChannelMemberships(*chimesdkmessaging.ListChannelMembershipsInput) (*chimesdkmessaging.ListChannelMembershipsOutput, error) ListChannelMembershipsWithContext(aws.Context, *chimesdkmessaging.ListChannelMembershipsInput, ...request.Option) (*chimesdkmessaging.ListChannelMembershipsOutput, error) ListChannelMembershipsRequest(*chimesdkmessaging.ListChannelMembershipsInput) (*request.Request, *chimesdkmessaging.ListChannelMembershipsOutput) @@ -174,6 +209,13 @@ type ChimeSDKMessagingAPI interface { ListChannelsPages(*chimesdkmessaging.ListChannelsInput, func(*chimesdkmessaging.ListChannelsOutput, bool) bool) error ListChannelsPagesWithContext(aws.Context, *chimesdkmessaging.ListChannelsInput, func(*chimesdkmessaging.ListChannelsOutput, bool) bool, ...request.Option) error + ListChannelsAssociatedWithChannelFlow(*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowInput) (*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowOutput, error) + ListChannelsAssociatedWithChannelFlowWithContext(aws.Context, *chimesdkmessaging.ListChannelsAssociatedWithChannelFlowInput, ...request.Option) (*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowOutput, error) + ListChannelsAssociatedWithChannelFlowRequest(*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowInput) (*request.Request, *chimesdkmessaging.ListChannelsAssociatedWithChannelFlowOutput) + + ListChannelsAssociatedWithChannelFlowPages(*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowInput, func(*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowOutput, bool) bool) error + ListChannelsAssociatedWithChannelFlowPagesWithContext(aws.Context, *chimesdkmessaging.ListChannelsAssociatedWithChannelFlowInput, func(*chimesdkmessaging.ListChannelsAssociatedWithChannelFlowOutput, bool) bool, ...request.Option) error + ListChannelsModeratedByAppInstanceUser(*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserInput) (*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, error) ListChannelsModeratedByAppInstanceUserWithContext(aws.Context, *chimesdkmessaging.ListChannelsModeratedByAppInstanceUserInput, ...request.Option) (*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, error) ListChannelsModeratedByAppInstanceUserRequest(*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserInput) (*request.Request, *chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput) @@ -181,6 +223,10 @@ type ChimeSDKMessagingAPI interface { ListChannelsModeratedByAppInstanceUserPages(*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserInput, func(*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, bool) bool) error ListChannelsModeratedByAppInstanceUserPagesWithContext(aws.Context, *chimesdkmessaging.ListChannelsModeratedByAppInstanceUserInput, func(*chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, bool) bool, ...request.Option) error + ListTagsForResource(*chimesdkmessaging.ListTagsForResourceInput) (*chimesdkmessaging.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *chimesdkmessaging.ListTagsForResourceInput, ...request.Option) (*chimesdkmessaging.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*chimesdkmessaging.ListTagsForResourceInput) (*request.Request, *chimesdkmessaging.ListTagsForResourceOutput) + RedactChannelMessage(*chimesdkmessaging.RedactChannelMessageInput) (*chimesdkmessaging.RedactChannelMessageOutput, error) RedactChannelMessageWithContext(aws.Context, *chimesdkmessaging.RedactChannelMessageInput, ...request.Option) (*chimesdkmessaging.RedactChannelMessageOutput, error) RedactChannelMessageRequest(*chimesdkmessaging.RedactChannelMessageInput) (*request.Request, *chimesdkmessaging.RedactChannelMessageOutput) @@ -189,10 +235,22 @@ type ChimeSDKMessagingAPI interface { SendChannelMessageWithContext(aws.Context, *chimesdkmessaging.SendChannelMessageInput, ...request.Option) (*chimesdkmessaging.SendChannelMessageOutput, error) SendChannelMessageRequest(*chimesdkmessaging.SendChannelMessageInput) (*request.Request, *chimesdkmessaging.SendChannelMessageOutput) + TagResource(*chimesdkmessaging.TagResourceInput) (*chimesdkmessaging.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *chimesdkmessaging.TagResourceInput, ...request.Option) (*chimesdkmessaging.TagResourceOutput, error) + TagResourceRequest(*chimesdkmessaging.TagResourceInput) (*request.Request, *chimesdkmessaging.TagResourceOutput) + + UntagResource(*chimesdkmessaging.UntagResourceInput) (*chimesdkmessaging.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *chimesdkmessaging.UntagResourceInput, ...request.Option) (*chimesdkmessaging.UntagResourceOutput, error) + UntagResourceRequest(*chimesdkmessaging.UntagResourceInput) (*request.Request, *chimesdkmessaging.UntagResourceOutput) + UpdateChannel(*chimesdkmessaging.UpdateChannelInput) (*chimesdkmessaging.UpdateChannelOutput, error) UpdateChannelWithContext(aws.Context, *chimesdkmessaging.UpdateChannelInput, ...request.Option) (*chimesdkmessaging.UpdateChannelOutput, error) UpdateChannelRequest(*chimesdkmessaging.UpdateChannelInput) (*request.Request, *chimesdkmessaging.UpdateChannelOutput) + UpdateChannelFlow(*chimesdkmessaging.UpdateChannelFlowInput) (*chimesdkmessaging.UpdateChannelFlowOutput, error) + UpdateChannelFlowWithContext(aws.Context, *chimesdkmessaging.UpdateChannelFlowInput, ...request.Option) (*chimesdkmessaging.UpdateChannelFlowOutput, error) + UpdateChannelFlowRequest(*chimesdkmessaging.UpdateChannelFlowInput) (*request.Request, *chimesdkmessaging.UpdateChannelFlowOutput) + UpdateChannelMessage(*chimesdkmessaging.UpdateChannelMessageInput) (*chimesdkmessaging.UpdateChannelMessageOutput, error) UpdateChannelMessageWithContext(aws.Context, *chimesdkmessaging.UpdateChannelMessageInput, ...request.Option) (*chimesdkmessaging.UpdateChannelMessageOutput, error) UpdateChannelMessageRequest(*chimesdkmessaging.UpdateChannelMessageInput) (*request.Request, *chimesdkmessaging.UpdateChannelMessageOutput) diff --git a/service/dataexchange/api.go b/service/dataexchange/api.go index 15d7f0ae35c..734d9a33e4c 100644 --- a/service/dataexchange/api.go +++ b/service/dataexchange/api.go @@ -343,6 +343,12 @@ func (c *DataExchange) CreateJobRequest(input *CreateJobInput) (req *request.Req // API operation CreateJob for usage and error information. // // Returned Error Types: +// * ResourceNotFoundException +// The resource couldn't be found. +// +// * ThrottlingException +// The limit on the number of requests per second was exceeded. +// // * ValidationException // The request was invalid. // @@ -352,12 +358,6 @@ func (c *DataExchange) CreateJobRequest(input *CreateJobInput) (req *request.Req // * AccessDeniedException // Access to the resource is denied. // -// * ResourceNotFoundException -// The resource couldn't be found. -// -// * ThrottlingException -// The limit on the number of requests per second was exceeded. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateJob func (c *DataExchange) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) { req, out := c.CreateJobRequest(input) @@ -2779,10 +2779,11 @@ func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } +// What occurs after a certain event. type Action struct { _ struct{} `type:"structure"` - // Details of the operation to be performed by the job. + // Details for the export revision to Amazon S3 action. ExportRevisionToS3 *AutoExportRevisionToS3RequestDetails `type:"structure"` } @@ -2895,9 +2896,13 @@ func (s *AssetDestinationEntry) SetKey(v string) *AssetDestinationEntry { return s } +// Information about the asset. type AssetDetails struct { _ struct{} `type:"structure"` + // The Amazon Redshift datashare that is the asset. + RedshiftDataShareAsset *RedshiftDataShareAsset `type:"structure"` + // The S3 object that is the asset. S3SnapshotAsset *S3SnapshotAsset `type:"structure"` } @@ -2920,16 +2925,23 @@ func (s AssetDetails) GoString() string { return s.String() } +// SetRedshiftDataShareAsset sets the RedshiftDataShareAsset field's value. +func (s *AssetDetails) SetRedshiftDataShareAsset(v *RedshiftDataShareAsset) *AssetDetails { + s.RedshiftDataShareAsset = v + return s +} + // SetS3SnapshotAsset sets the S3SnapshotAsset field's value. func (s *AssetDetails) SetS3SnapshotAsset(v *S3SnapshotAsset) *AssetDetails { s.S3SnapshotAsset = v return s } -// An asset in AWS Data Exchange is a piece of data that can be stored as an -// S3 object. The asset can be a structured data file, an image file, or some -// other data file. When you create an import job for your files, you create -// an asset in AWS Data Exchange for each of those files. +// An asset in AWS Data Exchange is a piece of data. The asset can be a structured +// data file, an image file, or some other data file that can be stored as an +// S3 object, or an Amazon Redshift datashare (Preview). When you create an +// import job for your files, you create an asset in AWS Data Exchange for each +// of those files. type AssetEntry struct { _ struct{} `type:"structure"` @@ -2938,13 +2950,12 @@ type AssetEntry struct { // Arn is a required field Arn *string `type:"string" required:"true"` - // Information about the asset, including its size. + // Information about the asset. // // AssetDetails is a required field AssetDetails *AssetDetails `type:"structure" required:"true"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. // // AssetType is a required field AssetType *string `type:"string" required:"true" enum:"AssetType"` @@ -3189,9 +3200,7 @@ func (s *AutoExportRevisionDestinationEntry) SetKeyPattern(v string) *AutoExport type AutoExportRevisionToS3RequestDetails struct { _ struct{} `type:"structure"` - // Encryption configuration of the export job. Includes the encryption type - // in addition to the AWS KMS key. The KMS key is only necessary if you chose - // the KMS encryption. type. + // Encryption configuration for the auto export job. Encryption *ExportServerSideEncryption `type:"structure"` // A revision destination is the Amazon S3 bucket folder destination to where @@ -3400,8 +3409,7 @@ func (s *ConflictException) RequestID() string { type CreateDataSetInput struct { _ struct{} `type:"structure"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. // // AssetType is a required field AssetType *string `type:"string" required:"true" enum:"AssetType"` @@ -3491,8 +3499,7 @@ type CreateDataSetOutput struct { // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. Arn *string `type:"string"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. AssetType *string `type:"string" enum:"AssetType"` // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. @@ -3513,6 +3520,7 @@ type CreateDataSetOutput struct { // can access that copy of the data set as an entitled data set. Origin *string `type:"string" enum:"Origin"` + // Information about the origin of the data set. OriginDetails *OriginDetails `type:"structure"` // A unique identifier. @@ -3682,6 +3690,7 @@ func (s *CreateEventActionInput) SetEvent(v *Event) *CreateEventActionInput { type CreateEventActionOutput struct { _ struct{} `type:"structure"` + // What occurs after a certain event. Action *Action `type:"structure"` // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. @@ -3690,6 +3699,7 @@ type CreateEventActionOutput struct { // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + // What occurs to start an action. Event *Event `type:"structure"` // A unique identifier. @@ -4095,8 +4105,7 @@ type DataSetEntry struct { // Arn is a required field Arn *string `type:"string" required:"true"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. // // AssetType is a required field AssetType *string `type:"string" required:"true" enum:"AssetType"` @@ -4541,12 +4550,14 @@ func (s DeleteRevisionOutput) GoString() string { return s.String() } +// Information about the job error. type Details struct { _ struct{} `type:"structure"` + // Information about the job error. ImportAssetFromSignedUrlJobErrorDetails *ImportAssetFromSignedUrlJobErrorDetails `type:"structure"` - // The list of sources for the assets. + // Information about the job error. ImportAssetsFromS3JobErrorDetails []*AssetSourceEntry `type:"list"` } @@ -4580,9 +4591,11 @@ func (s *Details) SetImportAssetsFromS3JobErrorDetails(v []*AssetSourceEntry) *D return s } +// What occurs to start an action. type Event struct { _ struct{} `type:"structure"` + // What occurs to start the revision publish action. RevisionPublished *RevisionPublished `type:"structure"` } @@ -4635,7 +4648,7 @@ type EventActionEntry struct { // Action is a required field Action *Action `type:"structure" required:"true"` - // The ARN for the event action. + // The Amazon Resource Name (ARN) for the event action. // // Arn is a required field Arn *string `type:"string" required:"true"` @@ -5125,7 +5138,7 @@ type ExportRevisionsToS3ResponseDetails struct { // Encryption configuration of the export job. Encryption *ExportServerSideEncryption `type:"structure"` - // The ARN for the event action. + // The Amazon Resource Name (ARN) of the event action. EventActionArn *string `type:"string"` // The destination in Amazon S3 where the revision is exported. @@ -5320,10 +5333,10 @@ type GetAssetOutput struct { // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. Arn *string `type:"string"` + // Information about the asset. AssetDetails *AssetDetails `type:"structure"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. AssetType *string `type:"string" enum:"AssetType"` // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. @@ -5481,8 +5494,7 @@ type GetDataSetOutput struct { // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. Arn *string `type:"string"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. AssetType *string `type:"string" enum:"AssetType"` // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. @@ -5503,6 +5515,7 @@ type GetDataSetOutput struct { // can access that copy of the data set as an entitled data set. Origin *string `type:"string" enum:"Origin"` + // Information about the origin of the data set. OriginDetails *OriginDetails `type:"structure"` // A unique identifier. @@ -5648,6 +5661,7 @@ func (s *GetEventActionInput) SetEventActionId(v string) *GetEventActionInput { type GetEventActionOutput struct { _ struct{} `type:"structure"` + // What occurs after a certain event. Action *Action `type:"structure"` // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. @@ -5656,6 +5670,7 @@ type GetEventActionOutput struct { // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + // What occurs to start an action. Event *Event `type:"structure"` // A unique identifier. @@ -6019,12 +6034,11 @@ func (s *GetRevisionOutput) SetUpdatedAt(v time.Time) *GetRevisionOutput { return s } +// Information about the job error. type ImportAssetFromSignedUrlJobErrorDetails struct { _ struct{} `type:"structure"` - // The name of the asset. When importing from Amazon S3, the S3 object key is - // used as the asset name. When exporting to Amazon S3, the asset name is used - // as default target S3 object key. + // Information about the job error. // // AssetName is a required field AssetName *string `type:"string" required:"true"` @@ -6153,7 +6167,7 @@ func (s *ImportAssetFromSignedUrlRequestDetails) SetRevisionId(v string) *Import type ImportAssetFromSignedUrlResponseDetails struct { _ struct{} `type:"structure"` - // The name for the asset associated with this import response. + // The name for the asset associated with this import job. // // AssetName is a required field AssetName *string `type:"string" required:"true"` @@ -6233,6 +6247,147 @@ func (s *ImportAssetFromSignedUrlResponseDetails) SetSignedUrlExpiresAt(v time.T return s } +// Details from an import from Amazon Redshift datashare request. +type ImportAssetsFromRedshiftDataSharesRequestDetails struct { + _ struct{} `type:"structure"` + + // A list of Amazon Redshift datashare assets. + // + // AssetSources is a required field + AssetSources []*RedshiftDataShareAssetSourceEntry `type:"list" required:"true"` + + // The unique identifier for the data set associated with this import job. + // + // DataSetId is a required field + DataSetId *string `type:"string" required:"true"` + + // The unique identifier for the revision associated with this import job. + // + // RevisionId is a required field + RevisionId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportAssetsFromRedshiftDataSharesRequestDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportAssetsFromRedshiftDataSharesRequestDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImportAssetsFromRedshiftDataSharesRequestDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportAssetsFromRedshiftDataSharesRequestDetails"} + if s.AssetSources == nil { + invalidParams.Add(request.NewErrParamRequired("AssetSources")) + } + if s.DataSetId == nil { + invalidParams.Add(request.NewErrParamRequired("DataSetId")) + } + if s.RevisionId == nil { + invalidParams.Add(request.NewErrParamRequired("RevisionId")) + } + if s.AssetSources != nil { + for i, v := range s.AssetSources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssetSources", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssetSources sets the AssetSources field's value. +func (s *ImportAssetsFromRedshiftDataSharesRequestDetails) SetAssetSources(v []*RedshiftDataShareAssetSourceEntry) *ImportAssetsFromRedshiftDataSharesRequestDetails { + s.AssetSources = v + return s +} + +// SetDataSetId sets the DataSetId field's value. +func (s *ImportAssetsFromRedshiftDataSharesRequestDetails) SetDataSetId(v string) *ImportAssetsFromRedshiftDataSharesRequestDetails { + s.DataSetId = &v + return s +} + +// SetRevisionId sets the RevisionId field's value. +func (s *ImportAssetsFromRedshiftDataSharesRequestDetails) SetRevisionId(v string) *ImportAssetsFromRedshiftDataSharesRequestDetails { + s.RevisionId = &v + return s +} + +// Details from an import from Amazon Redshift datashare response. +type ImportAssetsFromRedshiftDataSharesResponseDetails struct { + _ struct{} `type:"structure"` + + // A list of Amazon Redshift datashare asset sources. + // + // AssetSources is a required field + AssetSources []*RedshiftDataShareAssetSourceEntry `type:"list" required:"true"` + + // The unique identifier for the data set associated with this import job. + // + // DataSetId is a required field + DataSetId *string `type:"string" required:"true"` + + // The unique identifier for the revision associated with this import job. + // + // RevisionId is a required field + RevisionId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportAssetsFromRedshiftDataSharesResponseDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportAssetsFromRedshiftDataSharesResponseDetails) GoString() string { + return s.String() +} + +// SetAssetSources sets the AssetSources field's value. +func (s *ImportAssetsFromRedshiftDataSharesResponseDetails) SetAssetSources(v []*RedshiftDataShareAssetSourceEntry) *ImportAssetsFromRedshiftDataSharesResponseDetails { + s.AssetSources = v + return s +} + +// SetDataSetId sets the DataSetId field's value. +func (s *ImportAssetsFromRedshiftDataSharesResponseDetails) SetDataSetId(v string) *ImportAssetsFromRedshiftDataSharesResponseDetails { + s.DataSetId = &v + return s +} + +// SetRevisionId sets the RevisionId field's value. +func (s *ImportAssetsFromRedshiftDataSharesResponseDetails) SetRevisionId(v string) *ImportAssetsFromRedshiftDataSharesResponseDetails { + s.RevisionId = &v + return s +} + // Details of the operation to be performed by the job. type ImportAssetsFromS3RequestDetails struct { _ struct{} `type:"structure"` @@ -6561,6 +6716,7 @@ type JobError struct { // Code is a required field Code *string `type:"string" required:"true" enum:"Code"` + // The details about the job error. Details *Details `type:"structure"` // The name of the limit that was reached. @@ -7250,9 +7406,12 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } +// Information about the origin of the data set. type OriginDetails struct { _ struct{} `type:"structure"` + // The product ID of the origin of the data set. + // // ProductId is a required field ProductId *string `type:"string" required:"true"` } @@ -7281,6 +7440,87 @@ func (s *OriginDetails) SetProductId(v string) *OriginDetails { return s } +// The Amazon Redshift datashare asset. +type RedshiftDataShareAsset struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the datashare asset. + // + // Arn is a required field + Arn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftDataShareAsset) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftDataShareAsset) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *RedshiftDataShareAsset) SetArn(v string) *RedshiftDataShareAsset { + s.Arn = &v + return s +} + +// The source of the Amazon Redshift datashare asset. +type RedshiftDataShareAssetSourceEntry struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the datashare asset. + // + // DataShareArn is a required field + DataShareArn *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftDataShareAssetSourceEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RedshiftDataShareAssetSourceEntry) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RedshiftDataShareAssetSourceEntry) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RedshiftDataShareAssetSourceEntry"} + if s.DataShareArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataShareArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataShareArn sets the DataShareArn field's value. +func (s *RedshiftDataShareAssetSourceEntry) SetDataShareArn(v string) *RedshiftDataShareAssetSourceEntry { + s.DataShareArn = &v + return s +} + // The details for the request. type RequestDetails struct { _ struct{} `type:"structure"` @@ -7297,6 +7537,9 @@ type RequestDetails struct { // Details about the import from signed URL request. ImportAssetFromSignedUrl *ImportAssetFromSignedUrlRequestDetails `type:"structure"` + // Details from an import from Amazon Redshift datashare request. + ImportAssetsFromRedshiftDataShares *ImportAssetsFromRedshiftDataSharesRequestDetails `type:"structure"` + // Details about the import from Amazon S3 request. ImportAssetsFromS3 *ImportAssetsFromS3RequestDetails `type:"structure"` } @@ -7342,6 +7585,11 @@ func (s *RequestDetails) Validate() error { invalidParams.AddNested("ImportAssetFromSignedUrl", err.(request.ErrInvalidParams)) } } + if s.ImportAssetsFromRedshiftDataShares != nil { + if err := s.ImportAssetsFromRedshiftDataShares.Validate(); err != nil { + invalidParams.AddNested("ImportAssetsFromRedshiftDataShares", err.(request.ErrInvalidParams)) + } + } if s.ImportAssetsFromS3 != nil { if err := s.ImportAssetsFromS3.Validate(); err != nil { invalidParams.AddNested("ImportAssetsFromS3", err.(request.ErrInvalidParams)) @@ -7378,6 +7626,12 @@ func (s *RequestDetails) SetImportAssetFromSignedUrl(v *ImportAssetFromSignedUrl return s } +// SetImportAssetsFromRedshiftDataShares sets the ImportAssetsFromRedshiftDataShares field's value. +func (s *RequestDetails) SetImportAssetsFromRedshiftDataShares(v *ImportAssetsFromRedshiftDataSharesRequestDetails) *RequestDetails { + s.ImportAssetsFromRedshiftDataShares = v + return s +} + // SetImportAssetsFromS3 sets the ImportAssetsFromS3 field's value. func (s *RequestDetails) SetImportAssetsFromS3(v *ImportAssetsFromS3RequestDetails) *RequestDetails { s.ImportAssetsFromS3 = v @@ -7471,6 +7725,9 @@ type ResponseDetails struct { // Details for the import from signed URL response. ImportAssetFromSignedUrl *ImportAssetFromSignedUrlResponseDetails `type:"structure"` + // Details from an import from Amazon Redshift datashare response. + ImportAssetsFromRedshiftDataShares *ImportAssetsFromRedshiftDataSharesResponseDetails `type:"structure"` + // Details for the import from Amazon S3 response. ImportAssetsFromS3 *ImportAssetsFromS3ResponseDetails `type:"structure"` } @@ -7517,6 +7774,12 @@ func (s *ResponseDetails) SetImportAssetFromSignedUrl(v *ImportAssetFromSignedUr return s } +// SetImportAssetsFromRedshiftDataShares sets the ImportAssetsFromRedshiftDataShares field's value. +func (s *ResponseDetails) SetImportAssetsFromRedshiftDataShares(v *ImportAssetsFromRedshiftDataSharesResponseDetails) *ResponseDetails { + s.ImportAssetsFromRedshiftDataShares = v + return s +} + // SetImportAssetsFromS3 sets the ImportAssetsFromS3 field's value. func (s *ResponseDetails) SetImportAssetsFromS3(v *ImportAssetsFromS3ResponseDetails) *ResponseDetails { s.ImportAssetsFromS3 = v @@ -7710,10 +7973,11 @@ func (s *RevisionEntry) SetUpdatedAt(v time.Time) *RevisionEntry { return s } +// Information about the published revision. type RevisionPublished struct { _ struct{} `type:"structure"` - // A unique identifier. + // The data set ID of the published revision. // // DataSetId is a required field DataSetId *string `type:"string" required:"true"` @@ -8254,10 +8518,10 @@ type UpdateAssetOutput struct { // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. Arn *string `type:"string"` + // Information about the asset. AssetDetails *AssetDetails `type:"structure"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. AssetType *string `type:"string" enum:"AssetType"` // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. @@ -8434,8 +8698,7 @@ type UpdateDataSetOutput struct { // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. Arn *string `type:"string"` - // The type of file your data is stored in. Currently, the supported asset type - // is S3_SNAPSHOT. + // The type of asset that is added to a data set. AssetType *string `type:"string" enum:"AssetType"` // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. @@ -8456,6 +8719,7 @@ type UpdateDataSetOutput struct { // can access that copy of the data set as an entitled data set. Origin *string `type:"string" enum:"Origin"` + // Information about the origin of the data set. OriginDetails *OriginDetails `type:"structure"` // A unique identifier. @@ -8608,6 +8872,7 @@ func (s *UpdateEventActionInput) SetEventActionId(v string) *UpdateEventActionIn type UpdateEventActionOutput struct { _ struct{} `type:"structure"` + // What occurs after a certain event. Action *Action `type:"structure"` // An Amazon Resource Name (ARN) that uniquely identifies an AWS resource. @@ -8616,6 +8881,7 @@ type UpdateEventActionOutput struct { // Dates and times in AWS Data Exchange are recorded in ISO 8601 format. CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + // What occurs to start an action. Event *Event `type:"structure"` // A unique identifier. @@ -8922,17 +9188,20 @@ func (s *ValidationException) RequestID() string { return s.RespMetadata.RequestID } -// The type of file your data is stored in. Currently, the supported asset type -// is S3_SNAPSHOT. +// The type of asset that is added to a data set. const ( // AssetTypeS3Snapshot is a AssetType enum value AssetTypeS3Snapshot = "S3_SNAPSHOT" + + // AssetTypeRedshiftDataShare is a AssetType enum value + AssetTypeRedshiftDataShare = "REDSHIFT_DATA_SHARE" ) // AssetType_Values returns all elements of the AssetType enum func AssetType_Values() []string { return []string{ AssetTypeS3Snapshot, + AssetTypeRedshiftDataShare, } } @@ -8995,6 +9264,9 @@ const ( // JobErrorLimitNameAssetsizeinGb is a JobErrorLimitName enum value JobErrorLimitNameAssetsizeinGb = "Asset size in GB" + + // JobErrorLimitNameAmazonRedshiftdatashareassetsperrevision is a JobErrorLimitName enum value + JobErrorLimitNameAmazonRedshiftdatashareassetsperrevision = "Amazon Redshift datashare assets per revision" ) // JobErrorLimitName_Values returns all elements of the JobErrorLimitName enum @@ -9002,6 +9274,7 @@ func JobErrorLimitName_Values() []string { return []string{ JobErrorLimitNameAssetsperrevision, JobErrorLimitNameAssetsizeinGb, + JobErrorLimitNameAmazonRedshiftdatashareassetsperrevision, } } @@ -9051,18 +9324,18 @@ const ( // LimitNameAssetsizeinGb is a LimitName enum value LimitNameAssetsizeinGb = "Asset size in GB" - // LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3 is a LimitName enum value - LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3 = "Concurrent in progress jobs to import assets from Amazon S3" - - // LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl is a LimitName enum value - LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl = "Concurrent in progress jobs to import assets from a signed URL" - // LimitNameConcurrentinprogressjobstoexportassetstoAmazonS3 is a LimitName enum value LimitNameConcurrentinprogressjobstoexportassetstoAmazonS3 = "Concurrent in progress jobs to export assets to Amazon S3" // LimitNameConcurrentinprogressjobstoexportassetstoasignedUrl is a LimitName enum value LimitNameConcurrentinprogressjobstoexportassetstoasignedUrl = "Concurrent in progress jobs to export assets to a signed URL" + // LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3 is a LimitName enum value + LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3 = "Concurrent in progress jobs to import assets from Amazon S3" + + // LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl is a LimitName enum value + LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl = "Concurrent in progress jobs to import assets from a signed URL" + // LimitNameConcurrentinprogressjobstoexportrevisionstoAmazonS3 is a LimitName enum value LimitNameConcurrentinprogressjobstoexportrevisionstoAmazonS3 = "Concurrent in progress jobs to export revisions to Amazon S3" @@ -9071,6 +9344,18 @@ const ( // LimitNameAutoexporteventactionsperdataset is a LimitName enum value LimitNameAutoexporteventactionsperdataset = "Auto export event actions per data set" + + // LimitNameAmazonRedshiftdatashareassetsperimportjobfromRedshift is a LimitName enum value + LimitNameAmazonRedshiftdatashareassetsperimportjobfromRedshift = "Amazon Redshift datashare assets per import job from Redshift" + + // LimitNameConcurrentinprogressjobstoimportassetsfromAmazonRedshiftdatashares is a LimitName enum value + LimitNameConcurrentinprogressjobstoimportassetsfromAmazonRedshiftdatashares = "Concurrent in progress jobs to import assets from Amazon Redshift datashares" + + // LimitNameRevisionsperAmazonRedshiftdatasharedataset is a LimitName enum value + LimitNameRevisionsperAmazonRedshiftdatasharedataset = "Revisions per Amazon Redshift datashare data set" + + // LimitNameAmazonRedshiftdatashareassetsperrevision is a LimitName enum value + LimitNameAmazonRedshiftdatashareassetsperrevision = "Amazon Redshift datashare assets per revision" ) // LimitName_Values returns all elements of the LimitName enum @@ -9084,13 +9369,17 @@ func LimitName_Values() []string { LimitNameAssetsperimportjobfromAmazonS3, LimitNameAssetperexportjobfromAmazonS3, LimitNameAssetsizeinGb, - LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3, - LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl, LimitNameConcurrentinprogressjobstoexportassetstoAmazonS3, LimitNameConcurrentinprogressjobstoexportassetstoasignedUrl, + LimitNameConcurrentinprogressjobstoimportassetsfromAmazonS3, + LimitNameConcurrentinprogressjobstoimportassetsfromasignedUrl, LimitNameConcurrentinprogressjobstoexportrevisionstoAmazonS3, LimitNameEventactionsperaccount, LimitNameAutoexporteventactionsperdataset, + LimitNameAmazonRedshiftdatashareassetsperimportjobfromRedshift, + LimitNameConcurrentinprogressjobstoimportassetsfromAmazonRedshiftdatashares, + LimitNameRevisionsperAmazonRedshiftdatasharedataset, + LimitNameAmazonRedshiftdatashareassetsperrevision, } } @@ -9206,6 +9495,9 @@ const ( // TypeExportRevisionsToS3 is a Type enum value TypeExportRevisionsToS3 = "EXPORT_REVISIONS_TO_S3" + + // TypeImportAssetsFromRedshiftDataShares is a Type enum value + TypeImportAssetsFromRedshiftDataShares = "IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES" ) // Type_Values returns all elements of the Type enum @@ -9216,5 +9508,6 @@ func Type_Values() []string { TypeExportAssetsToS3, TypeExportAssetToSignedUrl, TypeExportRevisionsToS3, + TypeImportAssetsFromRedshiftDataShares, } }