diff --git a/CHANGELOG.md b/CHANGELOG.md index d88e9958f9..b77faec5dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +Release v1.41.11 (2021-10-26) +=== + +### Service Client Updates +* `service/chime-sdk-identity`: Updates service API, documentation, and paginators +* `service/chime-sdk-messaging`: Updates service API and documentation +* `service/emr-containers`: Updates service API and documentation + Release v1.41.10 (2021-10-25) === diff --git a/aws/version.go b/aws/version.go index 1c5367fc30..0db35844f5 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.10" +const SDKVersion = "1.41.11" diff --git a/models/apis/chime-sdk-identity/2021-04-20/api-2.json b/models/apis/chime-sdk-identity/2021-04-20/api-2.json index d998cf804e..7961d1e5f8 100644 --- a/models/apis/chime-sdk-identity/2021-04-20/api-2.json +++ b/models/apis/chime-sdk-identity/2021-04-20/api-2.json @@ -127,6 +127,23 @@ {"shape":"ServiceFailureException"} ] }, + "DeregisterAppInstanceUserEndpoint":{ + "name":"DeregisterAppInstanceUserEndpoint", + "http":{ + "method":"DELETE", + "requestUri":"/app-instance-users/{appInstanceUserArn}/endpoints/{endpointId}", + "responseCode":204 + }, + "input":{"shape":"DeregisterAppInstanceUserEndpointRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "DescribeAppInstance":{ "name":"DescribeAppInstance", "http":{ @@ -179,6 +196,24 @@ {"shape":"ServiceFailureException"} ] }, + "DescribeAppInstanceUserEndpoint":{ + "name":"DescribeAppInstanceUserEndpoint", + "http":{ + "method":"GET", + "requestUri":"/app-instance-users/{appInstanceUserArn}/endpoints/{endpointId}", + "responseCode":200 + }, + "input":{"shape":"DescribeAppInstanceUserEndpointRequest"}, + "output":{"shape":"DescribeAppInstanceUserEndpointResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetAppInstanceRetentionSettings":{ "name":"GetAppInstanceRetentionSettings", "http":{ @@ -216,6 +251,24 @@ {"shape":"ServiceFailureException"} ] }, + "ListAppInstanceUserEndpoints":{ + "name":"ListAppInstanceUserEndpoints", + "http":{ + "method":"GET", + "requestUri":"/app-instance-users/{appInstanceUserArn}/endpoints", + "responseCode":200 + }, + "input":{"shape":"ListAppInstanceUserEndpointsRequest"}, + "output":{"shape":"ListAppInstanceUserEndpointsResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "ListAppInstanceUsers":{ "name":"ListAppInstanceUsers", "http":{ @@ -250,6 +303,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"} + ] + }, "PutAppInstanceRetentionSettings":{ "name":"PutAppInstanceRetentionSettings", "http":{ @@ -268,6 +339,61 @@ {"shape":"ServiceFailureException"} ] }, + "RegisterAppInstanceUserEndpoint":{ + "name":"RegisterAppInstanceUserEndpoint", + "http":{ + "method":"POST", + "requestUri":"/app-instance-users/{appInstanceUserArn}/endpoints", + "responseCode":201 + }, + "input":{"shape":"RegisterAppInstanceUserEndpointRequest"}, + "output":{"shape":"RegisterAppInstanceUserEndpointResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ConflictException"}, + {"shape":"ForbiddenException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ThrottledClientException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ServiceUnavailableException"}, + {"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"} + ] + }, "UpdateAppInstance":{ "name":"UpdateAppInstance", "http":{ @@ -306,9 +432,35 @@ {"shape":"ServiceUnavailableException"}, {"shape":"ServiceFailureException"} ] + }, + "UpdateAppInstanceUserEndpoint":{ + "name":"UpdateAppInstanceUserEndpoint", + "http":{ + "method":"PUT", + "requestUri":"/app-instance-users/{appInstanceUserArn}/endpoints/{endpointId}", + "responseCode":200 + }, + "input":{"shape":"UpdateAppInstanceUserEndpointRequest"}, + "output":{"shape":"UpdateAppInstanceUserEndpointResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ConflictException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] } }, "shapes":{ + "AllowMessages":{ + "type":"string", + "enum":[ + "ALL", + "NONE" + ] + }, "AppInstance":{ "type":"structure", "members":{ @@ -365,6 +517,44 @@ "LastUpdatedTimestamp":{"shape":"Timestamp"} } }, + "AppInstanceUserEndpoint":{ + "type":"structure", + "members":{ + "AppInstanceUserArn":{"shape":"SensitiveChimeArn"}, + "EndpointId":{"shape":"SensitiveString64"}, + "Name":{"shape":"SensitiveString1600"}, + "Type":{"shape":"AppInstanceUserEndpointType"}, + "ResourceArn":{"shape":"SensitiveChimeArn"}, + "EndpointAttributes":{"shape":"EndpointAttributes"}, + "CreatedTimestamp":{"shape":"Timestamp"}, + "LastUpdatedTimestamp":{"shape":"Timestamp"}, + "AllowMessages":{"shape":"AllowMessages"}, + "EndpointState":{"shape":"EndpointState"} + } + }, + "AppInstanceUserEndpointSummary":{ + "type":"structure", + "members":{ + "AppInstanceUserArn":{"shape":"SensitiveChimeArn"}, + "EndpointId":{"shape":"SensitiveString64"}, + "Name":{"shape":"SensitiveString1600"}, + "Type":{"shape":"AppInstanceUserEndpointType"}, + "AllowMessages":{"shape":"AllowMessages"}, + "EndpointState":{"shape":"EndpointState"} + } + }, + "AppInstanceUserEndpointSummaryList":{ + "type":"list", + "member":{"shape":"AppInstanceUserEndpointSummary"} + }, + "AppInstanceUserEndpointType":{ + "type":"string", + "enum":[ + "APNS", + "APNS_SANDBOX", + "GCM" + ] + }, "AppInstanceUserList":{ "type":"list", "member":{"shape":"AppInstanceUserSummary"} @@ -525,6 +715,25 @@ } } }, + "DeregisterAppInstanceUserEndpointRequest":{ + "type":"structure", + "required":[ + "AppInstanceUserArn", + "EndpointId" + ], + "members":{ + "AppInstanceUserArn":{ + "shape":"SensitiveChimeArn", + "location":"uri", + "locationName":"appInstanceUserArn" + }, + "EndpointId":{ + "shape":"SensitiveString64", + "location":"uri", + "locationName":"endpointId" + } + } + }, "DescribeAppInstanceAdminRequest":{ "type":"structure", "required":[ @@ -567,6 +776,31 @@ "AppInstance":{"shape":"AppInstance"} } }, + "DescribeAppInstanceUserEndpointRequest":{ + "type":"structure", + "required":[ + "AppInstanceUserArn", + "EndpointId" + ], + "members":{ + "AppInstanceUserArn":{ + "shape":"SensitiveString1600", + "location":"uri", + "locationName":"appInstanceUserArn" + }, + "EndpointId":{ + "shape":"SensitiveString64", + "location":"uri", + "locationName":"endpointId" + } + } + }, + "DescribeAppInstanceUserEndpointResponse":{ + "type":"structure", + "members":{ + "AppInstanceUserEndpoint":{"shape":"AppInstanceUserEndpoint"} + } + }, "DescribeAppInstanceUserRequest":{ "type":"structure", "required":["AppInstanceUserArn"], @@ -584,6 +818,36 @@ "AppInstanceUser":{"shape":"AppInstanceUser"} } }, + "EndpointAttributes":{ + "type":"structure", + "required":["DeviceToken"], + "members":{ + "DeviceToken":{"shape":"NonEmptySensitiveString1600"}, + "VoipDeviceToken":{"shape":"NonEmptySensitiveString1600"} + } + }, + "EndpointState":{ + "type":"structure", + "required":["Status"], + "members":{ + "Status":{"shape":"EndpointStatus"}, + "StatusReason":{"shape":"EndpointStatusReason"} + } + }, + "EndpointStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "INACTIVE" + ] + }, + "EndpointStatusReason":{ + "type":"string", + "enum":[ + "INVALID_DEVICE_TOKEN", + "INVALID_PINPOINT_ARN" + ] + }, "ErrorCode":{ "type":"string", "enum":[ @@ -667,6 +931,34 @@ "NextToken":{"shape":"NextToken"} } }, + "ListAppInstanceUserEndpointsRequest":{ + "type":"structure", + "required":["AppInstanceUserArn"], + "members":{ + "AppInstanceUserArn":{ + "shape":"SensitiveChimeArn", + "location":"uri", + "locationName":"appInstanceUserArn" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"max-results" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"next-token" + } + } + }, + "ListAppInstanceUserEndpointsResponse":{ + "type":"structure", + "members":{ + "AppInstanceUserEndpoints":{"shape":"AppInstanceUserEndpointSummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListAppInstanceUsersRequest":{ "type":"structure", "required":["AppInstanceArn"], @@ -718,6 +1010,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, @@ -744,6 +1053,13 @@ "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*", "sensitive":true }, + "NonEmptySensitiveString1600":{ + "type":"string", + "max":1600, + "min":1, + "pattern":".*", + "sensitive":true + }, "PutAppInstanceRetentionSettingsRequest":{ "type":"structure", "required":[ @@ -766,6 +1082,39 @@ "InitiateDeletionTimestamp":{"shape":"Timestamp"} } }, + "RegisterAppInstanceUserEndpointRequest":{ + "type":"structure", + "required":[ + "AppInstanceUserArn", + "Type", + "ResourceArn", + "EndpointAttributes", + "ClientRequestToken" + ], + "members":{ + "AppInstanceUserArn":{ + "shape":"SensitiveChimeArn", + "location":"uri", + "locationName":"appInstanceUserArn" + }, + "Name":{"shape":"SensitiveString1600"}, + "Type":{"shape":"AppInstanceUserEndpointType"}, + "ResourceArn":{"shape":"SensitiveChimeArn"}, + "EndpointAttributes":{"shape":"EndpointAttributes"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "AllowMessages":{"shape":"AllowMessages"} + } + }, + "RegisterAppInstanceUserEndpointResponse":{ + "type":"structure", + "members":{ + "AppInstanceUserArn":{"shape":"SensitiveChimeArn"}, + "EndpointId":{"shape":"SensitiveString64"} + } + }, "ResourceLimitExceededException":{ "type":"structure", "members":{ @@ -787,6 +1136,27 @@ "max":5475, "min":1 }, + "SensitiveChimeArn":{ + "type":"string", + "max":1600, + "min":5, + "pattern":"arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}", + "sensitive":true + }, + "SensitiveString1600":{ + "type":"string", + "max":1600, + "min":0, + "pattern":".*", + "sensitive":true + }, + "SensitiveString64":{ + "type":"string", + "max":64, + "min":0, + "pattern":".*", + "sensitive":true + }, "ServiceFailureException":{ "type":"structure", "members":{ @@ -825,12 +1195,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, @@ -856,6 +1243,17 @@ "error":{"httpStatusCode":401}, "exception":true }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "TagKeys" + ], + "members":{ + "ResourceARN":{"shape":"ChimeArn"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, "UpdateAppInstanceRequest":{ "type":"structure", "required":[ @@ -879,6 +1277,34 @@ "AppInstanceArn":{"shape":"ChimeArn"} } }, + "UpdateAppInstanceUserEndpointRequest":{ + "type":"structure", + "required":[ + "AppInstanceUserArn", + "EndpointId" + ], + "members":{ + "AppInstanceUserArn":{ + "shape":"SensitiveChimeArn", + "location":"uri", + "locationName":"appInstanceUserArn" + }, + "EndpointId":{ + "shape":"SensitiveString64", + "location":"uri", + "locationName":"endpointId" + }, + "Name":{"shape":"SensitiveString1600"}, + "AllowMessages":{"shape":"AllowMessages"} + } + }, + "UpdateAppInstanceUserEndpointResponse":{ + "type":"structure", + "members":{ + "AppInstanceUserArn":{"shape":"SensitiveChimeArn"}, + "EndpointId":{"shape":"SensitiveString64"} + } + }, "UpdateAppInstanceUserRequest":{ "type":"structure", "required":[ diff --git a/models/apis/chime-sdk-identity/2021-04-20/docs-2.json b/models/apis/chime-sdk-identity/2021-04-20/docs-2.json index 8c00c9f079..848ac1eab7 100644 --- a/models/apis/chime-sdk-identity/2021-04-20/docs-2.json +++ b/models/apis/chime-sdk-identity/2021-04-20/docs-2.json @@ -8,18 +8,35 @@ "DeleteAppInstance": "

Deletes an AppInstance and all associated data asynchronously.

", "DeleteAppInstanceAdmin": "

Demotes an AppInstanceAdmin to an AppInstanceUser. This action does not delete the user.

", "DeleteAppInstanceUser": "

Deletes an AppInstanceUser.

", + "DeregisterAppInstanceUserEndpoint": "

Deregisters an AppInstanceUserEndpoint.

", "DescribeAppInstance": "

Returns the full details of an AppInstance.

", "DescribeAppInstanceAdmin": "

Returns the full details of an AppInstanceAdmin.

", "DescribeAppInstanceUser": "

Returns the full details of an AppInstanceUser.

", + "DescribeAppInstanceUserEndpoint": "

Returns the full details of an AppInstanceUserEndpoint.

", "GetAppInstanceRetentionSettings": "

Gets the retention settings for an AppInstance.

", "ListAppInstanceAdmins": "

Returns a list of the administrators in the AppInstance.

", + "ListAppInstanceUserEndpoints": "

Lists all the AppInstanceUserEndpoints created under a single AppInstanceUser.

", "ListAppInstanceUsers": "

List all AppInstanceUsers created under a single AppInstance.

", "ListAppInstances": "

Lists all Amazon Chime AppInstances created under a single AWS account.

", + "ListTagsForResource": "

Lists the tags applied to an Amazon Chime SDK identity resource.

", "PutAppInstanceRetentionSettings": "

Sets the amount of time in days that a given AppInstance retains data.

", + "RegisterAppInstanceUserEndpoint": "

Registers an endpoint under an Amazon Chime AppInstanceUser. The endpoint receives messages for a user. For push notifications, the endpoint is a mobile device used to receive mobile push notifications for a user.

", + "TagResource": "

Applies the specified tags to the specified Amazon Chime SDK identity resource.

", + "UntagResource": "

Removes the specified tags from the specified Amazon Chime SDK identity resource.

", "UpdateAppInstance": "

Updates AppInstance metadata.

", - "UpdateAppInstanceUser": "

Updates the details of an AppInstanceUser. You can update names and metadata.

" + "UpdateAppInstanceUser": "

Updates the details of an AppInstanceUser. You can update names and metadata.

", + "UpdateAppInstanceUserEndpoint": "

Updates the details of an AppInstanceUserEndpoint. You can update the name and AllowMessage values.

" }, "shapes": { + "AllowMessages": { + "base": null, + "refs": { + "AppInstanceUserEndpoint$AllowMessages": "

Boolean that controls whether the AppInstanceUserEndpoint is opted in to receive messages. ALL indicates the endpoint will receive all messages. NONE indicates the endpoint will receive no messages.

", + "AppInstanceUserEndpointSummary$AllowMessages": "

BBoolean that controls whether the AppInstanceUserEndpoint is opted in to receive messages. ALL indicates the endpoint will receive all messages. NONE indicates the endpoint will receive no messages.

", + "RegisterAppInstanceUserEndpointRequest$AllowMessages": "

Boolean that controls whether the AppInstanceUserEndpoint is opted in to receive messages. ALL indicates the endpoint receives all messages. NONE indicates the endpoint receives no messages.

", + "UpdateAppInstanceUserEndpointRequest$AllowMessages": "

Boolean that controls whether the AppInstanceUserEndpoint is opted in to receive messages. ALL indicates the endpoint will receive all messages. NONE indicates the endpoint will receive no messages.

" + } + }, "AppInstance": { "base": "

The details of an AppInstance, an instance of an Amazon Chime SDK messaging application.

", "refs": { @@ -70,6 +87,32 @@ "DescribeAppInstanceUserResponse$AppInstanceUser": "

The name of the AppInstanceUser.

" } }, + "AppInstanceUserEndpoint": { + "base": "

An endpoint under an Amazon Chime AppInstanceUser that receives messages for a user. For push notifications, the endpoint is a mobile device used to receive mobile push notifications for a user.

", + "refs": { + "DescribeAppInstanceUserEndpointResponse$AppInstanceUserEndpoint": "

The full details of an AppInstanceUserEndpoint: the AppInstanceUserArn, ID, name, type, resource ARN, attributes, allow messages, state, and created and last updated timestamps. All timestamps use epoch milliseconds.

" + } + }, + "AppInstanceUserEndpointSummary": { + "base": "

Summary of the details of an AppInstanceUserEndpoint.

", + "refs": { + "AppInstanceUserEndpointSummaryList$member": null + } + }, + "AppInstanceUserEndpointSummaryList": { + "base": null, + "refs": { + "ListAppInstanceUserEndpointsResponse$AppInstanceUserEndpoints": "

The information for each requested AppInstanceUserEndpoint.

" + } + }, + "AppInstanceUserEndpointType": { + "base": null, + "refs": { + "AppInstanceUserEndpoint$Type": "

The type of the AppInstanceUserEndpoint.

", + "AppInstanceUserEndpointSummary$Type": "

The type of the AppInstanceUserEndpoint.

", + "RegisterAppInstanceUserEndpointRequest$Type": "

The type of the AppInstanceUserEndpoint. Supported types:

Populate the ResourceArn value of each type as PinpointAppArn.

" + } + }, "AppInstanceUserList": { "base": null, "refs": { @@ -121,7 +164,10 @@ "ListAppInstanceAdminsResponse$AppInstanceArn": "

The ARN of the AppInstance.

", "ListAppInstanceUsersRequest$AppInstanceArn": "

The ARN of the AppInstance.

", "ListAppInstanceUsersResponse$AppInstanceArn": "

The ARN of the AppInstance.

", + "ListTagsForResourceRequest$ResourceARN": "

The ARN of the resource.

", "PutAppInstanceRetentionSettingsRequest$AppInstanceArn": "

The ARN of the AppInstance.

", + "TagResourceRequest$ResourceARN": "

The resource ARN.

", + "UntagResourceRequest$ResourceARN": "

The resource ARN.

", "UpdateAppInstanceRequest$AppInstanceArn": "

The ARN of the AppInstance.

", "UpdateAppInstanceResponse$AppInstanceArn": "

The ARN of the AppInstance.

", "UpdateAppInstanceUserRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", @@ -132,7 +178,8 @@ "base": null, "refs": { "CreateAppInstanceRequest$ClientRequestToken": "

The ClientRequestToken of the AppInstance.

", - "CreateAppInstanceUserRequest$ClientRequestToken": "

The token assigned to the user requesting an AppInstance.

" + "CreateAppInstanceUserRequest$ClientRequestToken": "

The token assigned to the user requesting an AppInstance.

", + "RegisterAppInstanceUserEndpointRequest$ClientRequestToken": "

The idempotency token for each client request.

" } }, "ConflictException": { @@ -185,6 +232,11 @@ "refs": { } }, + "DeregisterAppInstanceUserEndpointRequest": { + "base": null, + "refs": { + } + }, "DescribeAppInstanceAdminRequest": { "base": null, "refs": { @@ -205,6 +257,16 @@ "refs": { } }, + "DescribeAppInstanceUserEndpointRequest": { + "base": null, + "refs": { + } + }, + "DescribeAppInstanceUserEndpointResponse": { + "base": null, + "refs": { + } + }, "DescribeAppInstanceUserRequest": { "base": null, "refs": { @@ -215,6 +277,32 @@ "refs": { } }, + "EndpointAttributes": { + "base": "

The attributes of an Endpoint.

", + "refs": { + "AppInstanceUserEndpoint$EndpointAttributes": "

The attributes of an Endpoint.

", + "RegisterAppInstanceUserEndpointRequest$EndpointAttributes": "

The attributes of an Endpoint.

" + } + }, + "EndpointState": { + "base": "

A read-only field that represents the state of an AppInstanceUserEndpoint. Supported values:

", + "refs": { + "AppInstanceUserEndpoint$EndpointState": "

A read-only field that represents the state of an AppInstanceUserEndpoint. Supported values:

", + "AppInstanceUserEndpointSummary$EndpointState": "

A read-only field that represent the state of an AppInstanceUserEndpoint.

" + } + }, + "EndpointStatus": { + "base": null, + "refs": { + "EndpointState$Status": "

Enum that indicates the Status of an AppInstanceUserEndpoint.

" + } + }, + "EndpointStatusReason": { + "base": null, + "refs": { + "EndpointState$StatusReason": "

The reason for the EndpointStatus.

" + } + }, "ErrorCode": { "base": null, "refs": { @@ -261,6 +349,16 @@ "refs": { } }, + "ListAppInstanceUserEndpointsRequest": { + "base": null, + "refs": { + } + }, + "ListAppInstanceUserEndpointsResponse": { + "base": null, + "refs": { + } + }, "ListAppInstanceUsersRequest": { "base": null, "refs": { @@ -281,10 +379,21 @@ "refs": { } }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, "MaxResults": { "base": null, "refs": { "ListAppInstanceAdminsRequest$MaxResults": "

The maximum number of administrators that you want to return.

", + "ListAppInstanceUserEndpointsRequest$MaxResults": "

The maximum number of endpoints that you want to return.

", "ListAppInstanceUsersRequest$MaxResults": "

The maximum number of requests that you want returned.

", "ListAppInstancesRequest$MaxResults": "

The maximum number of AppInstances that you want to return.

" } @@ -307,6 +416,8 @@ "refs": { "ListAppInstanceAdminsRequest$NextToken": "

The token returned from previous API requests until the number of administrators is reached.

", "ListAppInstanceAdminsResponse$NextToken": "

The token returned from previous API requests until the number of administrators is reached.

", + "ListAppInstanceUserEndpointsRequest$NextToken": "

The token passed by previous API calls until all requested endpoints are returned.

", + "ListAppInstanceUserEndpointsResponse$NextToken": "

The token passed by previous API calls until all requested endpoints are returned.

", "ListAppInstanceUsersRequest$NextToken": "

The token passed by previous API calls until all requested users are returned.

", "ListAppInstanceUsersResponse$NextToken": "

The token passed by previous API calls until all requested users are returned.

", "ListAppInstancesRequest$NextToken": "

The token passed by previous API requests until you reach the maximum number of AppInstances.

", @@ -322,6 +433,13 @@ "UpdateAppInstanceRequest$Name": "

The name that you want to change.

" } }, + "NonEmptySensitiveString1600": { + "base": null, + "refs": { + "EndpointAttributes$DeviceToken": "

The device token for the GCM, APNS, and APNS_SANDBOX endpoint types.

", + "EndpointAttributes$VoipDeviceToken": "

The VOIP device token for the APNS and APNS_SANDBOX endpoint types.

" + } + }, "PutAppInstanceRetentionSettingsRequest": { "base": null, "refs": { @@ -332,6 +450,16 @@ "refs": { } }, + "RegisterAppInstanceUserEndpointRequest": { + "base": null, + "refs": { + } + }, + "RegisterAppInstanceUserEndpointResponse": { + "base": null, + "refs": { + } + }, "ResourceLimitExceededException": { "base": "

The request exceeds the resource limit.

", "refs": { @@ -349,6 +477,43 @@ "ChannelRetentionSettings$RetentionDays": "

The time in days to retain the messages in a channel.

" } }, + "SensitiveChimeArn": { + "base": null, + "refs": { + "AppInstanceUserEndpoint$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "AppInstanceUserEndpoint$ResourceArn": "

The ARN of the resource to which the endpoint belongs.

", + "AppInstanceUserEndpointSummary$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "DeregisterAppInstanceUserEndpointRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "ListAppInstanceUserEndpointsRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "RegisterAppInstanceUserEndpointRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "RegisterAppInstanceUserEndpointRequest$ResourceArn": "

The ARN of the resource to which the endpoint belongs.

", + "RegisterAppInstanceUserEndpointResponse$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "UpdateAppInstanceUserEndpointRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "UpdateAppInstanceUserEndpointResponse$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

" + } + }, + "SensitiveString1600": { + "base": null, + "refs": { + "AppInstanceUserEndpoint$Name": "

The name of the AppInstanceUserEndpoint.

", + "AppInstanceUserEndpointSummary$Name": "

The name of the AppInstanceUserEndpoint.

", + "DescribeAppInstanceUserEndpointRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser.

", + "RegisterAppInstanceUserEndpointRequest$Name": "

The name of the AppInstanceUserEndpoint.

", + "UpdateAppInstanceUserEndpointRequest$Name": "

The name of the AppInstanceUserEndpoint.

" + } + }, + "SensitiveString64": { + "base": null, + "refs": { + "AppInstanceUserEndpoint$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

", + "AppInstanceUserEndpointSummary$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

", + "DeregisterAppInstanceUserEndpointRequest$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

", + "DescribeAppInstanceUserEndpointRequest$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

", + "RegisterAppInstanceUserEndpointResponse$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

", + "UpdateAppInstanceUserEndpointRequest$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

", + "UpdateAppInstanceUserEndpointResponse$EndpointId": "

The unique identifier of the AppInstanceUserEndpoint.

" + } + }, "ServiceFailureException": { "base": "

The service encountered an unexpected error.

", "refs": { @@ -373,7 +538,7 @@ } }, "Tag": { - "base": "

Describes a tag applied to a resource.

", + "base": "

A tag object containing a key-value pair.

", "refs": { "TagList$member": null } @@ -381,20 +546,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": { "CreateAppInstanceRequest$Tags": "

Tags assigned to the AppInstanceUser.

", - "CreateAppInstanceUserRequest$Tags": "

Tags assigned to the AppInstanceUser.

" + "CreateAppInstanceUserRequest$Tags": "

Tags assigned to the AppInstanceUser.

", + "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": { @@ -410,6 +589,8 @@ "AppInstanceAdmin$CreatedTimestamp": "

The time at which an administrator was created.

", "AppInstanceUser$CreatedTimestamp": "

The time at which the AppInstanceUser was created.

", "AppInstanceUser$LastUpdatedTimestamp": "

The time at which the AppInstanceUser was last updated.

", + "AppInstanceUserEndpoint$CreatedTimestamp": "

The time at which an AppInstanceUserEndpoint was created.

", + "AppInstanceUserEndpoint$LastUpdatedTimestamp": "

The time at which an AppInstanceUserEndpoint was last updated.

", "GetAppInstanceRetentionSettingsResponse$InitiateDeletionTimestamp": "

The timestamp representing the time at which the specified items are retained, in Epoch Seconds.

", "PutAppInstanceRetentionSettingsResponse$InitiateDeletionTimestamp": "

The time at which the API deletes data.

" } @@ -419,6 +600,11 @@ "refs": { } }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, "UpdateAppInstanceRequest": { "base": null, "refs": { @@ -429,6 +615,16 @@ "refs": { } }, + "UpdateAppInstanceUserEndpointRequest": { + "base": null, + "refs": { + } + }, + "UpdateAppInstanceUserEndpointResponse": { + "base": null, + "refs": { + } + }, "UpdateAppInstanceUserRequest": { "base": null, "refs": { diff --git a/models/apis/chime-sdk-identity/2021-04-20/paginators-1.json b/models/apis/chime-sdk-identity/2021-04-20/paginators-1.json index 03ee29de6c..b8fa7ee59e 100644 --- a/models/apis/chime-sdk-identity/2021-04-20/paginators-1.json +++ b/models/apis/chime-sdk-identity/2021-04-20/paginators-1.json @@ -5,6 +5,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListAppInstanceUserEndpoints": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListAppInstanceUsers": { "input_token": "NextToken", "output_token": "NextToken", 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 7afee14824..4797857fb8 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 @@ -419,6 +419,24 @@ {"shape":"ServiceFailureException"} ] }, + "GetChannelMembershipPreferences":{ + "name":"GetChannelMembershipPreferences", + "http":{ + "method":"GET", + "requestUri":"/channels/{channelArn}/memberships/{memberArn}/preferences", + "responseCode":200 + }, + "input":{"shape":"GetChannelMembershipPreferencesRequest"}, + "output":{"shape":"GetChannelMembershipPreferencesResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetChannelMessage":{ "name":"GetChannelMessage", "http":{ @@ -653,6 +671,25 @@ {"shape":"ServiceFailureException"} ] }, + "PutChannelMembershipPreferences":{ + "name":"PutChannelMembershipPreferences", + "http":{ + "method":"PUT", + "requestUri":"/channels/{channelArn}/memberships/{memberArn}/preferences", + "responseCode":200 + }, + "input":{"shape":"PutChannelMembershipPreferencesRequest"}, + "output":{"shape":"PutChannelMembershipPreferencesResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ConflictException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "RedactChannelMessage":{ "name":"RedactChannelMessage", "http":{ @@ -803,6 +840,14 @@ } }, "shapes":{ + "AllowNotifications":{ + "type":"string", + "enum":[ + "ALL", + "NONE", + "FILTERED" + ] + }, "AppInstanceUserMembershipSummary":{ "type":"structure", "members":{ @@ -1020,6 +1065,12 @@ "type":"list", "member":{"shape":"ChannelMembershipForAppInstanceUserSummary"} }, + "ChannelMembershipPreferences":{ + "type":"structure", + "members":{ + "PushNotifications":{"shape":"PushNotificationPreferences"} + } + }, "ChannelMembershipSummary":{ "type":"structure", "members":{ @@ -1051,7 +1102,8 @@ "Sender":{"shape":"Identity"}, "Redacted":{"shape":"NonNullableBoolean"}, "Persistence":{"shape":"ChannelMessagePersistenceType"}, - "Status":{"shape":"ChannelMessageStatusStructure"} + "Status":{"shape":"ChannelMessageStatusStructure"}, + "MessageAttributes":{"shape":"MessageAttributeMap"} } }, "ChannelMessageCallback":{ @@ -1098,7 +1150,8 @@ "LastEditedTimestamp":{"shape":"Timestamp"}, "Sender":{"shape":"Identity"}, "Redacted":{"shape":"NonNullableBoolean"}, - "Status":{"shape":"ChannelMessageStatusStructure"} + "Status":{"shape":"ChannelMessageStatusStructure"}, + "MessageAttributes":{"shape":"MessageAttributeMap"} } }, "ChannelMessageSummaryList":{ @@ -1718,6 +1771,12 @@ "ABORT" ] }, + "FilterRule":{ + "type":"string", + "min":1, + "pattern":"[\\s\\S]*", + "sensitive":true + }, "ForbiddenException":{ "type":"structure", "members":{ @@ -1727,6 +1786,39 @@ "error":{"httpStatusCode":403}, "exception":true }, + "GetChannelMembershipPreferencesRequest":{ + "type":"structure", + "required":[ + "ChannelArn", + "MemberArn", + "ChimeBearer" + ], + "members":{ + "ChannelArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelArn" + }, + "MemberArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"memberArn" + }, + "ChimeBearer":{ + "shape":"ChimeArn", + "location":"header", + "locationName":"x-amz-chime-bearer" + } + } + }, + "GetChannelMembershipPreferencesResponse":{ + "type":"structure", + "members":{ + "ChannelArn":{"shape":"ChimeArn"}, + "Member":{"shape":"Identity"}, + "Preferences":{"shape":"ChannelMembershipPreferences"} + } + }, "GetChannelMessageRequest":{ "type":"structure", "required":[ @@ -2191,6 +2283,35 @@ "type":"list", "member":{"shape":"Identity"} }, + "MessageAttributeMap":{ + "type":"map", + "key":{"shape":"MessageAttributeName"}, + "value":{"shape":"MessageAttributeValue"} + }, + "MessageAttributeName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[\\s\\S]*", + "sensitive":true + }, + "MessageAttributeStringValue":{ + "type":"string", + "max":512, + "min":1, + "pattern":"[\\s\\S]*", + "sensitive":true + }, + "MessageAttributeStringValues":{ + "type":"list", + "member":{"shape":"MessageAttributeStringValue"} + }, + "MessageAttributeValue":{ + "type":"structure", + "members":{ + "StringValues":{"shape":"MessageAttributeStringValues"} + } + }, "MessageId":{ "type":"string", "max":128, @@ -2268,6 +2389,83 @@ "max":3, "min":1 }, + "PushNotificationBody":{ + "type":"string", + "max":150, + "min":0, + "pattern":"[\\s\\S]*", + "sensitive":true + }, + "PushNotificationConfiguration":{ + "type":"structure", + "required":[ + "Title", + "Body", + "Type" + ], + "members":{ + "Title":{"shape":"PushNotificationTitle"}, + "Body":{"shape":"PushNotificationBody"}, + "Type":{"shape":"PushNotificationType"} + } + }, + "PushNotificationPreferences":{ + "type":"structure", + "required":["AllowNotifications"], + "members":{ + "AllowNotifications":{"shape":"AllowNotifications"}, + "FilterRule":{"shape":"FilterRule"} + } + }, + "PushNotificationTitle":{ + "type":"string", + "max":50, + "min":0, + "pattern":".*", + "sensitive":true + }, + "PushNotificationType":{ + "type":"string", + "enum":[ + "DEFAULT", + "VOIP" + ] + }, + "PutChannelMembershipPreferencesRequest":{ + "type":"structure", + "required":[ + "ChannelArn", + "MemberArn", + "ChimeBearer", + "Preferences" + ], + "members":{ + "ChannelArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"channelArn" + }, + "MemberArn":{ + "shape":"ChimeArn", + "location":"uri", + "locationName":"memberArn" + }, + "ChimeBearer":{ + "shape":"ChimeArn", + "location":"header", + "locationName":"x-amz-chime-bearer" + }, + "Preferences":{"shape":"ChannelMembershipPreferences"} + } + }, + "PutChannelMembershipPreferencesResponse":{ + "type":"structure", + "members":{ + "ChannelArn":{"shape":"ChimeArn"}, + "Member":{"shape":"Identity"}, + "Preferences":{"shape":"ChannelMembershipPreferences"} + } + }, "RedactChannelMessageRequest":{ "type":"structure", "required":[ @@ -2344,7 +2542,9 @@ "shape":"ChimeArn", "location":"header", "locationName":"x-amz-chime-bearer" - } + }, + "PushNotification":{"shape":"PushNotificationConfiguration"}, + "MessageAttributes":{"shape":"MessageAttributeMap"} } }, "SendChannelMessageResponse":{ 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 1eda69fbf7..c42c81e2ca 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 @@ -8,7 +8,7 @@ "CreateChannel": "

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.

", "CreateChannelBan": "

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.

", "CreateChannelFlow": "

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:

  1. New and updated messages

  2. Persistent and non-persistent messages

  3. 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.

", - "CreateChannelMembership": "

Adds a user to a channel. The InvitedBy response field is derived from the request header. A channel member can:

Privacy settings impact this action as follows:

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.

", + "CreateChannelMembership": "

Adds a user to a channel. The InvitedBy field in ChannelMembership is derived from the request header. A channel member can:

Privacy settings impact this action as follows:

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.

", "CreateChannelModerator": "

Creates a new ChannelModerator. A channel moderator can:

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.

", "DeleteChannel": "

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.

", "DeleteChannelBan": "

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.

", @@ -24,12 +24,13 @@ "DescribeChannelModeratedByAppInstanceUser": "

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.

", "DescribeChannelModerator": "

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.

", "DisassociateChannelFlow": "

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.

", + "GetChannelMembershipPreferences": "

Gets the membership preferences of an AppInstanceUser for the specified channel. The AppInstanceUser must be a member of the channel. Only the AppInstanceUser who owns the membership can retrieve preferences. Users in the AppInstanceAdmin and channel moderator roles can't retrieve preferences for other users. Banned users can't retrieve membership preferences for the channel from which they are banned.

", "GetChannelMessage": "

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.

", "GetChannelMessageStatus": "

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

", "GetMessagingSessionEndpoint": "

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.

", "ListChannelFlows": "

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.

", + "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.

If you want to list the channels to which a specific app instance user belongs, see the ListChannelMembershipsForAppInstanceUser API.

", "ListChannelMembershipsForAppInstanceUser": "

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.

", "ListChannelMessages": "

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.

", "ListChannelModerators": "

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.

", @@ -37,6 +38,7 @@ "ListChannelsAssociatedWithChannelFlow": "

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.

", "ListTagsForResource": "

Lists the tags applied to an Amazon Chime SDK messaging resource.

", + "PutChannelMembershipPreferences": "

Sets the membership preferences of an AppInstanceUser for the specified channel. The AppInstanceUser must be a member of the channel. Only the AppInstanceUser who owns the membership can set preferences. Users in the AppInstanceAdmin and channel moderator roles can't set preferences for other users. Banned users can't set membership preferences for the channel from which they are banned.

", "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.

", "SendChannelMessage": "

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.

", "TagResource": "

Applies the specified tags to the specified Amazon Chime SDK messaging resource.

", @@ -47,6 +49,12 @@ "UpdateChannelReadMarker": "

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.

" }, "shapes": { + "AllowNotifications": { + "base": null, + "refs": { + "PushNotificationPreferences$AllowNotifications": "

Enum value that indicates which push notifications to send to the requested member of a channel. ALL sends all push notifications, NONE sends no push notifications, FILTERED sends only filtered push notifications.

" + } + }, "AppInstanceUserMembershipSummary": { "base": "

Summary of the membership details of an AppInstanceUser.

", "refs": { @@ -187,6 +195,14 @@ "ListChannelMembershipsForAppInstanceUserResponse$ChannelMemberships": "

The token passed by previous API calls until all requested users are returned.

" } }, + "ChannelMembershipPreferences": { + "base": "

The channel membership preferences for an AppInstanceUser.

", + "refs": { + "GetChannelMembershipPreferencesResponse$Preferences": "

The channel membership preferences for an AppInstanceUser .

", + "PutChannelMembershipPreferencesRequest$Preferences": "

The channel membership preferences of an AppInstanceUser .

", + "PutChannelMembershipPreferencesResponse$Preferences": "

The ARN and metadata of the member being added.

" + } + }, "ChannelMembershipSummary": { "base": "

Summary of the details of a ChannelMembership.

", "refs": { @@ -337,7 +353,7 @@ "AssociateChannelFlowRequest$ChannelFlowArn": "

The ARN of the channel flow.

", "AssociateChannelFlowRequest$ChimeBearer": "

The AppInstanceUserArn of the user making the API call.

", "BatchChannelMemberships$ChannelArn": "

The ARN of the channel to which you're adding users.

", - "BatchCreateChannelMembershipError$MemberArn": "

The ARN of the member that the service couldn't add.

", + "BatchCreateChannelMembershipError$MemberArn": "

The AppInstanceUserArn 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.

", "Channel$ChannelArn": "

The ARN of a channel.

", @@ -353,17 +369,17 @@ "ChannelModerator$ChannelArn": "

The ARN of the moderator's channel.

", "ChannelSummary$ChannelArn": "

The ARN of the channel.

", "CreateChannelBanRequest$ChannelArn": "

The ARN of the ban request.

", - "CreateChannelBanRequest$MemberArn": "

The ARN of the member being banned.

", + "CreateChannelBanRequest$MemberArn": "

The AppInstanceUserArn of the member being banned.

", "CreateChannelBanRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "CreateChannelBanResponse$ChannelArn": "

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$MemberArn": "

The AppInstanceUserArn of the member you want to add to the channel.

", "CreateChannelMembershipRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "CreateChannelMembershipResponse$ChannelArn": "

The ARN of the channel.

", "CreateChannelModeratorRequest$ChannelArn": "

The ARN of the channel.

", - "CreateChannelModeratorRequest$ChannelModeratorArn": "

The ARN of the moderator.

", + "CreateChannelModeratorRequest$ChannelModeratorArn": "

The AppInstanceUserArn of the moderator.

", "CreateChannelModeratorRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "CreateChannelModeratorResponse$ChannelArn": "

The ARN of the channel.

", "CreateChannelRequest$AppInstanceArn": "

The ARN of the channel request.

", @@ -374,36 +390,40 @@ "DeleteChannelBanRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DeleteChannelFlowRequest$ChannelFlowArn": "

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$MemberArn": "

The AppInstanceUserArn of the member that you're removing from the channel.

", "DeleteChannelMembershipRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DeleteChannelMessageRequest$ChannelArn": "

The ARN of the channel.

", "DeleteChannelMessageRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DeleteChannelModeratorRequest$ChannelArn": "

The ARN of the channel.

", - "DeleteChannelModeratorRequest$ChannelModeratorArn": "

The ARN of the moderator being deleted.

", + "DeleteChannelModeratorRequest$ChannelModeratorArn": "

The AppInstanceUserArn of the moderator being deleted.

", "DeleteChannelModeratorRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DeleteChannelRequest$ChannelArn": "

The ARN of the channel being deleted.

", "DeleteChannelRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DescribeChannelBanRequest$ChannelArn": "

The ARN of the channel from which the user is banned.

", - "DescribeChannelBanRequest$MemberArn": "

The ARN of the member being banned.

", + "DescribeChannelBanRequest$MemberArn": "

The AppInstanceUserArn of the member being banned.

", "DescribeChannelBanRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DescribeChannelFlowRequest$ChannelFlowArn": "

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.

", "DescribeChannelMembershipRequest$ChannelArn": "

The ARN of the channel.

", - "DescribeChannelMembershipRequest$MemberArn": "

The ARN of the member.

", + "DescribeChannelMembershipRequest$MemberArn": "

The AppInstanceUserArn of the member.

", "DescribeChannelMembershipRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DescribeChannelModeratedByAppInstanceUserRequest$ChannelArn": "

The ARN of the moderated channel.

", "DescribeChannelModeratedByAppInstanceUserRequest$AppInstanceUserArn": "

The ARN of the AppInstanceUser in the moderated channel.

", "DescribeChannelModeratedByAppInstanceUserRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DescribeChannelModeratorRequest$ChannelArn": "

The ARN of the channel.

", - "DescribeChannelModeratorRequest$ChannelModeratorArn": "

The ARN of the channel moderator.

", + "DescribeChannelModeratorRequest$ChannelModeratorArn": "

The AppInstanceUserArn of the channel moderator.

", "DescribeChannelModeratorRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DescribeChannelRequest$ChannelArn": "

The ARN of the channel.

", "DescribeChannelRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "DisassociateChannelFlowRequest$ChannelArn": "

The ARN of the channel.

", "DisassociateChannelFlowRequest$ChannelFlowArn": "

The ARN of the channel flow.

", "DisassociateChannelFlowRequest$ChimeBearer": "

The AppInstanceUserArn of the user making the API call.

", + "GetChannelMembershipPreferencesRequest$ChannelArn": "

The ARN of the channel.

", + "GetChannelMembershipPreferencesRequest$MemberArn": "

The AppInstanceUserArn of the member retrieving the preferences.

", + "GetChannelMembershipPreferencesRequest$ChimeBearer": "

The AppInstanceUserARN of the user making the API call.

", + "GetChannelMembershipPreferencesResponse$ChannelArn": "

The ARN of the channel.

", "GetChannelMessageRequest$ChannelArn": "

The ARN of the channel.

", "GetChannelMessageRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "GetChannelMessageStatusRequest$ChannelArn": "

The ARN of the channel

", @@ -431,6 +451,10 @@ "ListChannelsRequest$ChimeBearer": "

The AppInstanceUserArn of the user that makes the API call.

", "ListTagsForResourceRequest$ResourceARN": "

The ARN of the resource.

", "MemberArns$member": null, + "PutChannelMembershipPreferencesRequest$ChannelArn": "

The ARN of the channel.

", + "PutChannelMembershipPreferencesRequest$MemberArn": "

The AppInstanceUserArn of the member setting the preferences.

", + "PutChannelMembershipPreferencesRequest$ChimeBearer": "

The AppInstanceUserARN of the user making the API call.

", + "PutChannelMembershipPreferencesResponse$ChannelArn": "

The ARN of the channel.

", "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.

", "RedactChannelMessageResponse$ChannelArn": "

The ARN of the channel containing the messages that you want to redact.

", @@ -646,7 +670,13 @@ "FallbackAction": { "base": null, "refs": { - "Processor$FallbackAction": "

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.

" + "Processor$FallbackAction": "

Determines whether to continue with message processing or stop it in cases where communication with a processor fails. If a processor has a fallback action of ABORT and communication with it fails, the processor sets the message status to FAILED and does not send the message to any recipients. Note that if the last processor in the channel flow sequence has a fallback action of CONTINUE and communication with the processor fails, then the message is considered processed and sent to recipients of the channel.

" + } + }, + "FilterRule": { + "base": null, + "refs": { + "PushNotificationPreferences$FilterRule": "

The simple JSON object used to send a subset of a push notification to the requsted member.

" } }, "ForbiddenException": { @@ -654,6 +684,16 @@ "refs": { } }, + "GetChannelMembershipPreferencesRequest": { + "base": null, + "refs": { + } + }, + "GetChannelMembershipPreferencesResponse": { + "base": null, + "refs": { + } + }, "GetChannelMessageRequest": { "base": null, "refs": { @@ -703,7 +743,9 @@ "CreateChannelBanResponse$Member": "

The ChannelArn and BannedIdentity of the member in the ban response.

", "CreateChannelMembershipResponse$Member": "

The ARN and metadata of the member being added.

", "CreateChannelModeratorResponse$ChannelModerator": "

The ARNs of the channel and the moderator.

", - "Members$member": null + "GetChannelMembershipPreferencesResponse$Member": null, + "Members$member": null, + "PutChannelMembershipPreferencesResponse$Member": null } }, "InvocationType": { @@ -841,7 +883,7 @@ "MemberArns": { "base": null, "refs": { - "BatchCreateChannelMembershipRequest$MemberArns": "

The ARNs of the members you want to add to the channel.

" + "BatchCreateChannelMembershipRequest$MemberArns": "

The AppInstanceUserArns of the members you want to add to the channel.

" } }, "Members": { @@ -850,6 +892,38 @@ "BatchChannelMemberships$Members": "

The users successfully added to the request.

" } }, + "MessageAttributeMap": { + "base": null, + "refs": { + "ChannelMessage$MessageAttributes": "

The attributes for the message, used for message filtering along with a FilterRule defined in the PushNotificationPreferences.

", + "ChannelMessageSummary$MessageAttributes": "

The message attribues listed in a the summary of a channel message.

", + "SendChannelMessageRequest$MessageAttributes": "

The attributes for the message, used for message filtering along with a FilterRule defined in the PushNotificationPreferences.

" + } + }, + "MessageAttributeName": { + "base": null, + "refs": { + "MessageAttributeMap$key": null + } + }, + "MessageAttributeStringValue": { + "base": null, + "refs": { + "MessageAttributeStringValues$member": null + } + }, + "MessageAttributeStringValues": { + "base": null, + "refs": { + "MessageAttributeValue$StringValues": "

The strings in a message attribute value.

" + } + }, + "MessageAttributeValue": { + "base": "

A list of message attribute values.

", + "refs": { + "MessageAttributeMap$value": null + } + }, "MessageId": { "base": null, "refs": { @@ -966,6 +1040,46 @@ "UpdateChannelFlowRequest$Processors": "

Information about the processor Lambda functions

" } }, + "PushNotificationBody": { + "base": null, + "refs": { + "PushNotificationConfiguration$Body": "

The body of the push notification.

" + } + }, + "PushNotificationConfiguration": { + "base": "

The push notification configuration of the message.

", + "refs": { + "SendChannelMessageRequest$PushNotification": "

The push notification configuration of the message.

" + } + }, + "PushNotificationPreferences": { + "base": "

The channel membership preferences for push notification.

", + "refs": { + "ChannelMembershipPreferences$PushNotifications": "

The push notification configuration of a message.

" + } + }, + "PushNotificationTitle": { + "base": null, + "refs": { + "PushNotificationConfiguration$Title": "

The title of the push notification.

" + } + }, + "PushNotificationType": { + "base": null, + "refs": { + "PushNotificationConfiguration$Type": "

Enum value that indicates the type of the push notification for a message. DEFAULT: Normal mobile push notification. VOIP: VOIP mobile push notification.

" + } + }, + "PutChannelMembershipPreferencesRequest": { + "base": null, + "refs": { + } + }, + "PutChannelMembershipPreferencesResponse": { + "base": null, + "refs": { + } + }, "RedactChannelMessageRequest": { "base": null, "refs": { diff --git a/models/apis/emr-containers/2020-10-01/api-2.json b/models/apis/emr-containers/2020-10-01/api-2.json index bbeff496a8..e583c17f75 100644 --- a/models/apis/emr-containers/2020-10-01/api-2.json +++ b/models/apis/emr-containers/2020-10-01/api-2.json @@ -224,6 +224,11 @@ "min":44, "pattern":"^arn:(aws[a-zA-Z0-9-]*):acm:.+:(\\d{12}):certificate/.+$" }, + "Base64Encoded":{ + "type":"string", + "max":5000, + "pattern":"^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$" + }, "CancelJobRunRequest":{ "type":"structure", "required":[ @@ -250,6 +255,13 @@ "virtualClusterId":{"shape":"ResourceIdString"} } }, + "Certificate":{ + "type":"structure", + "members":{ + "certificateArn":{"shape":"ACMCertArn"}, + "certificateData":{"shape":"Base64Encoded"} + } + }, "ClientToken":{ "type":"string", "max":64, @@ -322,7 +334,6 @@ "type", "releaseLabel", "executionRoleArn", - "certificateArn", "clientToken" ], "members":{ @@ -335,7 +346,11 @@ "type":{"shape":"EndpointType"}, "releaseLabel":{"shape":"ReleaseLabel"}, "executionRoleArn":{"shape":"IAMRoleArn"}, - "certificateArn":{"shape":"ACMCertArn"}, + "certificateArn":{ + "shape":"ACMCertArn", + "deprecated":true, + "deprecatedMessage":"Customer provided certificate-arn is deprecated and would be removed in future." + }, "configurationOverrides":{"shape":"ConfigurationOverrides"}, "clientToken":{ "shape":"ClientToken", @@ -509,7 +524,12 @@ "state":{"shape":"EndpointState"}, "releaseLabel":{"shape":"ReleaseLabel"}, "executionRoleArn":{"shape":"IAMRoleArn"}, - "certificateArn":{"shape":"ACMCertArn"}, + "certificateArn":{ + "shape":"ACMCertArn", + "deprecated":true, + "deprecatedMessage":"Customer provided certificate-arn is deprecated and would be removed in future." + }, + "certificateAuthority":{"shape":"Certificate"}, "configurationOverrides":{"shape":"ConfigurationOverrides"}, "serverUrl":{"shape":"UriString"}, "createdAt":{"shape":"Date"}, diff --git a/models/apis/emr-containers/2020-10-01/docs-2.json b/models/apis/emr-containers/2020-10-01/docs-2.json index 53acb86f28..47ead1d6ee 100644 --- a/models/apis/emr-containers/2020-10-01/docs-2.json +++ b/models/apis/emr-containers/2020-10-01/docs-2.json @@ -22,8 +22,15 @@ "ACMCertArn": { "base": null, "refs": { - "CreateManagedEndpointRequest$certificateArn": "

The certificate ARN of the managed endpoint.

", - "Endpoint$certificateArn": "

The certificate ARN of the endpoint.

" + "Certificate$certificateArn": "

The ARN of the certificate generated for managed endpoint.

", + "CreateManagedEndpointRequest$certificateArn": "

The certificate ARN provided by users for the managed endpoint. This fiedd is under deprecation and will be removed in future releases.

", + "Endpoint$certificateArn": "

The certificate ARN of the endpoint. This field is under deprecation and will be removed in future.

" + } + }, + "Base64Encoded": { + "base": null, + "refs": { + "Certificate$certificateData": "

The base64 encoded PEM certificate data generated for managed endpoint.

" } }, "CancelJobRunRequest": { @@ -36,6 +43,12 @@ "refs": { } }, + "Certificate": { + "base": "

The entity representing certificate data generated for managed endpoint.

", + "refs": { + "Endpoint$certificateAuthority": "

The certificate generated by emr control plane on customer behalf to secure the managed endpoint.

" + } + }, "ClientToken": { "base": null, "refs": { diff --git a/service/chimesdkidentity/api.go b/service/chimesdkidentity/api.go index f7a5354942..96f983bd52 100644 --- a/service/chimesdkidentity/api.go +++ b/service/chimesdkidentity/api.go @@ -631,6 +631,101 @@ func (c *ChimeSDKIdentity) DeleteAppInstanceUserWithContext(ctx aws.Context, inp return out, req.Send() } +const opDeregisterAppInstanceUserEndpoint = "DeregisterAppInstanceUserEndpoint" + +// DeregisterAppInstanceUserEndpointRequest generates a "aws/request.Request" representing the +// client's request for the DeregisterAppInstanceUserEndpoint 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 DeregisterAppInstanceUserEndpoint for more information on using the DeregisterAppInstanceUserEndpoint +// 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 DeregisterAppInstanceUserEndpointRequest method. +// req, resp := client.DeregisterAppInstanceUserEndpointRequest(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-identity-2021-04-20/DeregisterAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) DeregisterAppInstanceUserEndpointRequest(input *DeregisterAppInstanceUserEndpointInput) (req *request.Request, output *DeregisterAppInstanceUserEndpointOutput) { + op := &request.Operation{ + Name: opDeregisterAppInstanceUserEndpoint, + HTTPMethod: "DELETE", + HTTPPath: "/app-instance-users/{appInstanceUserArn}/endpoints/{endpointId}", + } + + if input == nil { + input = &DeregisterAppInstanceUserEndpointInput{} + } + + output = &DeregisterAppInstanceUserEndpointOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeregisterAppInstanceUserEndpoint API operation for Amazon Chime SDK Identity. +// +// Deregisters an AppInstanceUserEndpoint. +// +// 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 Identity's +// API operation DeregisterAppInstanceUserEndpoint 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. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/DeregisterAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) DeregisterAppInstanceUserEndpoint(input *DeregisterAppInstanceUserEndpointInput) (*DeregisterAppInstanceUserEndpointOutput, error) { + req, out := c.DeregisterAppInstanceUserEndpointRequest(input) + return out, req.Send() +} + +// DeregisterAppInstanceUserEndpointWithContext is the same as DeregisterAppInstanceUserEndpoint with the addition of +// the ability to pass a context and additional request options. +// +// See DeregisterAppInstanceUserEndpoint 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 *ChimeSDKIdentity) DeregisterAppInstanceUserEndpointWithContext(ctx aws.Context, input *DeregisterAppInstanceUserEndpointInput, opts ...request.Option) (*DeregisterAppInstanceUserEndpointOutput, error) { + req, out := c.DeregisterAppInstanceUserEndpointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeAppInstance = "DescribeAppInstance" // DescribeAppInstanceRequest generates a "aws/request.Request" representing the @@ -913,6 +1008,100 @@ func (c *ChimeSDKIdentity) DescribeAppInstanceUserWithContext(ctx aws.Context, i return out, req.Send() } +const opDescribeAppInstanceUserEndpoint = "DescribeAppInstanceUserEndpoint" + +// DescribeAppInstanceUserEndpointRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAppInstanceUserEndpoint 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 DescribeAppInstanceUserEndpoint for more information on using the DescribeAppInstanceUserEndpoint +// 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 DescribeAppInstanceUserEndpointRequest method. +// req, resp := client.DescribeAppInstanceUserEndpointRequest(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-identity-2021-04-20/DescribeAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) DescribeAppInstanceUserEndpointRequest(input *DescribeAppInstanceUserEndpointInput) (req *request.Request, output *DescribeAppInstanceUserEndpointOutput) { + op := &request.Operation{ + Name: opDescribeAppInstanceUserEndpoint, + HTTPMethod: "GET", + HTTPPath: "/app-instance-users/{appInstanceUserArn}/endpoints/{endpointId}", + } + + if input == nil { + input = &DescribeAppInstanceUserEndpointInput{} + } + + output = &DescribeAppInstanceUserEndpointOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeAppInstanceUserEndpoint API operation for Amazon Chime SDK Identity. +// +// Returns the full details of an AppInstanceUserEndpoint. +// +// 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 Identity's +// API operation DescribeAppInstanceUserEndpoint 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. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/DescribeAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) DescribeAppInstanceUserEndpoint(input *DescribeAppInstanceUserEndpointInput) (*DescribeAppInstanceUserEndpointOutput, error) { + req, out := c.DescribeAppInstanceUserEndpointRequest(input) + return out, req.Send() +} + +// DescribeAppInstanceUserEndpointWithContext is the same as DescribeAppInstanceUserEndpoint with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeAppInstanceUserEndpoint 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 *ChimeSDKIdentity) DescribeAppInstanceUserEndpointWithContext(ctx aws.Context, input *DescribeAppInstanceUserEndpointInput, opts ...request.Option) (*DescribeAppInstanceUserEndpointOutput, error) { + req, out := c.DescribeAppInstanceUserEndpointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAppInstanceRetentionSettings = "GetAppInstanceRetentionSettings" // GetAppInstanceRetentionSettingsRequest generates a "aws/request.Request" representing the @@ -1162,37 +1351,37 @@ func (c *ChimeSDKIdentity) ListAppInstanceAdminsPagesWithContext(ctx aws.Context return p.Err() } -const opListAppInstanceUsers = "ListAppInstanceUsers" +const opListAppInstanceUserEndpoints = "ListAppInstanceUserEndpoints" -// ListAppInstanceUsersRequest generates a "aws/request.Request" representing the -// client's request for the ListAppInstanceUsers operation. The "output" return +// ListAppInstanceUserEndpointsRequest generates a "aws/request.Request" representing the +// client's request for the ListAppInstanceUserEndpoints 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 ListAppInstanceUsers for more information on using the ListAppInstanceUsers +// See ListAppInstanceUserEndpoints for more information on using the ListAppInstanceUserEndpoints // 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 ListAppInstanceUsersRequest method. -// req, resp := client.ListAppInstanceUsersRequest(params) +// // Example sending a request using the ListAppInstanceUserEndpointsRequest method. +// req, resp := client.ListAppInstanceUserEndpointsRequest(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-identity-2021-04-20/ListAppInstanceUsers -func (c *ChimeSDKIdentity) ListAppInstanceUsersRequest(input *ListAppInstanceUsersInput) (req *request.Request, output *ListAppInstanceUsersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstanceUserEndpoints +func (c *ChimeSDKIdentity) ListAppInstanceUserEndpointsRequest(input *ListAppInstanceUserEndpointsInput) (req *request.Request, output *ListAppInstanceUserEndpointsOutput) { op := &request.Operation{ - Name: opListAppInstanceUsers, + Name: opListAppInstanceUserEndpoints, HTTPMethod: "GET", - HTTPPath: "/app-instance-users", + HTTPPath: "/app-instance-users/{appInstanceUserArn}/endpoints", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -1202,24 +1391,24 @@ func (c *ChimeSDKIdentity) ListAppInstanceUsersRequest(input *ListAppInstanceUse } if input == nil { - input = &ListAppInstanceUsersInput{} + input = &ListAppInstanceUserEndpointsInput{} } - output = &ListAppInstanceUsersOutput{} + output = &ListAppInstanceUserEndpointsOutput{} req = c.newRequest(op, input, output) return } -// ListAppInstanceUsers API operation for Amazon Chime SDK Identity. +// ListAppInstanceUserEndpoints API operation for Amazon Chime SDK Identity. // -// List all AppInstanceUsers created under a single AppInstance. +// Lists all the AppInstanceUserEndpoints created under a single AppInstanceUser. // // 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 Identity's -// API operation ListAppInstanceUsers for usage and error information. +// API operation ListAppInstanceUserEndpoints for usage and error information. // // Returned Error Types: // * BadRequestException @@ -1240,65 +1429,65 @@ func (c *ChimeSDKIdentity) ListAppInstanceUsersRequest(input *ListAppInstanceUse // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstanceUsers -func (c *ChimeSDKIdentity) ListAppInstanceUsers(input *ListAppInstanceUsersInput) (*ListAppInstanceUsersOutput, error) { - req, out := c.ListAppInstanceUsersRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstanceUserEndpoints +func (c *ChimeSDKIdentity) ListAppInstanceUserEndpoints(input *ListAppInstanceUserEndpointsInput) (*ListAppInstanceUserEndpointsOutput, error) { + req, out := c.ListAppInstanceUserEndpointsRequest(input) return out, req.Send() } -// ListAppInstanceUsersWithContext is the same as ListAppInstanceUsers with the addition of +// ListAppInstanceUserEndpointsWithContext is the same as ListAppInstanceUserEndpoints with the addition of // the ability to pass a context and additional request options. // -// See ListAppInstanceUsers for details on how to use this API operation. +// See ListAppInstanceUserEndpoints 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 *ChimeSDKIdentity) ListAppInstanceUsersWithContext(ctx aws.Context, input *ListAppInstanceUsersInput, opts ...request.Option) (*ListAppInstanceUsersOutput, error) { - req, out := c.ListAppInstanceUsersRequest(input) +func (c *ChimeSDKIdentity) ListAppInstanceUserEndpointsWithContext(ctx aws.Context, input *ListAppInstanceUserEndpointsInput, opts ...request.Option) (*ListAppInstanceUserEndpointsOutput, error) { + req, out := c.ListAppInstanceUserEndpointsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListAppInstanceUsersPages iterates over the pages of a ListAppInstanceUsers operation, +// ListAppInstanceUserEndpointsPages iterates over the pages of a ListAppInstanceUserEndpoints operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListAppInstanceUsers method for more information on how to use this operation. +// See ListAppInstanceUserEndpoints 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 ListAppInstanceUsers operation. +// // Example iterating over at most 3 pages of a ListAppInstanceUserEndpoints operation. // pageNum := 0 -// err := client.ListAppInstanceUsersPages(params, -// func(page *chimesdkidentity.ListAppInstanceUsersOutput, lastPage bool) bool { +// err := client.ListAppInstanceUserEndpointsPages(params, +// func(page *chimesdkidentity.ListAppInstanceUserEndpointsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *ChimeSDKIdentity) ListAppInstanceUsersPages(input *ListAppInstanceUsersInput, fn func(*ListAppInstanceUsersOutput, bool) bool) error { - return c.ListAppInstanceUsersPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *ChimeSDKIdentity) ListAppInstanceUserEndpointsPages(input *ListAppInstanceUserEndpointsInput, fn func(*ListAppInstanceUserEndpointsOutput, bool) bool) error { + return c.ListAppInstanceUserEndpointsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListAppInstanceUsersPagesWithContext same as ListAppInstanceUsersPages except +// ListAppInstanceUserEndpointsPagesWithContext same as ListAppInstanceUserEndpointsPages 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 *ChimeSDKIdentity) ListAppInstanceUsersPagesWithContext(ctx aws.Context, input *ListAppInstanceUsersInput, fn func(*ListAppInstanceUsersOutput, bool) bool, opts ...request.Option) error { +func (c *ChimeSDKIdentity) ListAppInstanceUserEndpointsPagesWithContext(ctx aws.Context, input *ListAppInstanceUserEndpointsInput, fn func(*ListAppInstanceUserEndpointsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListAppInstanceUsersInput + var inCpy *ListAppInstanceUserEndpointsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListAppInstanceUsersRequest(inCpy) + req, _ := c.ListAppInstanceUserEndpointsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -1306,7 +1495,7 @@ func (c *ChimeSDKIdentity) ListAppInstanceUsersPagesWithContext(ctx aws.Context, } for p.Next() { - if !fn(p.Page().(*ListAppInstanceUsersOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListAppInstanceUserEndpointsOutput), !p.HasNextPage()) { break } } @@ -1314,37 +1503,37 @@ func (c *ChimeSDKIdentity) ListAppInstanceUsersPagesWithContext(ctx aws.Context, return p.Err() } -const opListAppInstances = "ListAppInstances" +const opListAppInstanceUsers = "ListAppInstanceUsers" -// ListAppInstancesRequest generates a "aws/request.Request" representing the -// client's request for the ListAppInstances operation. The "output" return +// ListAppInstanceUsersRequest generates a "aws/request.Request" representing the +// client's request for the ListAppInstanceUsers 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 ListAppInstances for more information on using the ListAppInstances +// See ListAppInstanceUsers for more information on using the ListAppInstanceUsers // 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 ListAppInstancesRequest method. -// req, resp := client.ListAppInstancesRequest(params) +// // Example sending a request using the ListAppInstanceUsersRequest method. +// req, resp := client.ListAppInstanceUsersRequest(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-identity-2021-04-20/ListAppInstances -func (c *ChimeSDKIdentity) ListAppInstancesRequest(input *ListAppInstancesInput) (req *request.Request, output *ListAppInstancesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstanceUsers +func (c *ChimeSDKIdentity) ListAppInstanceUsersRequest(input *ListAppInstanceUsersInput) (req *request.Request, output *ListAppInstanceUsersOutput) { op := &request.Operation{ - Name: opListAppInstances, + Name: opListAppInstanceUsers, HTTPMethod: "GET", - HTTPPath: "/app-instances", + HTTPPath: "/app-instance-users", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -1354,24 +1543,24 @@ func (c *ChimeSDKIdentity) ListAppInstancesRequest(input *ListAppInstancesInput) } if input == nil { - input = &ListAppInstancesInput{} + input = &ListAppInstanceUsersInput{} } - output = &ListAppInstancesOutput{} + output = &ListAppInstanceUsersOutput{} req = c.newRequest(op, input, output) return } -// ListAppInstances API operation for Amazon Chime SDK Identity. +// ListAppInstanceUsers API operation for Amazon Chime SDK Identity. // -// Lists all Amazon Chime AppInstances created under a single AWS account. +// List all AppInstanceUsers created under a single AppInstance. // // 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 Identity's -// API operation ListAppInstances for usage and error information. +// API operation ListAppInstanceUsers for usage and error information. // // Returned Error Types: // * BadRequestException @@ -1392,65 +1581,65 @@ func (c *ChimeSDKIdentity) ListAppInstancesRequest(input *ListAppInstancesInput) // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstances -func (c *ChimeSDKIdentity) ListAppInstances(input *ListAppInstancesInput) (*ListAppInstancesOutput, error) { - req, out := c.ListAppInstancesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstanceUsers +func (c *ChimeSDKIdentity) ListAppInstanceUsers(input *ListAppInstanceUsersInput) (*ListAppInstanceUsersOutput, error) { + req, out := c.ListAppInstanceUsersRequest(input) return out, req.Send() } -// ListAppInstancesWithContext is the same as ListAppInstances with the addition of +// ListAppInstanceUsersWithContext is the same as ListAppInstanceUsers with the addition of // the ability to pass a context and additional request options. // -// See ListAppInstances for details on how to use this API operation. +// See ListAppInstanceUsers 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 *ChimeSDKIdentity) ListAppInstancesWithContext(ctx aws.Context, input *ListAppInstancesInput, opts ...request.Option) (*ListAppInstancesOutput, error) { - req, out := c.ListAppInstancesRequest(input) +func (c *ChimeSDKIdentity) ListAppInstanceUsersWithContext(ctx aws.Context, input *ListAppInstanceUsersInput, opts ...request.Option) (*ListAppInstanceUsersOutput, error) { + req, out := c.ListAppInstanceUsersRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListAppInstancesPages iterates over the pages of a ListAppInstances operation, +// ListAppInstanceUsersPages iterates over the pages of a ListAppInstanceUsers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListAppInstances method for more information on how to use this operation. +// See ListAppInstanceUsers 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 ListAppInstances operation. +// // Example iterating over at most 3 pages of a ListAppInstanceUsers operation. // pageNum := 0 -// err := client.ListAppInstancesPages(params, -// func(page *chimesdkidentity.ListAppInstancesOutput, lastPage bool) bool { +// err := client.ListAppInstanceUsersPages(params, +// func(page *chimesdkidentity.ListAppInstanceUsersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // -func (c *ChimeSDKIdentity) ListAppInstancesPages(input *ListAppInstancesInput, fn func(*ListAppInstancesOutput, bool) bool) error { - return c.ListAppInstancesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *ChimeSDKIdentity) ListAppInstanceUsersPages(input *ListAppInstanceUsersInput, fn func(*ListAppInstanceUsersOutput, bool) bool) error { + return c.ListAppInstanceUsersPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListAppInstancesPagesWithContext same as ListAppInstancesPages except +// ListAppInstanceUsersPagesWithContext same as ListAppInstanceUsersPages 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 *ChimeSDKIdentity) ListAppInstancesPagesWithContext(ctx aws.Context, input *ListAppInstancesInput, fn func(*ListAppInstancesOutput, bool) bool, opts ...request.Option) error { +func (c *ChimeSDKIdentity) ListAppInstanceUsersPagesWithContext(ctx aws.Context, input *ListAppInstanceUsersInput, fn func(*ListAppInstanceUsersOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListAppInstancesInput + var inCpy *ListAppInstanceUsersInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListAppInstancesRequest(inCpy) + req, _ := c.ListAppInstanceUsersRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -1458,7 +1647,7 @@ func (c *ChimeSDKIdentity) ListAppInstancesPagesWithContext(ctx aws.Context, inp } for p.Next() { - if !fn(p.Page().(*ListAppInstancesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListAppInstanceUsersOutput), !p.HasNextPage()) { break } } @@ -1466,24 +1655,270 @@ func (c *ChimeSDKIdentity) ListAppInstancesPagesWithContext(ctx aws.Context, inp return p.Err() } -const opPutAppInstanceRetentionSettings = "PutAppInstanceRetentionSettings" +const opListAppInstances = "ListAppInstances" -// PutAppInstanceRetentionSettingsRequest generates a "aws/request.Request" representing the -// client's request for the PutAppInstanceRetentionSettings operation. The "output" return +// ListAppInstancesRequest generates a "aws/request.Request" representing the +// client's request for the ListAppInstances 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 PutAppInstanceRetentionSettings for more information on using the PutAppInstanceRetentionSettings +// See ListAppInstances for more information on using the ListAppInstances // 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 PutAppInstanceRetentionSettingsRequest method. +// // Example sending a request using the ListAppInstancesRequest method. +// req, resp := client.ListAppInstancesRequest(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-identity-2021-04-20/ListAppInstances +func (c *ChimeSDKIdentity) ListAppInstancesRequest(input *ListAppInstancesInput) (req *request.Request, output *ListAppInstancesOutput) { + op := &request.Operation{ + Name: opListAppInstances, + HTTPMethod: "GET", + HTTPPath: "/app-instances", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAppInstancesInput{} + } + + output = &ListAppInstancesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAppInstances API operation for Amazon Chime SDK Identity. +// +// Lists all Amazon Chime AppInstances created under a single AWS account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Identity's +// API operation ListAppInstances 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. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/ListAppInstances +func (c *ChimeSDKIdentity) ListAppInstances(input *ListAppInstancesInput) (*ListAppInstancesOutput, error) { + req, out := c.ListAppInstancesRequest(input) + return out, req.Send() +} + +// ListAppInstancesWithContext is the same as ListAppInstances with the addition of +// the ability to pass a context and additional request options. +// +// See ListAppInstances 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 *ChimeSDKIdentity) ListAppInstancesWithContext(ctx aws.Context, input *ListAppInstancesInput, opts ...request.Option) (*ListAppInstancesOutput, error) { + req, out := c.ListAppInstancesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAppInstancesPages iterates over the pages of a ListAppInstances operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAppInstances 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 ListAppInstances operation. +// pageNum := 0 +// err := client.ListAppInstancesPages(params, +// func(page *chimesdkidentity.ListAppInstancesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *ChimeSDKIdentity) ListAppInstancesPages(input *ListAppInstancesInput, fn func(*ListAppInstancesOutput, bool) bool) error { + return c.ListAppInstancesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAppInstancesPagesWithContext same as ListAppInstancesPages 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 *ChimeSDKIdentity) ListAppInstancesPagesWithContext(ctx aws.Context, input *ListAppInstancesInput, fn func(*ListAppInstancesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAppInstancesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAppInstancesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAppInstancesOutput), !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-identity-2021-04-20/ListTagsForResource +func (c *ChimeSDKIdentity) 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 Identity. +// +// Lists the tags applied to an Amazon Chime SDK identity 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 Identity'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-identity-2021-04-20/ListTagsForResource +func (c *ChimeSDKIdentity) 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 *ChimeSDKIdentity) 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 opPutAppInstanceRetentionSettings = "PutAppInstanceRetentionSettings" + +// PutAppInstanceRetentionSettingsRequest generates a "aws/request.Request" representing the +// client's request for the PutAppInstanceRetentionSettings 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 PutAppInstanceRetentionSettings for more information on using the PutAppInstanceRetentionSettings +// 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 PutAppInstanceRetentionSettingsRequest method. // req, resp := client.PutAppInstanceRetentionSettingsRequest(params) // // err := req.Send() @@ -1560,58 +1995,452 @@ func (c *ChimeSDKIdentity) PutAppInstanceRetentionSettingsWithContext(ctx aws.Co return out, req.Send() } -const opUpdateAppInstance = "UpdateAppInstance" +const opRegisterAppInstanceUserEndpoint = "RegisterAppInstanceUserEndpoint" -// UpdateAppInstanceRequest generates a "aws/request.Request" representing the -// client's request for the UpdateAppInstance operation. The "output" return +// RegisterAppInstanceUserEndpointRequest generates a "aws/request.Request" representing the +// client's request for the RegisterAppInstanceUserEndpoint 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 UpdateAppInstance for more information on using the UpdateAppInstance +// See RegisterAppInstanceUserEndpoint for more information on using the RegisterAppInstanceUserEndpoint // 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 UpdateAppInstanceRequest method. -// req, resp := client.UpdateAppInstanceRequest(params) +// // Example sending a request using the RegisterAppInstanceUserEndpointRequest method. +// req, resp := client.RegisterAppInstanceUserEndpointRequest(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-identity-2021-04-20/UpdateAppInstance -func (c *ChimeSDKIdentity) UpdateAppInstanceRequest(input *UpdateAppInstanceInput) (req *request.Request, output *UpdateAppInstanceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/RegisterAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) RegisterAppInstanceUserEndpointRequest(input *RegisterAppInstanceUserEndpointInput) (req *request.Request, output *RegisterAppInstanceUserEndpointOutput) { op := &request.Operation{ - Name: opUpdateAppInstance, - HTTPMethod: "PUT", - HTTPPath: "/app-instances/{appInstanceArn}", + Name: opRegisterAppInstanceUserEndpoint, + HTTPMethod: "POST", + HTTPPath: "/app-instance-users/{appInstanceUserArn}/endpoints", } if input == nil { - input = &UpdateAppInstanceInput{} + input = &RegisterAppInstanceUserEndpointInput{} } - output = &UpdateAppInstanceOutput{} + output = &RegisterAppInstanceUserEndpointOutput{} req = c.newRequest(op, input, output) return } -// UpdateAppInstance API operation for Amazon Chime SDK Identity. +// RegisterAppInstanceUserEndpoint API operation for Amazon Chime SDK Identity. // -// Updates AppInstance metadata. +// Registers an endpoint under an Amazon Chime AppInstanceUser. The endpoint +// receives messages for a user. For push notifications, the endpoint is a mobile +// device used to receive mobile push notifications for a user. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Chime SDK Identity's +// API operation RegisterAppInstanceUserEndpoint 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. +// +// * ResourceLimitExceededException +// The request exceeds the resource limit. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/RegisterAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) RegisterAppInstanceUserEndpoint(input *RegisterAppInstanceUserEndpointInput) (*RegisterAppInstanceUserEndpointOutput, error) { + req, out := c.RegisterAppInstanceUserEndpointRequest(input) + return out, req.Send() +} + +// RegisterAppInstanceUserEndpointWithContext is the same as RegisterAppInstanceUserEndpoint with the addition of +// the ability to pass a context and additional request options. +// +// See RegisterAppInstanceUserEndpoint 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 *ChimeSDKIdentity) RegisterAppInstanceUserEndpointWithContext(ctx aws.Context, input *RegisterAppInstanceUserEndpointInput, opts ...request.Option) (*RegisterAppInstanceUserEndpointOutput, error) { + req, out := c.RegisterAppInstanceUserEndpointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/TagResource +func (c *ChimeSDKIdentity) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags?operation=tag-resource", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Amazon Chime SDK Identity. +// +// Applies the specified tags to the specified Amazon Chime SDK identity 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 Identity's +// API operation TagResource 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. +// +// * 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-identity-2021-04-20/TagResource +func (c *ChimeSDKIdentity) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKIdentity) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UntagResource +func (c *ChimeSDKIdentity) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/tags?operation=untag-resource", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon Chime SDK Identity. +// +// Removes the specified tags from the specified Amazon Chime SDK identity 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 Identity's +// API operation UntagResource 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-identity-2021-04-20/UntagResource +func (c *ChimeSDKIdentity) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ChimeSDKIdentity) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAppInstance = "UpdateAppInstance" + +// UpdateAppInstanceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAppInstance 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 UpdateAppInstance for more information on using the UpdateAppInstance +// 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 UpdateAppInstanceRequest method. +// req, resp := client.UpdateAppInstanceRequest(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-identity-2021-04-20/UpdateAppInstance +func (c *ChimeSDKIdentity) UpdateAppInstanceRequest(input *UpdateAppInstanceInput) (req *request.Request, output *UpdateAppInstanceOutput) { + op := &request.Operation{ + Name: opUpdateAppInstance, + HTTPMethod: "PUT", + HTTPPath: "/app-instances/{appInstanceArn}", + } + + if input == nil { + input = &UpdateAppInstanceInput{} + } + + output = &UpdateAppInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAppInstance API operation for Amazon Chime SDK Identity. +// +// Updates AppInstance 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 Identity's +// API operation UpdateAppInstance 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. +// +// * ThrottledClientException +// The client exceeded its request rate limit. +// +// * UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// * ServiceUnavailableException +// The service is currently unavailable. +// +// * ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UpdateAppInstance +func (c *ChimeSDKIdentity) UpdateAppInstance(input *UpdateAppInstanceInput) (*UpdateAppInstanceOutput, error) { + req, out := c.UpdateAppInstanceRequest(input) + return out, req.Send() +} + +// UpdateAppInstanceWithContext is the same as UpdateAppInstance with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAppInstance 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 *ChimeSDKIdentity) UpdateAppInstanceWithContext(ctx aws.Context, input *UpdateAppInstanceInput, opts ...request.Option) (*UpdateAppInstanceOutput, error) { + req, out := c.UpdateAppInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAppInstanceUser = "UpdateAppInstanceUser" + +// UpdateAppInstanceUserRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAppInstanceUser 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 UpdateAppInstanceUser for more information on using the UpdateAppInstanceUser +// 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 UpdateAppInstanceUserRequest method. +// req, resp := client.UpdateAppInstanceUserRequest(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-identity-2021-04-20/UpdateAppInstanceUser +func (c *ChimeSDKIdentity) UpdateAppInstanceUserRequest(input *UpdateAppInstanceUserInput) (req *request.Request, output *UpdateAppInstanceUserOutput) { + op := &request.Operation{ + Name: opUpdateAppInstanceUser, + HTTPMethod: "PUT", + HTTPPath: "/app-instance-users/{appInstanceUserArn}", + } + + if input == nil { + input = &UpdateAppInstanceUserInput{} + } + + output = &UpdateAppInstanceUserOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAppInstanceUser API operation for Amazon Chime SDK Identity. +// +// Updates the details of an AppInstanceUser. You can update names and 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 Identity's -// API operation UpdateAppInstance for usage and error information. +// API operation UpdateAppInstanceUser for usage and error information. // // Returned Error Types: // * BadRequestException @@ -1624,6 +2453,9 @@ func (c *ChimeSDKIdentity) UpdateAppInstanceRequest(input *UpdateAppInstanceInpu // * ForbiddenException // The client is permanently forbidden from making the request. // +// * ResourceLimitExceededException +// The request exceeds the resource limit. +// // * ThrottledClientException // The client exceeded its request rate limit. // @@ -1636,80 +2468,81 @@ func (c *ChimeSDKIdentity) UpdateAppInstanceRequest(input *UpdateAppInstanceInpu // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UpdateAppInstance -func (c *ChimeSDKIdentity) UpdateAppInstance(input *UpdateAppInstanceInput) (*UpdateAppInstanceOutput, error) { - req, out := c.UpdateAppInstanceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UpdateAppInstanceUser +func (c *ChimeSDKIdentity) UpdateAppInstanceUser(input *UpdateAppInstanceUserInput) (*UpdateAppInstanceUserOutput, error) { + req, out := c.UpdateAppInstanceUserRequest(input) return out, req.Send() } -// UpdateAppInstanceWithContext is the same as UpdateAppInstance with the addition of +// UpdateAppInstanceUserWithContext is the same as UpdateAppInstanceUser with the addition of // the ability to pass a context and additional request options. // -// See UpdateAppInstance for details on how to use this API operation. +// See UpdateAppInstanceUser 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 *ChimeSDKIdentity) UpdateAppInstanceWithContext(ctx aws.Context, input *UpdateAppInstanceInput, opts ...request.Option) (*UpdateAppInstanceOutput, error) { - req, out := c.UpdateAppInstanceRequest(input) +func (c *ChimeSDKIdentity) UpdateAppInstanceUserWithContext(ctx aws.Context, input *UpdateAppInstanceUserInput, opts ...request.Option) (*UpdateAppInstanceUserOutput, error) { + req, out := c.UpdateAppInstanceUserRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateAppInstanceUser = "UpdateAppInstanceUser" +const opUpdateAppInstanceUserEndpoint = "UpdateAppInstanceUserEndpoint" -// UpdateAppInstanceUserRequest generates a "aws/request.Request" representing the -// client's request for the UpdateAppInstanceUser operation. The "output" return +// UpdateAppInstanceUserEndpointRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAppInstanceUserEndpoint 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 UpdateAppInstanceUser for more information on using the UpdateAppInstanceUser +// See UpdateAppInstanceUserEndpoint for more information on using the UpdateAppInstanceUserEndpoint // 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 UpdateAppInstanceUserRequest method. -// req, resp := client.UpdateAppInstanceUserRequest(params) +// // Example sending a request using the UpdateAppInstanceUserEndpointRequest method. +// req, resp := client.UpdateAppInstanceUserEndpointRequest(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-identity-2021-04-20/UpdateAppInstanceUser -func (c *ChimeSDKIdentity) UpdateAppInstanceUserRequest(input *UpdateAppInstanceUserInput) (req *request.Request, output *UpdateAppInstanceUserOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UpdateAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) UpdateAppInstanceUserEndpointRequest(input *UpdateAppInstanceUserEndpointInput) (req *request.Request, output *UpdateAppInstanceUserEndpointOutput) { op := &request.Operation{ - Name: opUpdateAppInstanceUser, + Name: opUpdateAppInstanceUserEndpoint, HTTPMethod: "PUT", - HTTPPath: "/app-instance-users/{appInstanceUserArn}", + HTTPPath: "/app-instance-users/{appInstanceUserArn}/endpoints/{endpointId}", } if input == nil { - input = &UpdateAppInstanceUserInput{} + input = &UpdateAppInstanceUserEndpointInput{} } - output = &UpdateAppInstanceUserOutput{} + output = &UpdateAppInstanceUserEndpointOutput{} req = c.newRequest(op, input, output) return } -// UpdateAppInstanceUser API operation for Amazon Chime SDK Identity. +// UpdateAppInstanceUserEndpoint API operation for Amazon Chime SDK Identity. // -// Updates the details of an AppInstanceUser. You can update names and metadata. +// Updates the details of an AppInstanceUserEndpoint. You can update the name +// and AllowMessage values. // // 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 Identity's -// API operation UpdateAppInstanceUser for usage and error information. +// API operation UpdateAppInstanceUserEndpoint for usage and error information. // // Returned Error Types: // * BadRequestException @@ -1722,9 +2555,6 @@ func (c *ChimeSDKIdentity) UpdateAppInstanceUserRequest(input *UpdateAppInstance // * ForbiddenException // The client is permanently forbidden from making the request. // -// * ResourceLimitExceededException -// The request exceeds the resource limit. -// // * ThrottledClientException // The client exceeded its request rate limit. // @@ -1737,23 +2567,23 @@ func (c *ChimeSDKIdentity) UpdateAppInstanceUserRequest(input *UpdateAppInstance // * ServiceFailureException // The service encountered an unexpected error. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UpdateAppInstanceUser -func (c *ChimeSDKIdentity) UpdateAppInstanceUser(input *UpdateAppInstanceUserInput) (*UpdateAppInstanceUserOutput, error) { - req, out := c.UpdateAppInstanceUserRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-identity-2021-04-20/UpdateAppInstanceUserEndpoint +func (c *ChimeSDKIdentity) UpdateAppInstanceUserEndpoint(input *UpdateAppInstanceUserEndpointInput) (*UpdateAppInstanceUserEndpointOutput, error) { + req, out := c.UpdateAppInstanceUserEndpointRequest(input) return out, req.Send() } -// UpdateAppInstanceUserWithContext is the same as UpdateAppInstanceUser with the addition of +// UpdateAppInstanceUserEndpointWithContext is the same as UpdateAppInstanceUserEndpoint with the addition of // the ability to pass a context and additional request options. // -// See UpdateAppInstanceUser for details on how to use this API operation. +// See UpdateAppInstanceUserEndpoint 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 *ChimeSDKIdentity) UpdateAppInstanceUserWithContext(ctx aws.Context, input *UpdateAppInstanceUserInput, opts ...request.Option) (*UpdateAppInstanceUserOutput, error) { - req, out := c.UpdateAppInstanceUserRequest(input) +func (c *ChimeSDKIdentity) UpdateAppInstanceUserEndpointWithContext(ctx aws.Context, input *UpdateAppInstanceUserEndpointInput, opts ...request.Option) (*UpdateAppInstanceUserEndpointOutput, error) { + req, out := c.UpdateAppInstanceUserEndpointRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() @@ -2099,6 +2929,245 @@ func (s *AppInstanceUser) SetName(v string) *AppInstanceUser { return s } +// An endpoint under an Amazon Chime AppInstanceUser that receives messages +// for a user. For push notifications, the endpoint is a mobile device used +// to receive mobile push notifications for a user. +type AppInstanceUserEndpoint struct { + _ struct{} `type:"structure"` + + // Boolean that controls whether the AppInstanceUserEndpoint is opted in to + // receive messages. ALL indicates the endpoint will receive all messages. NONE + // indicates the endpoint will receive no messages. + AllowMessages *string `type:"string" enum:"AllowMessages"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpoint's + // String and GoString methods. + AppInstanceUserArn *string `min:"5" type:"string" sensitive:"true"` + + // The time at which an AppInstanceUserEndpoint was created. + CreatedTimestamp *time.Time `type:"timestamp"` + + // The attributes of an Endpoint. + EndpointAttributes *EndpointAttributes `type:"structure"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpoint's + // String and GoString methods. + EndpointId *string `type:"string" sensitive:"true"` + + // A read-only field that represents the state of an AppInstanceUserEndpoint. + // Supported values: + // + // * ACTIVE: The AppInstanceUserEndpoint is active and able to receive messages. + // When ACTIVE, the EndpointStatusReason remains empty. + // + // * INACTIVE: The AppInstanceUserEndpoint is inactive and can't receive + // message. When INACTIVE, the corresponding reason will be conveyed through + // EndpointStatusReason. + // + // * INVALID_DEVICE_TOKEN indicates that an AppInstanceUserEndpoint is INACTIVE + // due to invalid device token + // + // * INVALID_PINPOINT_ARN indicates that an AppInstanceUserEndpoint is INACTIVE + // due to an invalid pinpoint ARN that was input through the ResourceArn + // field. + EndpointState *EndpointState `type:"structure"` + + // The time at which an AppInstanceUserEndpoint was last updated. + LastUpdatedTimestamp *time.Time `type:"timestamp"` + + // The name of the AppInstanceUserEndpoint. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpoint's + // String and GoString methods. + Name *string `type:"string" sensitive:"true"` + + // The ARN of the resource to which the endpoint belongs. + // + // ResourceArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpoint's + // String and GoString methods. + ResourceArn *string `min:"5" type:"string" sensitive:"true"` + + // The type of the AppInstanceUserEndpoint. + Type *string `type:"string" enum:"AppInstanceUserEndpointType"` +} + +// 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 AppInstanceUserEndpoint) 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 AppInstanceUserEndpoint) GoString() string { + return s.String() +} + +// SetAllowMessages sets the AllowMessages field's value. +func (s *AppInstanceUserEndpoint) SetAllowMessages(v string) *AppInstanceUserEndpoint { + s.AllowMessages = &v + return s +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *AppInstanceUserEndpoint) SetAppInstanceUserArn(v string) *AppInstanceUserEndpoint { + s.AppInstanceUserArn = &v + return s +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *AppInstanceUserEndpoint) SetCreatedTimestamp(v time.Time) *AppInstanceUserEndpoint { + s.CreatedTimestamp = &v + return s +} + +// SetEndpointAttributes sets the EndpointAttributes field's value. +func (s *AppInstanceUserEndpoint) SetEndpointAttributes(v *EndpointAttributes) *AppInstanceUserEndpoint { + s.EndpointAttributes = v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *AppInstanceUserEndpoint) SetEndpointId(v string) *AppInstanceUserEndpoint { + s.EndpointId = &v + return s +} + +// SetEndpointState sets the EndpointState field's value. +func (s *AppInstanceUserEndpoint) SetEndpointState(v *EndpointState) *AppInstanceUserEndpoint { + s.EndpointState = v + return s +} + +// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value. +func (s *AppInstanceUserEndpoint) SetLastUpdatedTimestamp(v time.Time) *AppInstanceUserEndpoint { + s.LastUpdatedTimestamp = &v + return s +} + +// SetName sets the Name field's value. +func (s *AppInstanceUserEndpoint) SetName(v string) *AppInstanceUserEndpoint { + s.Name = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *AppInstanceUserEndpoint) SetResourceArn(v string) *AppInstanceUserEndpoint { + s.ResourceArn = &v + return s +} + +// SetType sets the Type field's value. +func (s *AppInstanceUserEndpoint) SetType(v string) *AppInstanceUserEndpoint { + s.Type = &v + return s +} + +// Summary of the details of an AppInstanceUserEndpoint. +type AppInstanceUserEndpointSummary struct { + _ struct{} `type:"structure"` + + // BBoolean that controls whether the AppInstanceUserEndpoint is opted in to + // receive messages. ALL indicates the endpoint will receive all messages. NONE + // indicates the endpoint will receive no messages. + AllowMessages *string `type:"string" enum:"AllowMessages"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpointSummary's + // String and GoString methods. + AppInstanceUserArn *string `min:"5" type:"string" sensitive:"true"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpointSummary's + // String and GoString methods. + EndpointId *string `type:"string" sensitive:"true"` + + // A read-only field that represent the state of an AppInstanceUserEndpoint. + EndpointState *EndpointState `type:"structure"` + + // The name of the AppInstanceUserEndpoint. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AppInstanceUserEndpointSummary's + // String and GoString methods. + Name *string `type:"string" sensitive:"true"` + + // The type of the AppInstanceUserEndpoint. + Type *string `type:"string" enum:"AppInstanceUserEndpointType"` +} + +// 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 AppInstanceUserEndpointSummary) 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 AppInstanceUserEndpointSummary) GoString() string { + return s.String() +} + +// SetAllowMessages sets the AllowMessages field's value. +func (s *AppInstanceUserEndpointSummary) SetAllowMessages(v string) *AppInstanceUserEndpointSummary { + s.AllowMessages = &v + return s +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *AppInstanceUserEndpointSummary) SetAppInstanceUserArn(v string) *AppInstanceUserEndpointSummary { + s.AppInstanceUserArn = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *AppInstanceUserEndpointSummary) SetEndpointId(v string) *AppInstanceUserEndpointSummary { + s.EndpointId = &v + return s +} + +// SetEndpointState sets the EndpointState field's value. +func (s *AppInstanceUserEndpointSummary) SetEndpointState(v *EndpointState) *AppInstanceUserEndpointSummary { + s.EndpointState = v + return s +} + +// SetName sets the Name field's value. +func (s *AppInstanceUserEndpointSummary) SetName(v string) *AppInstanceUserEndpointSummary { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *AppInstanceUserEndpointSummary) SetType(v string) *AppInstanceUserEndpointSummary { + s.Type = &v + return s +} + // Summary of the details of an AppInstanceUser. type AppInstanceUserSummary struct { _ struct{} `type:"structure"` @@ -2952,12 +4021,108 @@ func (s *DeleteAppInstanceUserInput) Validate() error { } // SetAppInstanceUserArn sets the AppInstanceUserArn field's value. -func (s *DeleteAppInstanceUserInput) SetAppInstanceUserArn(v string) *DeleteAppInstanceUserInput { +func (s *DeleteAppInstanceUserInput) SetAppInstanceUserArn(v string) *DeleteAppInstanceUserInput { + s.AppInstanceUserArn = &v + return s +} + +type DeleteAppInstanceUserOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteAppInstanceUserOutput) 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 DeleteAppInstanceUserOutput) GoString() string { + return s.String() +} + +type DeregisterAppInstanceUserEndpointInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeregisterAppInstanceUserEndpointInput's + // String and GoString methods. + // + // AppInstanceUserArn is a required field + AppInstanceUserArn *string `location:"uri" locationName:"appInstanceUserArn" min:"5" type:"string" required:"true" sensitive:"true"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DeregisterAppInstanceUserEndpointInput's + // String and GoString methods. + // + // EndpointId is a required field + EndpointId *string `location:"uri" locationName:"endpointId" 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 DeregisterAppInstanceUserEndpointInput) 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 DeregisterAppInstanceUserEndpointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeregisterAppInstanceUserEndpointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeregisterAppInstanceUserEndpointInput"} + if s.AppInstanceUserArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn")) + } + if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5)) + } + if s.EndpointId == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointId")) + } + if s.EndpointId != nil && len(*s.EndpointId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EndpointId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *DeregisterAppInstanceUserEndpointInput) SetAppInstanceUserArn(v string) *DeregisterAppInstanceUserEndpointInput { s.AppInstanceUserArn = &v return s } -type DeleteAppInstanceUserOutput struct { +// SetEndpointId sets the EndpointId field's value. +func (s *DeregisterAppInstanceUserEndpointInput) SetEndpointId(v string) *DeregisterAppInstanceUserEndpointInput { + s.EndpointId = &v + return s +} + +type DeregisterAppInstanceUserEndpointOutput struct { _ struct{} `type:"structure"` } @@ -2966,7 +4131,7 @@ type DeleteAppInstanceUserOutput 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 DeleteAppInstanceUserOutput) String() string { +func (s DeregisterAppInstanceUserEndpointOutput) String() string { return awsutil.Prettify(s) } @@ -2975,7 +4140,7 @@ func (s DeleteAppInstanceUserOutput) 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 DeleteAppInstanceUserOutput) GoString() string { +func (s DeregisterAppInstanceUserEndpointOutput) GoString() string { return s.String() } @@ -3158,6 +4323,113 @@ func (s *DescribeAppInstanceOutput) SetAppInstance(v *AppInstance) *DescribeAppI return s } +type DescribeAppInstanceUserEndpointInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DescribeAppInstanceUserEndpointInput's + // String and GoString methods. + // + // AppInstanceUserArn is a required field + AppInstanceUserArn *string `location:"uri" locationName:"appInstanceUserArn" type:"string" required:"true" sensitive:"true"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DescribeAppInstanceUserEndpointInput's + // String and GoString methods. + // + // EndpointId is a required field + EndpointId *string `location:"uri" locationName:"endpointId" 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 DescribeAppInstanceUserEndpointInput) 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 DescribeAppInstanceUserEndpointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAppInstanceUserEndpointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAppInstanceUserEndpointInput"} + if s.AppInstanceUserArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn")) + } + if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 1)) + } + if s.EndpointId == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointId")) + } + if s.EndpointId != nil && len(*s.EndpointId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EndpointId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *DescribeAppInstanceUserEndpointInput) SetAppInstanceUserArn(v string) *DescribeAppInstanceUserEndpointInput { + s.AppInstanceUserArn = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *DescribeAppInstanceUserEndpointInput) SetEndpointId(v string) *DescribeAppInstanceUserEndpointInput { + s.EndpointId = &v + return s +} + +type DescribeAppInstanceUserEndpointOutput struct { + _ struct{} `type:"structure"` + + // The full details of an AppInstanceUserEndpoint: the AppInstanceUserArn, ID, + // name, type, resource ARN, attributes, allow messages, state, and created + // and last updated timestamps. All timestamps use epoch milliseconds. + AppInstanceUserEndpoint *AppInstanceUserEndpoint `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 DescribeAppInstanceUserEndpointOutput) 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 DescribeAppInstanceUserEndpointOutput) GoString() string { + return s.String() +} + +// SetAppInstanceUserEndpoint sets the AppInstanceUserEndpoint field's value. +func (s *DescribeAppInstanceUserEndpointOutput) SetAppInstanceUserEndpoint(v *AppInstanceUserEndpoint) *DescribeAppInstanceUserEndpointOutput { + s.AppInstanceUserEndpoint = v + return s +} + type DescribeAppInstanceUserInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3238,6 +4510,134 @@ func (s *DescribeAppInstanceUserOutput) SetAppInstanceUser(v *AppInstanceUser) * return s } +// The attributes of an Endpoint. +type EndpointAttributes struct { + _ struct{} `type:"structure"` + + // The device token for the GCM, APNS, and APNS_SANDBOX endpoint types. + // + // DeviceToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EndpointAttributes's + // String and GoString methods. + // + // DeviceToken is a required field + DeviceToken *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // The VOIP device token for the APNS and APNS_SANDBOX endpoint types. + // + // VoipDeviceToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by EndpointAttributes's + // String and GoString methods. + VoipDeviceToken *string `min:"1" 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 EndpointAttributes) 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 EndpointAttributes) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EndpointAttributes) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EndpointAttributes"} + if s.DeviceToken == nil { + invalidParams.Add(request.NewErrParamRequired("DeviceToken")) + } + if s.DeviceToken != nil && len(*s.DeviceToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DeviceToken", 1)) + } + if s.VoipDeviceToken != nil && len(*s.VoipDeviceToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VoipDeviceToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeviceToken sets the DeviceToken field's value. +func (s *EndpointAttributes) SetDeviceToken(v string) *EndpointAttributes { + s.DeviceToken = &v + return s +} + +// SetVoipDeviceToken sets the VoipDeviceToken field's value. +func (s *EndpointAttributes) SetVoipDeviceToken(v string) *EndpointAttributes { + s.VoipDeviceToken = &v + return s +} + +// A read-only field that represents the state of an AppInstanceUserEndpoint. +// Supported values: +// +// * ACTIVE: The AppInstanceUserEndpoint is active and able to receive messages. +// When ACTIVE, the EndpointStatusReason remains empty. +// +// * INACTIVE: The AppInstanceUserEndpoint is inactive and can't receive +// message. When INACTIVE, the corresponding reason will be conveyed through +// EndpointStatusReason. +// +// * INVALID_DEVICE_TOKEN indicates that an AppInstanceUserEndpoint is INACTIVE +// due to invalid device token +// +// * INVALID_PINPOINT_ARN indicates that an AppInstanceUserEndpoint is INACTIVE +// due to an invalid pinpoint ARN that was input through the ResourceArn +// field. +type EndpointState struct { + _ struct{} `type:"structure"` + + // Enum that indicates the Status of an AppInstanceUserEndpoint. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"EndpointStatus"` + + // The reason for the EndpointStatus. + StatusReason *string `type:"string" enum:"EndpointStatusReason"` +} + +// 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 EndpointState) 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 EndpointState) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *EndpointState) SetStatus(v string) *EndpointState { + s.Status = &v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *EndpointState) SetStatusReason(v string) *EndpointState { + s.StatusReason = &v + return s +} + // The client is permanently forbidden from making the request. type ForbiddenException struct { _ struct{} `type:"structure"` @@ -3556,14 +4956,138 @@ func (s *ListAppInstanceAdminsOutput) SetAppInstanceAdmins(v []*AppInstanceAdmin return s } -// SetAppInstanceArn sets the AppInstanceArn field's value. -func (s *ListAppInstanceAdminsOutput) SetAppInstanceArn(v string) *ListAppInstanceAdminsOutput { - s.AppInstanceArn = &v +// SetAppInstanceArn sets the AppInstanceArn field's value. +func (s *ListAppInstanceAdminsOutput) SetAppInstanceArn(v string) *ListAppInstanceAdminsOutput { + s.AppInstanceArn = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAppInstanceAdminsOutput) SetNextToken(v string) *ListAppInstanceAdminsOutput { + s.NextToken = &v + return s +} + +type ListAppInstanceUserEndpointsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListAppInstanceUserEndpointsInput's + // String and GoString methods. + // + // AppInstanceUserArn is a required field + AppInstanceUserArn *string `location:"uri" locationName:"appInstanceUserArn" min:"5" type:"string" required:"true" sensitive:"true"` + + // The maximum number of endpoints 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 endpoints are + // returned. + // + // NextToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListAppInstanceUserEndpointsInput'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 ListAppInstanceUserEndpointsInput) 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 ListAppInstanceUserEndpointsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAppInstanceUserEndpointsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAppInstanceUserEndpointsInput"} + if s.AppInstanceUserArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn")) + } + if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *ListAppInstanceUserEndpointsInput) SetAppInstanceUserArn(v string) *ListAppInstanceUserEndpointsInput { + s.AppInstanceUserArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAppInstanceUserEndpointsInput) SetMaxResults(v int64) *ListAppInstanceUserEndpointsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAppInstanceUserEndpointsInput) SetNextToken(v string) *ListAppInstanceUserEndpointsInput { + s.NextToken = &v + return s +} + +type ListAppInstanceUserEndpointsOutput struct { + _ struct{} `type:"structure"` + + // The information for each requested AppInstanceUserEndpoint. + AppInstanceUserEndpoints []*AppInstanceUserEndpointSummary `type:"list"` + + // The token passed by previous API calls until all requested endpoints are + // returned. + // + // NextToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListAppInstanceUserEndpointsOutput'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 ListAppInstanceUserEndpointsOutput) 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 ListAppInstanceUserEndpointsOutput) GoString() string { + return s.String() +} + +// SetAppInstanceUserEndpoints sets the AppInstanceUserEndpoints field's value. +func (s *ListAppInstanceUserEndpointsOutput) SetAppInstanceUserEndpoints(v []*AppInstanceUserEndpointSummary) *ListAppInstanceUserEndpointsOutput { + s.AppInstanceUserEndpoints = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListAppInstanceAdminsOutput) SetNextToken(v string) *ListAppInstanceAdminsOutput { +func (s *ListAppInstanceUserEndpointsOutput) SetNextToken(v string) *ListAppInstanceUserEndpointsOutput { s.NextToken = &v return s } @@ -3798,6 +5322,86 @@ func (s *ListAppInstancesOutput) SetNextToken(v string) *ListAppInstancesOutput 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 +} + type PutAppInstanceRetentionSettingsInput struct { _ struct{} `type:"structure"` @@ -3906,6 +5510,210 @@ func (s *PutAppInstanceRetentionSettingsOutput) SetInitiateDeletionTimestamp(v t return s } +type RegisterAppInstanceUserEndpointInput struct { + _ struct{} `type:"structure"` + + // Boolean that controls whether the AppInstanceUserEndpoint is opted in to + // receive messages. ALL indicates the endpoint receives all messages. NONE + // indicates the endpoint receives no messages. + AllowMessages *string `type:"string" enum:"AllowMessages"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterAppInstanceUserEndpointInput's + // String and GoString methods. + // + // AppInstanceUserArn is a required field + AppInstanceUserArn *string `location:"uri" locationName:"appInstanceUserArn" min:"5" type:"string" required:"true" sensitive:"true"` + + // The idempotency token for each client request. + // + // ClientRequestToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterAppInstanceUserEndpointInput's + // String and GoString methods. + ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` + + // The attributes of an Endpoint. + // + // EndpointAttributes is a required field + EndpointAttributes *EndpointAttributes `type:"structure" required:"true"` + + // The name of the AppInstanceUserEndpoint. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterAppInstanceUserEndpointInput's + // String and GoString methods. + Name *string `type:"string" sensitive:"true"` + + // The ARN of the resource to which the endpoint belongs. + // + // ResourceArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterAppInstanceUserEndpointInput's + // String and GoString methods. + // + // ResourceArn is a required field + ResourceArn *string `min:"5" type:"string" required:"true" sensitive:"true"` + + // The type of the AppInstanceUserEndpoint. Supported types: + // + // * APNS: The mobile notification service for an Apple device. + // + // * APNS_SANDBOX: The sandbox environment of the mobile notification service + // for an Apple device. + // + // * GCM: The mobile notification service for an Android device. + // + // Populate the ResourceArn value of each type as PinpointAppArn. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"AppInstanceUserEndpointType"` +} + +// 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 RegisterAppInstanceUserEndpointInput) 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 RegisterAppInstanceUserEndpointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegisterAppInstanceUserEndpointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegisterAppInstanceUserEndpointInput"} + if s.AppInstanceUserArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn")) + } + if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5)) + } + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) + } + if s.EndpointAttributes == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointAttributes")) + } + 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.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.EndpointAttributes != nil { + if err := s.EndpointAttributes.Validate(); err != nil { + invalidParams.AddNested("EndpointAttributes", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowMessages sets the AllowMessages field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetAllowMessages(v string) *RegisterAppInstanceUserEndpointInput { + s.AllowMessages = &v + return s +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetAppInstanceUserArn(v string) *RegisterAppInstanceUserEndpointInput { + s.AppInstanceUserArn = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetClientRequestToken(v string) *RegisterAppInstanceUserEndpointInput { + s.ClientRequestToken = &v + return s +} + +// SetEndpointAttributes sets the EndpointAttributes field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetEndpointAttributes(v *EndpointAttributes) *RegisterAppInstanceUserEndpointInput { + s.EndpointAttributes = v + return s +} + +// SetName sets the Name field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetName(v string) *RegisterAppInstanceUserEndpointInput { + s.Name = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetResourceArn(v string) *RegisterAppInstanceUserEndpointInput { + s.ResourceArn = &v + return s +} + +// SetType sets the Type field's value. +func (s *RegisterAppInstanceUserEndpointInput) SetType(v string) *RegisterAppInstanceUserEndpointInput { + s.Type = &v + return s +} + +type RegisterAppInstanceUserEndpointOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterAppInstanceUserEndpointOutput's + // String and GoString methods. + AppInstanceUserArn *string `min:"5" type:"string" sensitive:"true"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RegisterAppInstanceUserEndpointOutput's + // String and GoString methods. + EndpointId *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 RegisterAppInstanceUserEndpointOutput) 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 RegisterAppInstanceUserEndpointOutput) GoString() string { + return s.String() +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *RegisterAppInstanceUserEndpointOutput) SetAppInstanceUserArn(v string) *RegisterAppInstanceUserEndpointOutput { + s.AppInstanceUserArn = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *RegisterAppInstanceUserEndpointOutput) SetEndpointId(v string) *RegisterAppInstanceUserEndpointOutput { + s.EndpointId = &v + return s +} + // The request exceeds the resource limit. type ResourceLimitExceededException struct { _ struct{} `type:"structure"` @@ -4104,11 +5912,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 @@ -4117,14 +5925,80 @@ 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 + // String and GoString methods. + // + // Value is a required field + Value *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 Tag) 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 Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The resource ARN. // - // Value is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by Tag's - // String and GoString methods. + // ResourceARN is a required field + ResourceARN *string `min:"5" type:"string" required:"true"` + + // The tag key-value pairs. // - // Value is a required field - Value *string `min:"1" type:"string" required:"true" sensitive:"true"` + // Tags is a required field + Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation. @@ -4132,7 +6006,7 @@ type Tag 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 Tag) String() string { +func (s TagResourceInput) String() string { return awsutil.Prettify(s) } @@ -4141,24 +6015,34 @@ func (s Tag) 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 Tag) GoString() string { +func (s TagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *Tag) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Tag"} - if s.Key == nil { - invalidParams.Add(request.NewErrParamRequired("Key")) +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } - if s.Key != nil && len(*s.Key) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + if s.ResourceARN != nil && len(*s.ResourceARN) < 5 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 5)) } - if s.Value == nil { - invalidParams.Add(request.NewErrParamRequired("Value")) + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) } - if s.Value != nil && len(*s.Value) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + 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 { @@ -4167,18 +6051,40 @@ func (s *Tag) Validate() error { return nil } -// SetKey sets the Key field's value. -func (s *Tag) SetKey(v string) *Tag { - s.Key = &v +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v return s } -// SetValue sets the Value field's value. -func (s *Tag) SetValue(v string) *Tag { - s.Value = &v +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v return s } +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// 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"` @@ -4311,6 +6217,94 @@ 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"` +} + +// 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 UpdateAppInstanceInput struct { _ struct{} `type:"structure"` @@ -4430,6 +6424,152 @@ func (s *UpdateAppInstanceOutput) SetAppInstanceArn(v string) *UpdateAppInstance return s } +type UpdateAppInstanceUserEndpointInput struct { + _ struct{} `type:"structure"` + + // Boolean that controls whether the AppInstanceUserEndpoint is opted in to + // receive messages. ALL indicates the endpoint will receive all messages. NONE + // indicates the endpoint will receive no messages. + AllowMessages *string `type:"string" enum:"AllowMessages"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAppInstanceUserEndpointInput's + // String and GoString methods. + // + // AppInstanceUserArn is a required field + AppInstanceUserArn *string `location:"uri" locationName:"appInstanceUserArn" min:"5" type:"string" required:"true" sensitive:"true"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAppInstanceUserEndpointInput's + // String and GoString methods. + // + // EndpointId is a required field + EndpointId *string `location:"uri" locationName:"endpointId" type:"string" required:"true" sensitive:"true"` + + // The name of the AppInstanceUserEndpoint. + // + // Name is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAppInstanceUserEndpointInput's + // String and GoString methods. + Name *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 UpdateAppInstanceUserEndpointInput) 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 UpdateAppInstanceUserEndpointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAppInstanceUserEndpointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAppInstanceUserEndpointInput"} + if s.AppInstanceUserArn == nil { + invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn")) + } + if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5)) + } + if s.EndpointId == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointId")) + } + if s.EndpointId != nil && len(*s.EndpointId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EndpointId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowMessages sets the AllowMessages field's value. +func (s *UpdateAppInstanceUserEndpointInput) SetAllowMessages(v string) *UpdateAppInstanceUserEndpointInput { + s.AllowMessages = &v + return s +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *UpdateAppInstanceUserEndpointInput) SetAppInstanceUserArn(v string) *UpdateAppInstanceUserEndpointInput { + s.AppInstanceUserArn = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *UpdateAppInstanceUserEndpointInput) SetEndpointId(v string) *UpdateAppInstanceUserEndpointInput { + s.EndpointId = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateAppInstanceUserEndpointInput) SetName(v string) *UpdateAppInstanceUserEndpointInput { + s.Name = &v + return s +} + +type UpdateAppInstanceUserEndpointOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the AppInstanceUser. + // + // AppInstanceUserArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAppInstanceUserEndpointOutput's + // String and GoString methods. + AppInstanceUserArn *string `min:"5" type:"string" sensitive:"true"` + + // The unique identifier of the AppInstanceUserEndpoint. + // + // EndpointId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateAppInstanceUserEndpointOutput's + // String and GoString methods. + EndpointId *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 UpdateAppInstanceUserEndpointOutput) 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 UpdateAppInstanceUserEndpointOutput) GoString() string { + return s.String() +} + +// SetAppInstanceUserArn sets the AppInstanceUserArn field's value. +func (s *UpdateAppInstanceUserEndpointOutput) SetAppInstanceUserArn(v string) *UpdateAppInstanceUserEndpointOutput { + s.AppInstanceUserArn = &v + return s +} + +// SetEndpointId sets the EndpointId field's value. +func (s *UpdateAppInstanceUserEndpointOutput) SetEndpointId(v string) *UpdateAppInstanceUserEndpointOutput { + s.EndpointId = &v + return s +} + type UpdateAppInstanceUserInput struct { _ struct{} `type:"structure"` @@ -4549,6 +6689,74 @@ func (s *UpdateAppInstanceUserOutput) SetAppInstanceUserArn(v string) *UpdateApp return s } +const ( + // AllowMessagesAll is a AllowMessages enum value + AllowMessagesAll = "ALL" + + // AllowMessagesNone is a AllowMessages enum value + AllowMessagesNone = "NONE" +) + +// AllowMessages_Values returns all elements of the AllowMessages enum +func AllowMessages_Values() []string { + return []string{ + AllowMessagesAll, + AllowMessagesNone, + } +} + +const ( + // AppInstanceUserEndpointTypeApns is a AppInstanceUserEndpointType enum value + AppInstanceUserEndpointTypeApns = "APNS" + + // AppInstanceUserEndpointTypeApnsSandbox is a AppInstanceUserEndpointType enum value + AppInstanceUserEndpointTypeApnsSandbox = "APNS_SANDBOX" + + // AppInstanceUserEndpointTypeGcm is a AppInstanceUserEndpointType enum value + AppInstanceUserEndpointTypeGcm = "GCM" +) + +// AppInstanceUserEndpointType_Values returns all elements of the AppInstanceUserEndpointType enum +func AppInstanceUserEndpointType_Values() []string { + return []string{ + AppInstanceUserEndpointTypeApns, + AppInstanceUserEndpointTypeApnsSandbox, + AppInstanceUserEndpointTypeGcm, + } +} + +const ( + // EndpointStatusActive is a EndpointStatus enum value + EndpointStatusActive = "ACTIVE" + + // EndpointStatusInactive is a EndpointStatus enum value + EndpointStatusInactive = "INACTIVE" +) + +// EndpointStatus_Values returns all elements of the EndpointStatus enum +func EndpointStatus_Values() []string { + return []string{ + EndpointStatusActive, + EndpointStatusInactive, + } +} + +const ( + // EndpointStatusReasonInvalidDeviceToken is a EndpointStatusReason enum value + EndpointStatusReasonInvalidDeviceToken = "INVALID_DEVICE_TOKEN" + + // EndpointStatusReasonInvalidPinpointArn is a EndpointStatusReason enum value + EndpointStatusReasonInvalidPinpointArn = "INVALID_PINPOINT_ARN" +) + +// EndpointStatusReason_Values returns all elements of the EndpointStatusReason enum +func EndpointStatusReason_Values() []string { + return []string{ + EndpointStatusReasonInvalidDeviceToken, + EndpointStatusReasonInvalidPinpointArn, + } +} + const ( // ErrorCodeBadRequest is a ErrorCode enum value ErrorCodeBadRequest = "BadRequest" diff --git a/service/chimesdkidentity/chimesdkidentityiface/interface.go b/service/chimesdkidentity/chimesdkidentityiface/interface.go index 6da6244ae3..abd3d9f6d0 100644 --- a/service/chimesdkidentity/chimesdkidentityiface/interface.go +++ b/service/chimesdkidentity/chimesdkidentityiface/interface.go @@ -84,6 +84,10 @@ type ChimeSDKIdentityAPI interface { DeleteAppInstanceUserWithContext(aws.Context, *chimesdkidentity.DeleteAppInstanceUserInput, ...request.Option) (*chimesdkidentity.DeleteAppInstanceUserOutput, error) DeleteAppInstanceUserRequest(*chimesdkidentity.DeleteAppInstanceUserInput) (*request.Request, *chimesdkidentity.DeleteAppInstanceUserOutput) + DeregisterAppInstanceUserEndpoint(*chimesdkidentity.DeregisterAppInstanceUserEndpointInput) (*chimesdkidentity.DeregisterAppInstanceUserEndpointOutput, error) + DeregisterAppInstanceUserEndpointWithContext(aws.Context, *chimesdkidentity.DeregisterAppInstanceUserEndpointInput, ...request.Option) (*chimesdkidentity.DeregisterAppInstanceUserEndpointOutput, error) + DeregisterAppInstanceUserEndpointRequest(*chimesdkidentity.DeregisterAppInstanceUserEndpointInput) (*request.Request, *chimesdkidentity.DeregisterAppInstanceUserEndpointOutput) + DescribeAppInstance(*chimesdkidentity.DescribeAppInstanceInput) (*chimesdkidentity.DescribeAppInstanceOutput, error) DescribeAppInstanceWithContext(aws.Context, *chimesdkidentity.DescribeAppInstanceInput, ...request.Option) (*chimesdkidentity.DescribeAppInstanceOutput, error) DescribeAppInstanceRequest(*chimesdkidentity.DescribeAppInstanceInput) (*request.Request, *chimesdkidentity.DescribeAppInstanceOutput) @@ -96,6 +100,10 @@ type ChimeSDKIdentityAPI interface { DescribeAppInstanceUserWithContext(aws.Context, *chimesdkidentity.DescribeAppInstanceUserInput, ...request.Option) (*chimesdkidentity.DescribeAppInstanceUserOutput, error) DescribeAppInstanceUserRequest(*chimesdkidentity.DescribeAppInstanceUserInput) (*request.Request, *chimesdkidentity.DescribeAppInstanceUserOutput) + DescribeAppInstanceUserEndpoint(*chimesdkidentity.DescribeAppInstanceUserEndpointInput) (*chimesdkidentity.DescribeAppInstanceUserEndpointOutput, error) + DescribeAppInstanceUserEndpointWithContext(aws.Context, *chimesdkidentity.DescribeAppInstanceUserEndpointInput, ...request.Option) (*chimesdkidentity.DescribeAppInstanceUserEndpointOutput, error) + DescribeAppInstanceUserEndpointRequest(*chimesdkidentity.DescribeAppInstanceUserEndpointInput) (*request.Request, *chimesdkidentity.DescribeAppInstanceUserEndpointOutput) + GetAppInstanceRetentionSettings(*chimesdkidentity.GetAppInstanceRetentionSettingsInput) (*chimesdkidentity.GetAppInstanceRetentionSettingsOutput, error) GetAppInstanceRetentionSettingsWithContext(aws.Context, *chimesdkidentity.GetAppInstanceRetentionSettingsInput, ...request.Option) (*chimesdkidentity.GetAppInstanceRetentionSettingsOutput, error) GetAppInstanceRetentionSettingsRequest(*chimesdkidentity.GetAppInstanceRetentionSettingsInput) (*request.Request, *chimesdkidentity.GetAppInstanceRetentionSettingsOutput) @@ -107,6 +115,13 @@ type ChimeSDKIdentityAPI interface { ListAppInstanceAdminsPages(*chimesdkidentity.ListAppInstanceAdminsInput, func(*chimesdkidentity.ListAppInstanceAdminsOutput, bool) bool) error ListAppInstanceAdminsPagesWithContext(aws.Context, *chimesdkidentity.ListAppInstanceAdminsInput, func(*chimesdkidentity.ListAppInstanceAdminsOutput, bool) bool, ...request.Option) error + ListAppInstanceUserEndpoints(*chimesdkidentity.ListAppInstanceUserEndpointsInput) (*chimesdkidentity.ListAppInstanceUserEndpointsOutput, error) + ListAppInstanceUserEndpointsWithContext(aws.Context, *chimesdkidentity.ListAppInstanceUserEndpointsInput, ...request.Option) (*chimesdkidentity.ListAppInstanceUserEndpointsOutput, error) + ListAppInstanceUserEndpointsRequest(*chimesdkidentity.ListAppInstanceUserEndpointsInput) (*request.Request, *chimesdkidentity.ListAppInstanceUserEndpointsOutput) + + ListAppInstanceUserEndpointsPages(*chimesdkidentity.ListAppInstanceUserEndpointsInput, func(*chimesdkidentity.ListAppInstanceUserEndpointsOutput, bool) bool) error + ListAppInstanceUserEndpointsPagesWithContext(aws.Context, *chimesdkidentity.ListAppInstanceUserEndpointsInput, func(*chimesdkidentity.ListAppInstanceUserEndpointsOutput, bool) bool, ...request.Option) error + ListAppInstanceUsers(*chimesdkidentity.ListAppInstanceUsersInput) (*chimesdkidentity.ListAppInstanceUsersOutput, error) ListAppInstanceUsersWithContext(aws.Context, *chimesdkidentity.ListAppInstanceUsersInput, ...request.Option) (*chimesdkidentity.ListAppInstanceUsersOutput, error) ListAppInstanceUsersRequest(*chimesdkidentity.ListAppInstanceUsersInput) (*request.Request, *chimesdkidentity.ListAppInstanceUsersOutput) @@ -121,10 +136,26 @@ type ChimeSDKIdentityAPI interface { ListAppInstancesPages(*chimesdkidentity.ListAppInstancesInput, func(*chimesdkidentity.ListAppInstancesOutput, bool) bool) error ListAppInstancesPagesWithContext(aws.Context, *chimesdkidentity.ListAppInstancesInput, func(*chimesdkidentity.ListAppInstancesOutput, bool) bool, ...request.Option) error + ListTagsForResource(*chimesdkidentity.ListTagsForResourceInput) (*chimesdkidentity.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *chimesdkidentity.ListTagsForResourceInput, ...request.Option) (*chimesdkidentity.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*chimesdkidentity.ListTagsForResourceInput) (*request.Request, *chimesdkidentity.ListTagsForResourceOutput) + PutAppInstanceRetentionSettings(*chimesdkidentity.PutAppInstanceRetentionSettingsInput) (*chimesdkidentity.PutAppInstanceRetentionSettingsOutput, error) PutAppInstanceRetentionSettingsWithContext(aws.Context, *chimesdkidentity.PutAppInstanceRetentionSettingsInput, ...request.Option) (*chimesdkidentity.PutAppInstanceRetentionSettingsOutput, error) PutAppInstanceRetentionSettingsRequest(*chimesdkidentity.PutAppInstanceRetentionSettingsInput) (*request.Request, *chimesdkidentity.PutAppInstanceRetentionSettingsOutput) + RegisterAppInstanceUserEndpoint(*chimesdkidentity.RegisterAppInstanceUserEndpointInput) (*chimesdkidentity.RegisterAppInstanceUserEndpointOutput, error) + RegisterAppInstanceUserEndpointWithContext(aws.Context, *chimesdkidentity.RegisterAppInstanceUserEndpointInput, ...request.Option) (*chimesdkidentity.RegisterAppInstanceUserEndpointOutput, error) + RegisterAppInstanceUserEndpointRequest(*chimesdkidentity.RegisterAppInstanceUserEndpointInput) (*request.Request, *chimesdkidentity.RegisterAppInstanceUserEndpointOutput) + + TagResource(*chimesdkidentity.TagResourceInput) (*chimesdkidentity.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *chimesdkidentity.TagResourceInput, ...request.Option) (*chimesdkidentity.TagResourceOutput, error) + TagResourceRequest(*chimesdkidentity.TagResourceInput) (*request.Request, *chimesdkidentity.TagResourceOutput) + + UntagResource(*chimesdkidentity.UntagResourceInput) (*chimesdkidentity.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *chimesdkidentity.UntagResourceInput, ...request.Option) (*chimesdkidentity.UntagResourceOutput, error) + UntagResourceRequest(*chimesdkidentity.UntagResourceInput) (*request.Request, *chimesdkidentity.UntagResourceOutput) + UpdateAppInstance(*chimesdkidentity.UpdateAppInstanceInput) (*chimesdkidentity.UpdateAppInstanceOutput, error) UpdateAppInstanceWithContext(aws.Context, *chimesdkidentity.UpdateAppInstanceInput, ...request.Option) (*chimesdkidentity.UpdateAppInstanceOutput, error) UpdateAppInstanceRequest(*chimesdkidentity.UpdateAppInstanceInput) (*request.Request, *chimesdkidentity.UpdateAppInstanceOutput) @@ -132,6 +163,10 @@ type ChimeSDKIdentityAPI interface { UpdateAppInstanceUser(*chimesdkidentity.UpdateAppInstanceUserInput) (*chimesdkidentity.UpdateAppInstanceUserOutput, error) UpdateAppInstanceUserWithContext(aws.Context, *chimesdkidentity.UpdateAppInstanceUserInput, ...request.Option) (*chimesdkidentity.UpdateAppInstanceUserOutput, error) UpdateAppInstanceUserRequest(*chimesdkidentity.UpdateAppInstanceUserInput) (*request.Request, *chimesdkidentity.UpdateAppInstanceUserOutput) + + UpdateAppInstanceUserEndpoint(*chimesdkidentity.UpdateAppInstanceUserEndpointInput) (*chimesdkidentity.UpdateAppInstanceUserEndpointOutput, error) + UpdateAppInstanceUserEndpointWithContext(aws.Context, *chimesdkidentity.UpdateAppInstanceUserEndpointInput, ...request.Option) (*chimesdkidentity.UpdateAppInstanceUserEndpointOutput, error) + UpdateAppInstanceUserEndpointRequest(*chimesdkidentity.UpdateAppInstanceUserEndpointInput) (*request.Request, *chimesdkidentity.UpdateAppInstanceUserEndpointOutput) } var _ ChimeSDKIdentityAPI = (*chimesdkidentity.ChimeSDKIdentity)(nil) diff --git a/service/chimesdkmessaging/api.go b/service/chimesdkmessaging/api.go index 0f27ba7936..660519ff91 100644 --- a/service/chimesdkmessaging/api.go +++ b/service/chimesdkmessaging/api.go @@ -699,8 +699,8 @@ func (c *ChimeSDKMessaging) CreateChannelMembershipRequest(input *CreateChannelM // CreateChannelMembership API operation for Amazon Chime SDK Messaging. // -// Adds a user to a channel. The InvitedBy response field is derived from the -// request header. A channel member can: +// Adds a user to a channel. The InvitedBy field in ChannelMembership is derived +// from the request header. A channel member can: // // * List messages // @@ -2286,6 +2286,105 @@ func (c *ChimeSDKMessaging) DisassociateChannelFlowWithContext(ctx aws.Context, return out, req.Send() } +const opGetChannelMembershipPreferences = "GetChannelMembershipPreferences" + +// GetChannelMembershipPreferencesRequest generates a "aws/request.Request" representing the +// client's request for the GetChannelMembershipPreferences 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 GetChannelMembershipPreferences for more information on using the GetChannelMembershipPreferences +// 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 GetChannelMembershipPreferencesRequest method. +// req, resp := client.GetChannelMembershipPreferencesRequest(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/GetChannelMembershipPreferences +func (c *ChimeSDKMessaging) GetChannelMembershipPreferencesRequest(input *GetChannelMembershipPreferencesInput) (req *request.Request, output *GetChannelMembershipPreferencesOutput) { + op := &request.Operation{ + Name: opGetChannelMembershipPreferences, + HTTPMethod: "GET", + HTTPPath: "/channels/{channelArn}/memberships/{memberArn}/preferences", + } + + if input == nil { + input = &GetChannelMembershipPreferencesInput{} + } + + output = &GetChannelMembershipPreferencesOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetChannelMembershipPreferences API operation for Amazon Chime SDK Messaging. +// +// Gets the membership preferences of an AppInstanceUser for the specified channel. +// The AppInstanceUser must be a member of the channel. Only the AppInstanceUser +// who owns the membership can retrieve preferences. Users in the AppInstanceAdmin +// and channel moderator roles can't retrieve preferences for other users. Banned +// users can't retrieve membership preferences for the channel from which they +// are banned. +// +// 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 GetChannelMembershipPreferences for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// The input parameters don't match the service's restrictions. +// +// * 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/GetChannelMembershipPreferences +func (c *ChimeSDKMessaging) GetChannelMembershipPreferences(input *GetChannelMembershipPreferencesInput) (*GetChannelMembershipPreferencesOutput, error) { + req, out := c.GetChannelMembershipPreferencesRequest(input) + return out, req.Send() +} + +// GetChannelMembershipPreferencesWithContext is the same as GetChannelMembershipPreferences with the addition of +// the ability to pass a context and additional request options. +// +// See GetChannelMembershipPreferences 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) GetChannelMembershipPreferencesWithContext(ctx aws.Context, input *GetChannelMembershipPreferencesInput, opts ...request.Option) (*GetChannelMembershipPreferencesOutput, error) { + req, out := c.GetChannelMembershipPreferencesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetChannelMessage = "GetChannelMessage" // GetChannelMessageRequest generates a "aws/request.Request" representing the @@ -2963,6 +3062,10 @@ func (c *ChimeSDKMessaging) ListChannelMembershipsRequest(input *ListChannelMemb // 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. // +// If you want to list the channels to which a specific app instance user belongs, +// see the ListChannelMembershipsForAppInstanceUser (https://docs.aws.amazon.com/chime/latest/APIReference/API_messaging-chime_ListChannelMembershipsForAppInstanceUser.html) +// 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. @@ -4100,6 +4203,109 @@ func (c *ChimeSDKMessaging) ListTagsForResourceWithContext(ctx aws.Context, inpu return out, req.Send() } +const opPutChannelMembershipPreferences = "PutChannelMembershipPreferences" + +// PutChannelMembershipPreferencesRequest generates a "aws/request.Request" representing the +// client's request for the PutChannelMembershipPreferences 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 PutChannelMembershipPreferences for more information on using the PutChannelMembershipPreferences +// 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 PutChannelMembershipPreferencesRequest method. +// req, resp := client.PutChannelMembershipPreferencesRequest(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/PutChannelMembershipPreferences +func (c *ChimeSDKMessaging) PutChannelMembershipPreferencesRequest(input *PutChannelMembershipPreferencesInput) (req *request.Request, output *PutChannelMembershipPreferencesOutput) { + op := &request.Operation{ + Name: opPutChannelMembershipPreferences, + HTTPMethod: "PUT", + HTTPPath: "/channels/{channelArn}/memberships/{memberArn}/preferences", + } + + if input == nil { + input = &PutChannelMembershipPreferencesInput{} + } + + output = &PutChannelMembershipPreferencesOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutChannelMembershipPreferences API operation for Amazon Chime SDK Messaging. +// +// Sets the membership preferences of an AppInstanceUser for the specified channel. +// The AppInstanceUser must be a member of the channel. Only the AppInstanceUser +// who owns the membership can set preferences. Users in the AppInstanceAdmin +// and channel moderator roles can't set preferences for other users. Banned +// users can't set membership preferences for the channel from which they are +// banned. +// +// 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 PutChannelMembershipPreferences 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. +// +// * 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/PutChannelMembershipPreferences +func (c *ChimeSDKMessaging) PutChannelMembershipPreferences(input *PutChannelMembershipPreferencesInput) (*PutChannelMembershipPreferencesOutput, error) { + req, out := c.PutChannelMembershipPreferencesRequest(input) + return out, req.Send() +} + +// PutChannelMembershipPreferencesWithContext is the same as PutChannelMembershipPreferences with the addition of +// the ability to pass a context and additional request options. +// +// See PutChannelMembershipPreferences 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) PutChannelMembershipPreferencesWithContext(ctx aws.Context, input *PutChannelMembershipPreferencesInput, opts ...request.Option) (*PutChannelMembershipPreferencesOutput, error) { + req, out := c.PutChannelMembershipPreferencesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opRedactChannelMessage = "RedactChannelMessage" // RedactChannelMessageRequest generates a "aws/request.Request" representing the @@ -5181,7 +5387,7 @@ type BatchCreateChannelMembershipError struct { // The error message. ErrorMessage *string `type:"string"` - // The ARN of the member that the service couldn't add. + // The AppInstanceUserArn of the member that the service couldn't add. MemberArn *string `min:"5" type:"string"` } @@ -5234,7 +5440,7 @@ type BatchCreateChannelMembershipInput struct { // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` - // The ARNs of the members you want to add to the channel. + // The AppInstanceUserArns of the members you want to add to the channel. // // MemberArns is a required field MemberArns []*string `min:"1" type:"list" required:"true"` @@ -6020,6 +6226,53 @@ func (s *ChannelMembershipForAppInstanceUserSummary) SetChannelSummary(v *Channe return s } +// The channel membership preferences for an AppInstanceUser. +type ChannelMembershipPreferences struct { + _ struct{} `type:"structure"` + + // The push notification configuration of a message. + PushNotifications *PushNotificationPreferences `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 ChannelMembershipPreferences) 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 ChannelMembershipPreferences) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChannelMembershipPreferences) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChannelMembershipPreferences"} + if s.PushNotifications != nil { + if err := s.PushNotifications.Validate(); err != nil { + invalidParams.AddNested("PushNotifications", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPushNotifications sets the PushNotifications field's value. +func (s *ChannelMembershipPreferences) SetPushNotifications(v *PushNotificationPreferences) *ChannelMembershipPreferences { + s.PushNotifications = v + return s +} + // Summary of the details of a ChannelMembership. type ChannelMembershipSummary struct { _ struct{} `type:"structure"` @@ -6075,6 +6328,10 @@ type ChannelMessage struct { // The time at which a message was updated. LastUpdatedTimestamp *time.Time `type:"timestamp"` + // The attributes for the message, used for message filtering along with a FilterRule + // defined in the PushNotificationPreferences. + MessageAttributes map[string]*MessageAttributeValue `type:"map"` + // The ID of a message. MessageId *string `min:"1" type:"string"` @@ -6149,6 +6406,12 @@ func (s *ChannelMessage) SetLastUpdatedTimestamp(v time.Time) *ChannelMessage { return s } +// SetMessageAttributes sets the MessageAttributes field's value. +func (s *ChannelMessage) SetMessageAttributes(v map[string]*MessageAttributeValue) *ChannelMessage { + s.MessageAttributes = v + return s +} + // SetMessageId sets the MessageId field's value. func (s *ChannelMessage) SetMessageId(v string) *ChannelMessage { s.MessageId = &v @@ -6331,6 +6594,9 @@ type ChannelMessageSummary struct { // The time at which a message was last updated. LastUpdatedTimestamp *time.Time `type:"timestamp"` + // The message attribues listed in a the summary of a channel message. + MessageAttributes map[string]*MessageAttributeValue `type:"map"` + // The ID of the message. MessageId *string `min:"1" type:"string"` @@ -6398,6 +6664,12 @@ func (s *ChannelMessageSummary) SetLastUpdatedTimestamp(v time.Time) *ChannelMes return s } +// SetMessageAttributes sets the MessageAttributes field's value. +func (s *ChannelMessageSummary) SetMessageAttributes(v map[string]*MessageAttributeValue) *ChannelMessageSummary { + s.MessageAttributes = v + return s +} + // SetMessageId sets the MessageId field's value. func (s *ChannelMessageSummary) SetMessageId(v string) *ChannelMessageSummary { s.MessageId = &v @@ -6722,7 +6994,7 @@ type CreateChannelBanInput struct { // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` - // The ARN of the member being banned. + // The AppInstanceUserArn of the member being banned. // // MemberArn is a required field MemberArn *string `min:"5" type:"string" required:"true"` @@ -7177,7 +7449,7 @@ type CreateChannelMembershipInput struct { // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` - // The ARN of the member you want to add to the channel. + // The AppInstanceUserArn of the member you want to add to the channel. // // MemberArn is a required field MemberArn *string `min:"5" type:"string" required:"true"` @@ -7312,7 +7584,7 @@ type CreateChannelModeratorInput struct { // ChannelArn is a required field ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` - // The ARN of the moderator. + // The AppInstanceUserArn of the moderator. // // ChannelModeratorArn is a required field ChannelModeratorArn *string `min:"5" type:"string" required:"true"` @@ -7713,7 +7985,7 @@ type DeleteChannelMembershipInput struct { // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` - // The ARN of the member that you're removing from the channel. + // The AppInstanceUserArn of the member that you're removing from the channel. // // MemberArn is a required field MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"` @@ -7918,7 +8190,7 @@ type DeleteChannelModeratorInput struct { // ChannelArn is a required field ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` - // The ARN of the moderator being deleted. + // The AppInstanceUserArn of the moderator being deleted. // // ChannelModeratorArn is a required field ChannelModeratorArn *string `location:"uri" locationName:"channelModeratorArn" min:"5" type:"string" required:"true"` @@ -8050,7 +8322,7 @@ type DescribeChannelBanInput struct { // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` - // The ARN of the member being banned. + // The AppInstanceUserArn of the member being banned. // // MemberArn is a required field MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"` @@ -8424,7 +8696,7 @@ type DescribeChannelMembershipInput struct { // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` - // The ARN of the member. + // The AppInstanceUserArn of the member. // // MemberArn is a required field MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"` @@ -8647,7 +8919,7 @@ type DescribeChannelModeratorInput struct { // ChannelArn is a required field ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` - // The ARN of the channel moderator. + // The AppInstanceUserArn of the channel moderator. // // ChannelModeratorArn is a required field ChannelModeratorArn *string `location:"uri" locationName:"channelModeratorArn" min:"5" type:"string" required:"true"` @@ -8955,7 +9227,7 @@ func (s *ForbiddenException) RequestID() string { return s.RespMetadata.RequestID } -type GetChannelMessageInput struct { +type GetChannelMembershipPreferencesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The ARN of the channel. @@ -8963,15 +9235,15 @@ type GetChannelMessageInput struct { // ChannelArn is a required field ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"` - // The AppInstanceUserArn of the user that makes the API call. + // 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. + // The AppInstanceUserArn of the member retrieving the preferences. // - // MessageId is a required field - MessageId *string `location:"uri" locationName:"messageId" min:"1" type:"string" required:"true"` + // MemberArn is a required field + MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"` } // String returns the string representation. @@ -8979,7 +9251,7 @@ type GetChannelMessageInput 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 GetChannelMessageInput) String() string { +func (s GetChannelMembershipPreferencesInput) String() string { return awsutil.Prettify(s) } @@ -8988,13 +9260,13 @@ func (s GetChannelMessageInput) 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 GetChannelMessageInput) GoString() string { +func (s GetChannelMembershipPreferencesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetChannelMessageInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetChannelMessageInput"} +func (s *GetChannelMembershipPreferencesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetChannelMembershipPreferencesInput"} if s.ChannelArn == nil { invalidParams.Add(request.NewErrParamRequired("ChannelArn")) } @@ -9007,11 +9279,11 @@ func (s *GetChannelMessageInput) Validate() error { 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.MemberArn == nil { + invalidParams.Add(request.NewErrParamRequired("MemberArn")) } - if s.MessageId != nil && len(*s.MessageId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MessageId", 1)) + if s.MemberArn != nil && len(*s.MemberArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5)) } if invalidParams.Len() > 0 { @@ -9021,28 +9293,34 @@ func (s *GetChannelMessageInput) Validate() error { } // SetChannelArn sets the ChannelArn field's value. -func (s *GetChannelMessageInput) SetChannelArn(v string) *GetChannelMessageInput { +func (s *GetChannelMembershipPreferencesInput) SetChannelArn(v string) *GetChannelMembershipPreferencesInput { s.ChannelArn = &v return s } // SetChimeBearer sets the ChimeBearer field's value. -func (s *GetChannelMessageInput) SetChimeBearer(v string) *GetChannelMessageInput { +func (s *GetChannelMembershipPreferencesInput) SetChimeBearer(v string) *GetChannelMembershipPreferencesInput { s.ChimeBearer = &v return s } -// SetMessageId sets the MessageId field's value. -func (s *GetChannelMessageInput) SetMessageId(v string) *GetChannelMessageInput { - s.MessageId = &v +// SetMemberArn sets the MemberArn field's value. +func (s *GetChannelMembershipPreferencesInput) SetMemberArn(v string) *GetChannelMembershipPreferencesInput { + s.MemberArn = &v return s } -type GetChannelMessageOutput struct { +type GetChannelMembershipPreferencesOutput struct { _ struct{} `type:"structure"` - // The details of and content in the message. - ChannelMessage *ChannelMessage `type:"structure"` + // The ARN of the channel. + ChannelArn *string `min:"5" type:"string"` + + // The details of a user. + Member *Identity `type:"structure"` + + // The channel membership preferences for an AppInstanceUser . + Preferences *ChannelMembershipPreferences `type:"structure"` } // String returns the string representation. @@ -9050,7 +9328,7 @@ type GetChannelMessageOutput 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 GetChannelMessageOutput) String() string { +func (s GetChannelMembershipPreferencesOutput) String() string { return awsutil.Prettify(s) } @@ -9059,25 +9337,37 @@ func (s GetChannelMessageOutput) 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 GetChannelMessageOutput) GoString() string { +func (s GetChannelMembershipPreferencesOutput) GoString() string { return s.String() } -// SetChannelMessage sets the ChannelMessage field's value. -func (s *GetChannelMessageOutput) SetChannelMessage(v *ChannelMessage) *GetChannelMessageOutput { - s.ChannelMessage = v +// SetChannelArn sets the ChannelArn field's value. +func (s *GetChannelMembershipPreferencesOutput) SetChannelArn(v string) *GetChannelMembershipPreferencesOutput { + s.ChannelArn = &v return s } -type GetChannelMessageStatusInput struct { +// SetMember sets the Member field's value. +func (s *GetChannelMembershipPreferencesOutput) SetMember(v *Identity) *GetChannelMembershipPreferencesOutput { + s.Member = v + return s +} + +// SetPreferences sets the Preferences field's value. +func (s *GetChannelMembershipPreferencesOutput) SetPreferences(v *ChannelMembershipPreferences) *GetChannelMembershipPreferencesOutput { + s.Preferences = v + return s +} + +type GetChannelMessageInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ARN of the channel + // 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. + // The AppInstanceUserArn of the user that makes the API call. // // ChimeBearer is a required field ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"` @@ -9093,7 +9383,7 @@ type GetChannelMessageStatusInput 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 GetChannelMessageStatusInput) String() string { +func (s GetChannelMessageInput) String() string { return awsutil.Prettify(s) } @@ -9102,13 +9392,13 @@ func (s GetChannelMessageStatusInput) 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 GetChannelMessageStatusInput) GoString() string { +func (s GetChannelMessageInput) 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"} +func (s *GetChannelMessageInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetChannelMessageInput"} if s.ChannelArn == nil { invalidParams.Add(request.NewErrParamRequired("ChannelArn")) } @@ -9135,13 +9425,127 @@ func (s *GetChannelMessageStatusInput) Validate() error { } // SetChannelArn sets the ChannelArn field's value. -func (s *GetChannelMessageStatusInput) SetChannelArn(v string) *GetChannelMessageStatusInput { +func (s *GetChannelMessageInput) SetChannelArn(v string) *GetChannelMessageInput { s.ChannelArn = &v return s } // SetChimeBearer sets the ChimeBearer field's value. -func (s *GetChannelMessageStatusInput) SetChimeBearer(v string) *GetChannelMessageStatusInput { +func (s *GetChannelMessageInput) SetChimeBearer(v string) *GetChannelMessageInput { + s.ChimeBearer = &v + return s +} + +// SetMessageId sets the MessageId field's value. +func (s *GetChannelMessageInput) SetMessageId(v string) *GetChannelMessageInput { + s.MessageId = &v + return s +} + +type GetChannelMessageOutput struct { + _ struct{} `type:"structure"` + + // The details of and content in the message. + ChannelMessage *ChannelMessage `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 GetChannelMessageOutput) 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 GetChannelMessageOutput) GoString() string { + return s.String() +} + +// SetChannelMessage sets the ChannelMessage field's value. +func (s *GetChannelMessageOutput) SetChannelMessage(v *ChannelMessage) *GetChannelMessageOutput { + s.ChannelMessage = v + 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 } @@ -10691,6 +11095,38 @@ func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput return s } +// A list of message attribute values. +type MessageAttributeValue struct { + _ struct{} `type:"structure"` + + // The strings in a message attribute value. + StringValues []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MessageAttributeValue) 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 MessageAttributeValue) GoString() string { + return s.String() +} + +// SetStringValues sets the StringValues field's value. +func (s *MessageAttributeValue) SetStringValues(v []*string) *MessageAttributeValue { + s.StringValues = v + return s +} + // The websocket endpoint used to connect to Amazon Chime SDK messaging. type MessagingSessionEndpoint struct { _ struct{} `type:"structure"` @@ -10806,10 +11242,13 @@ type Processor struct { // 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. + // Determines whether to continue with message processing or stop it in cases + // where communication with a processor fails. If a processor has a fallback + // action of ABORT and communication with it fails, the processor sets the message + // status to FAILED and does not send the message to any recipients. Note that + // if the last processor in the channel flow sequence has a fallback action + // of CONTINUE and communication with the processor fails, then the message + // is considered processed and sent to recipients of the channel. // // FallbackAction is a required field FallbackAction *string `type:"string" required:"true" enum:"FallbackAction"` @@ -10951,6 +11390,307 @@ func (s *ProcessorConfiguration) SetLambda(v *LambdaConfiguration) *ProcessorCon return s } +// The push notification configuration of the message. +type PushNotificationConfiguration struct { + _ struct{} `type:"structure"` + + // The body of the push notification. + // + // Body is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PushNotificationConfiguration's + // String and GoString methods. + // + // Body is a required field + Body *string `type:"string" required:"true" sensitive:"true"` + + // The title of the push notification. + // + // Title is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PushNotificationConfiguration's + // String and GoString methods. + // + // Title is a required field + Title *string `type:"string" required:"true" sensitive:"true"` + + // Enum value that indicates the type of the push notification for a message. + // DEFAULT: Normal mobile push notification. VOIP: VOIP mobile push notification. + // + // Type is a required field + Type *string `type:"string" required:"true" enum:"PushNotificationType"` +} + +// 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 PushNotificationConfiguration) 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 PushNotificationConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PushNotificationConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PushNotificationConfiguration"} + if s.Body == nil { + invalidParams.Add(request.NewErrParamRequired("Body")) + } + if s.Title == nil { + invalidParams.Add(request.NewErrParamRequired("Title")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBody sets the Body field's value. +func (s *PushNotificationConfiguration) SetBody(v string) *PushNotificationConfiguration { + s.Body = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *PushNotificationConfiguration) SetTitle(v string) *PushNotificationConfiguration { + s.Title = &v + return s +} + +// SetType sets the Type field's value. +func (s *PushNotificationConfiguration) SetType(v string) *PushNotificationConfiguration { + s.Type = &v + return s +} + +// The channel membership preferences for push notification. +type PushNotificationPreferences struct { + _ struct{} `type:"structure"` + + // Enum value that indicates which push notifications to send to the requested + // member of a channel. ALL sends all push notifications, NONE sends no push + // notifications, FILTERED sends only filtered push notifications. + // + // AllowNotifications is a required field + AllowNotifications *string `type:"string" required:"true" enum:"AllowNotifications"` + + // The simple JSON object used to send a subset of a push notification to the + // requsted member. + // + // FilterRule is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PushNotificationPreferences's + // String and GoString methods. + FilterRule *string `min:"1" 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 PushNotificationPreferences) 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 PushNotificationPreferences) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PushNotificationPreferences) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PushNotificationPreferences"} + if s.AllowNotifications == nil { + invalidParams.Add(request.NewErrParamRequired("AllowNotifications")) + } + if s.FilterRule != nil && len(*s.FilterRule) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FilterRule", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowNotifications sets the AllowNotifications field's value. +func (s *PushNotificationPreferences) SetAllowNotifications(v string) *PushNotificationPreferences { + s.AllowNotifications = &v + return s +} + +// SetFilterRule sets the FilterRule field's value. +func (s *PushNotificationPreferences) SetFilterRule(v string) *PushNotificationPreferences { + s.FilterRule = &v + return s +} + +type PutChannelMembershipPreferencesInput 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 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 AppInstanceUserArn of the member setting the preferences. + // + // MemberArn is a required field + MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"` + + // The channel membership preferences of an AppInstanceUser . + // + // Preferences is a required field + Preferences *ChannelMembershipPreferences `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 PutChannelMembershipPreferencesInput) 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 PutChannelMembershipPreferencesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutChannelMembershipPreferencesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutChannelMembershipPreferencesInput"} + 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.MemberArn == nil { + invalidParams.Add(request.NewErrParamRequired("MemberArn")) + } + if s.MemberArn != nil && len(*s.MemberArn) < 5 { + invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5)) + } + if s.Preferences == nil { + invalidParams.Add(request.NewErrParamRequired("Preferences")) + } + if s.Preferences != nil { + if err := s.Preferences.Validate(); err != nil { + invalidParams.AddNested("Preferences", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *PutChannelMembershipPreferencesInput) SetChannelArn(v string) *PutChannelMembershipPreferencesInput { + s.ChannelArn = &v + return s +} + +// SetChimeBearer sets the ChimeBearer field's value. +func (s *PutChannelMembershipPreferencesInput) SetChimeBearer(v string) *PutChannelMembershipPreferencesInput { + s.ChimeBearer = &v + return s +} + +// SetMemberArn sets the MemberArn field's value. +func (s *PutChannelMembershipPreferencesInput) SetMemberArn(v string) *PutChannelMembershipPreferencesInput { + s.MemberArn = &v + return s +} + +// SetPreferences sets the Preferences field's value. +func (s *PutChannelMembershipPreferencesInput) SetPreferences(v *ChannelMembershipPreferences) *PutChannelMembershipPreferencesInput { + s.Preferences = v + return s +} + +type PutChannelMembershipPreferencesOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the channel. + ChannelArn *string `min:"5" type:"string"` + + // The details of a user. + Member *Identity `type:"structure"` + + // The ARN and metadata of the member being added. + Preferences *ChannelMembershipPreferences `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 PutChannelMembershipPreferencesOutput) 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 PutChannelMembershipPreferencesOutput) GoString() string { + return s.String() +} + +// SetChannelArn sets the ChannelArn field's value. +func (s *PutChannelMembershipPreferencesOutput) SetChannelArn(v string) *PutChannelMembershipPreferencesOutput { + s.ChannelArn = &v + return s +} + +// SetMember sets the Member field's value. +func (s *PutChannelMembershipPreferencesOutput) SetMember(v *Identity) *PutChannelMembershipPreferencesOutput { + s.Member = v + return s +} + +// SetPreferences sets the Preferences field's value. +func (s *PutChannelMembershipPreferencesOutput) SetPreferences(v *ChannelMembershipPreferences) *PutChannelMembershipPreferencesOutput { + s.Preferences = v + return s +} + type RedactChannelMessageInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -11169,6 +11909,10 @@ type SendChannelMessageInput struct { // Content is a required field Content *string `min:"1" type:"string" required:"true" sensitive:"true"` + // The attributes for the message, used for message filtering along with a FilterRule + // defined in the PushNotificationPreferences. + MessageAttributes map[string]*MessageAttributeValue `type:"map"` + // The optional metadata for each message. // // Metadata is a sensitive parameter and its value will be @@ -11181,6 +11925,9 @@ type SendChannelMessageInput struct { // Persistence is a required field Persistence *string `type:"string" required:"true" enum:"ChannelMessagePersistenceType"` + // The push notification configuration of the message. + PushNotification *PushNotificationConfiguration `type:"structure"` + // The type of message, STANDARD or CONTROL. // // Type is a required field @@ -11235,6 +11982,11 @@ func (s *SendChannelMessageInput) Validate() error { if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } + if s.PushNotification != nil { + if err := s.PushNotification.Validate(); err != nil { + invalidParams.AddNested("PushNotification", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -11266,6 +12018,12 @@ func (s *SendChannelMessageInput) SetContent(v string) *SendChannelMessageInput return s } +// SetMessageAttributes sets the MessageAttributes field's value. +func (s *SendChannelMessageInput) SetMessageAttributes(v map[string]*MessageAttributeValue) *SendChannelMessageInput { + s.MessageAttributes = v + return s +} + // SetMetadata sets the Metadata field's value. func (s *SendChannelMessageInput) SetMetadata(v string) *SendChannelMessageInput { s.Metadata = &v @@ -11278,6 +12036,12 @@ func (s *SendChannelMessageInput) SetPersistence(v string) *SendChannelMessageIn return s } +// SetPushNotification sets the PushNotification field's value. +func (s *SendChannelMessageInput) SetPushNotification(v *PushNotificationConfiguration) *SendChannelMessageInput { + s.PushNotification = v + return s +} + // SetType sets the Type field's value. func (s *SendChannelMessageInput) SetType(v string) *SendChannelMessageInput { s.Type = &v @@ -12386,6 +13150,26 @@ func (s *UpdateChannelReadMarkerOutput) SetChannelArn(v string) *UpdateChannelRe return s } +const ( + // AllowNotificationsAll is a AllowNotifications enum value + AllowNotificationsAll = "ALL" + + // AllowNotificationsNone is a AllowNotifications enum value + AllowNotificationsNone = "NONE" + + // AllowNotificationsFiltered is a AllowNotifications enum value + AllowNotificationsFiltered = "FILTERED" +) + +// AllowNotifications_Values returns all elements of the AllowNotifications enum +func AllowNotifications_Values() []string { + return []string{ + AllowNotificationsAll, + AllowNotificationsNone, + AllowNotificationsFiltered, + } +} + const ( // ChannelMembershipTypeDefault is a ChannelMembershipType enum value ChannelMembershipTypeDefault = "DEFAULT" @@ -12586,6 +13370,22 @@ func InvocationType_Values() []string { } } +const ( + // PushNotificationTypeDefault is a PushNotificationType enum value + PushNotificationTypeDefault = "DEFAULT" + + // PushNotificationTypeVoip is a PushNotificationType enum value + PushNotificationTypeVoip = "VOIP" +) + +// PushNotificationType_Values returns all elements of the PushNotificationType enum +func PushNotificationType_Values() []string { + return []string{ + PushNotificationTypeDefault, + PushNotificationTypeVoip, + } +} + const ( // SortOrderAscending is a SortOrder enum value SortOrderAscending = "ASCENDING" diff --git a/service/chimesdkmessaging/chimesdkmessagingiface/interface.go b/service/chimesdkmessaging/chimesdkmessagingiface/interface.go index 3c3a99d8a1..34f1af7713 100644 --- a/service/chimesdkmessaging/chimesdkmessagingiface/interface.go +++ b/service/chimesdkmessaging/chimesdkmessagingiface/interface.go @@ -148,6 +148,10 @@ type ChimeSDKMessagingAPI interface { DisassociateChannelFlowWithContext(aws.Context, *chimesdkmessaging.DisassociateChannelFlowInput, ...request.Option) (*chimesdkmessaging.DisassociateChannelFlowOutput, error) DisassociateChannelFlowRequest(*chimesdkmessaging.DisassociateChannelFlowInput) (*request.Request, *chimesdkmessaging.DisassociateChannelFlowOutput) + GetChannelMembershipPreferences(*chimesdkmessaging.GetChannelMembershipPreferencesInput) (*chimesdkmessaging.GetChannelMembershipPreferencesOutput, error) + GetChannelMembershipPreferencesWithContext(aws.Context, *chimesdkmessaging.GetChannelMembershipPreferencesInput, ...request.Option) (*chimesdkmessaging.GetChannelMembershipPreferencesOutput, error) + GetChannelMembershipPreferencesRequest(*chimesdkmessaging.GetChannelMembershipPreferencesInput) (*request.Request, *chimesdkmessaging.GetChannelMembershipPreferencesOutput) + GetChannelMessage(*chimesdkmessaging.GetChannelMessageInput) (*chimesdkmessaging.GetChannelMessageOutput, error) GetChannelMessageWithContext(aws.Context, *chimesdkmessaging.GetChannelMessageInput, ...request.Option) (*chimesdkmessaging.GetChannelMessageOutput, error) GetChannelMessageRequest(*chimesdkmessaging.GetChannelMessageInput) (*request.Request, *chimesdkmessaging.GetChannelMessageOutput) @@ -227,6 +231,10 @@ type ChimeSDKMessagingAPI interface { ListTagsForResourceWithContext(aws.Context, *chimesdkmessaging.ListTagsForResourceInput, ...request.Option) (*chimesdkmessaging.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*chimesdkmessaging.ListTagsForResourceInput) (*request.Request, *chimesdkmessaging.ListTagsForResourceOutput) + PutChannelMembershipPreferences(*chimesdkmessaging.PutChannelMembershipPreferencesInput) (*chimesdkmessaging.PutChannelMembershipPreferencesOutput, error) + PutChannelMembershipPreferencesWithContext(aws.Context, *chimesdkmessaging.PutChannelMembershipPreferencesInput, ...request.Option) (*chimesdkmessaging.PutChannelMembershipPreferencesOutput, error) + PutChannelMembershipPreferencesRequest(*chimesdkmessaging.PutChannelMembershipPreferencesInput) (*request.Request, *chimesdkmessaging.PutChannelMembershipPreferencesOutput) + RedactChannelMessage(*chimesdkmessaging.RedactChannelMessageInput) (*chimesdkmessaging.RedactChannelMessageOutput, error) RedactChannelMessageWithContext(aws.Context, *chimesdkmessaging.RedactChannelMessageInput, ...request.Option) (*chimesdkmessaging.RedactChannelMessageOutput, error) RedactChannelMessageRequest(*chimesdkmessaging.RedactChannelMessageInput) (*request.Request, *chimesdkmessaging.RedactChannelMessageOutput) diff --git a/service/emrcontainers/api.go b/service/emrcontainers/api.go index bb5b5015f6..704961f3d6 100644 --- a/service/emrcontainers/api.go +++ b/service/emrcontainers/api.go @@ -1594,6 +1594,47 @@ func (s *CancelJobRunOutput) SetVirtualClusterId(v string) *CancelJobRunOutput { return s } +// The entity representing certificate data generated for managed endpoint. +type Certificate struct { + _ struct{} `type:"structure"` + + // The ARN of the certificate generated for managed endpoint. + CertificateArn *string `locationName:"certificateArn" min:"44" type:"string"` + + // The base64 encoded PEM certificate data generated for managed endpoint. + CertificateData *string `locationName:"certificateData" 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 Certificate) 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 Certificate) GoString() string { + return s.String() +} + +// SetCertificateArn sets the CertificateArn field's value. +func (s *Certificate) SetCertificateArn(v string) *Certificate { + s.CertificateArn = &v + return s +} + +// SetCertificateData sets the CertificateData field's value. +func (s *Certificate) SetCertificateData(v string) *Certificate { + s.CertificateData = &v + return s +} + // A configuration for CloudWatch monitoring. You can configure your jobs to // send log information to CloudWatch Logs. type CloudWatchMonitoringConfiguration struct { @@ -1939,10 +1980,11 @@ func (s *ContainerProvider) SetType(v string) *ContainerProvider { type CreateManagedEndpointInput struct { _ struct{} `type:"structure"` - // The certificate ARN of the managed endpoint. + // The certificate ARN provided by users for the managed endpoint. This fiedd + // is under deprecation and will be removed in future releases. // - // CertificateArn is a required field - CertificateArn *string `locationName:"certificateArn" min:"44" type:"string" required:"true"` + // Deprecated: Customer provided certificate-arn is deprecated and would be removed in future. + CertificateArn *string `locationName:"certificateArn" min:"44" deprecated:"true" type:"string"` // The client idempotency token for this create call. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` @@ -2000,9 +2042,6 @@ func (s CreateManagedEndpointInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateManagedEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateManagedEndpointInput"} - if s.CertificateArn == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateArn")) - } if s.CertificateArn != nil && len(*s.CertificateArn) < 44 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 44)) } @@ -2813,8 +2852,15 @@ type Endpoint struct { // The ARN of the endpoint. Arn *string `locationName:"arn" min:"60" type:"string"` - // The certificate ARN of the endpoint. - CertificateArn *string `locationName:"certificateArn" min:"44" type:"string"` + // The certificate ARN of the endpoint. This field is under deprecation and + // will be removed in future. + // + // Deprecated: Customer provided certificate-arn is deprecated and would be removed in future. + CertificateArn *string `locationName:"certificateArn" min:"44" deprecated:"true" type:"string"` + + // The certificate generated by emr control plane on customer behalf to secure + // the managed endpoint. + CertificateAuthority *Certificate `locationName:"certificateAuthority" type:"structure"` // The configuration settings that are used to override existing configurations // for endpoints. @@ -2893,6 +2939,12 @@ func (s *Endpoint) SetCertificateArn(v string) *Endpoint { return s } +// SetCertificateAuthority sets the CertificateAuthority field's value. +func (s *Endpoint) SetCertificateAuthority(v *Certificate) *Endpoint { + s.CertificateAuthority = v + return s +} + // SetConfigurationOverrides sets the ConfigurationOverrides field's value. func (s *Endpoint) SetConfigurationOverrides(v *ConfigurationOverrides) *Endpoint { s.ConfigurationOverrides = v