Skip to content

Commit 2e5f4df

Browse files
author
AWS
committed
Amazon Chime SDK Messaging Update: This release adds support for searching channels by members via the SearchChannels API, removes required restrictions for Name and Mode in UpdateChannel API and enhances CreateChannel API by exposing member and moderator list as well as channel id as optional parameters.
1 parent 56e21b1 commit 2e5f4df

File tree

3 files changed

+167
-8
lines changed

3 files changed

+167
-8
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "Amazon Chime SDK Messaging",
4+
"contributor": "",
5+
"description": "This release adds support for searching channels by members via the SearchChannels API, removes required restrictions for Name and Mode in UpdateChannel API and enhances CreateChannel API by exposing member and moderator list as well as channel id as optional parameters."
6+
}

services/chimesdkmessaging/src/main/resources/codegen-resources/paginators-1.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@
4444
"input_token": "NextToken",
4545
"output_token": "NextToken",
4646
"limit_key": "MaxResults"
47+
},
48+
"SearchChannels": {
49+
"input_token": "NextToken",
50+
"output_token": "NextToken",
51+
"limit_key": "MaxResults"
4752
}
4853
}
4954
}

services/chimesdkmessaging/src/main/resources/codegen-resources/service-2.json

Lines changed: 156 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -739,13 +739,33 @@
739739
"errors":[
740740
{"shape":"BadRequestException"},
741741
{"shape":"ForbiddenException"},
742+
{"shape":"ConflictException"},
742743
{"shape":"UnauthorizedClientException"},
743744
{"shape":"ThrottledClientException"},
744745
{"shape":"ServiceUnavailableException"},
745746
{"shape":"ServiceFailureException"}
746747
],
747748
"documentation":"<p>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.</p> <note> <p>The <code>x-amz-chime-bearer</code> request header is mandatory. Use the <code>AppInstanceUserArn</code> of the user that makes the API call as the value in the header.</p> </note>"
748749
},
750+
"SearchChannels":{
751+
"name":"SearchChannels",
752+
"http":{
753+
"method":"POST",
754+
"requestUri":"/channels?operation=search",
755+
"responseCode":200
756+
},
757+
"input":{"shape":"SearchChannelsRequest"},
758+
"output":{"shape":"SearchChannelsResponse"},
759+
"errors":[
760+
{"shape":"BadRequestException"},
761+
{"shape":"ForbiddenException"},
762+
{"shape":"UnauthorizedClientException"},
763+
{"shape":"ThrottledClientException"},
764+
{"shape":"ServiceUnavailableException"},
765+
{"shape":"ServiceFailureException"}
766+
],
767+
"documentation":"<p>Allows an <code>AppInstanceUser</code> to search the channels that they belong to. The <code>AppInstanceUser</code> can search by membership or external ID. An <code>AppInstanceAdmin</code> can search across all channels within the <code>AppInstance</code>.</p>"
768+
},
749769
"SendChannelMessage":{
750770
"name":"SendChannelMessage",
751771
"http":{
@@ -902,7 +922,7 @@
902922
},
903923
"ReadMarkerTimestamp":{
904924
"shape":"Timestamp",
905-
"documentation":"<p>The time at which a message was last read.</p>"
925+
"documentation":"<p>The time at which an <code>AppInstanceUser</code> last marked a channel as read.</p>"
906926
}
907927
},
908928
"documentation":"<p>Summary of the membership details of an <code>AppInstanceUser</code>.</p>"
@@ -1242,6 +1262,19 @@
12421262
"type":"list",
12431263
"member":{"shape":"ChannelFlowSummary"}
12441264
},
1265+
"ChannelId":{
1266+
"type":"string",
1267+
"max":64,
1268+
"min":1,
1269+
"pattern":"[A-Za-z0-9]([A-Za-z0-9\\:\\-\\_\\.\\@]{0,62}[A-Za-z0-9])?",
1270+
"sensitive":true
1271+
},
1272+
"ChannelMemberArns":{
1273+
"type":"list",
1274+
"member":{"shape":"ChimeArn"},
1275+
"max":10,
1276+
"min":1
1277+
},
12451278
"ChannelMembership":{
12461279
"type":"structure",
12471280
"members":{
@@ -1540,6 +1573,12 @@
15401573
},
15411574
"documentation":"<p>The details of a channel moderator.</p>"
15421575
},
1576+
"ChannelModeratorArns":{
1577+
"type":"list",
1578+
"member":{"shape":"ChimeArn"},
1579+
"max":10,
1580+
"min":1
1581+
},
15431582
"ChannelModeratorSummary":{
15441583
"type":"structure",
15451584
"members":{
@@ -1830,6 +1869,18 @@
18301869
"documentation":"<p>The <code>AppInstanceUserArn</code> of the user that makes the API call.</p>",
18311870
"location":"header",
18321871
"locationName":"x-amz-chime-bearer"
1872+
},
1873+
"ChannelId":{
1874+
"shape":"ChannelId",
1875+
"documentation":"<p>The ID of the channel in the request.</p>"
1876+
},
1877+
"MemberArns":{
1878+
"shape":"ChannelMemberArns",
1879+
"documentation":"<p>The ARNs of the channel members in the request.</p>"
1880+
},
1881+
"ModeratorArns":{
1882+
"shape":"ChannelModeratorArns",
1883+
"documentation":"<p>The ARNs of the channel moderators in the request.</p>"
18331884
}
18341885
}
18351886
},
@@ -2329,7 +2380,10 @@
23292380
"shape":"ChimeArn",
23302381
"documentation":"<p>The ARN of the channel.</p>"
23312382
},
2332-
"Member":{"shape":"Identity"},
2383+
"Member":{
2384+
"shape":"Identity",
2385+
"documentation":"<p>The details of a user.</p>"
2386+
},
23332387
"Preferences":{
23342388
"shape":"ChannelMembershipPreferences",
23352389
"documentation":"<p>The channel membership preferences for an <code>AppInstanceUser</code> .</p>"
@@ -2588,7 +2642,7 @@
25882642
"members":{
25892643
"ChannelMemberships":{
25902644
"shape":"ChannelMembershipForAppInstanceUserSummaryList",
2591-
"documentation":"<p>The token passed by previous API calls until all requested users are returned.</p>"
2645+
"documentation":"<p>The information for the requested channel memberships.</p>"
25922646
},
25932647
"NextToken":{
25942648
"shape":"NextToken",
@@ -3105,7 +3159,7 @@
31053159
},
31063160
"FilterRule":{
31073161
"shape":"FilterRule",
3108-
"documentation":"<p>The simple JSON object used to send a subset of a push notification to the requsted member.</p>"
3162+
"documentation":"<p>The simple JSON object used to send a subset of a push notification to the requested member.</p>"
31093163
}
31103164
},
31113165
"documentation":"<p>The channel membership preferences for push notification.</p>"
@@ -3164,7 +3218,10 @@
31643218
"shape":"ChimeArn",
31653219
"documentation":"<p>The ARN of the channel.</p>"
31663220
},
3167-
"Member":{"shape":"Identity"},
3221+
"Member":{
3222+
"shape":"Identity",
3223+
"documentation":"<p>The details of a user.</p>"
3224+
},
31683225
"Preferences":{
31693226
"shape":"ChannelMembershipPreferences",
31703227
"documentation":"<p>The ARN and metadata of the member being added.</p>"
@@ -3229,6 +3286,99 @@
32293286
"pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*",
32303287
"sensitive":true
32313288
},
3289+
"SearchChannelsRequest":{
3290+
"type":"structure",
3291+
"required":["Fields"],
3292+
"members":{
3293+
"ChimeBearer":{
3294+
"shape":"ChimeArn",
3295+
"documentation":"<p>The <code>AppInstanceUserArn</code> of the user making the API call.</p>",
3296+
"location":"header",
3297+
"locationName":"x-amz-chime-bearer"
3298+
},
3299+
"Fields":{
3300+
"shape":"SearchFields",
3301+
"documentation":"<p>A list of the <code>Field</code> objects in the channel being searched.</p>"
3302+
},
3303+
"MaxResults":{
3304+
"shape":"MaxResults",
3305+
"documentation":"<p>The maximum number of channels that you want returned.</p>",
3306+
"location":"querystring",
3307+
"locationName":"max-results"
3308+
},
3309+
"NextToken":{
3310+
"shape":"NextToken",
3311+
"documentation":"<p>The token returned from previous API requests until the number of channels is reached.</p>",
3312+
"location":"querystring",
3313+
"locationName":"next-token"
3314+
}
3315+
}
3316+
},
3317+
"SearchChannelsResponse":{
3318+
"type":"structure",
3319+
"members":{
3320+
"Channels":{
3321+
"shape":"ChannelSummaryList",
3322+
"documentation":"<p>A list of the channels in the request.</p>"
3323+
},
3324+
"NextToken":{
3325+
"shape":"NextToken",
3326+
"documentation":"<p>The token returned from previous API responses until the number of channels is reached.</p>"
3327+
}
3328+
}
3329+
},
3330+
"SearchField":{
3331+
"type":"structure",
3332+
"required":[
3333+
"Key",
3334+
"Values",
3335+
"Operator"
3336+
],
3337+
"members":{
3338+
"Key":{
3339+
"shape":"SearchFieldKey",
3340+
"documentation":"<p>An <code>enum</code> value that indicates the key to search the channel on. <code>MEMBERS</code> allows you to search channels based on memberships. You can use it with the <code>EQUALS</code> operator to get channels whose memberships are equal to the specified values, and with the <code>INCLUDES</code> operator to get channels whose memberships include the specified values.</p>"
3341+
},
3342+
"Values":{
3343+
"shape":"SearchFieldValues",
3344+
"documentation":"<p>The values that you want to search for, a list of strings. The values must be <code>AppInstanceUserArns</code> specified as a list of strings.</p> <note> <p>This operation isn't supported for <code>AppInstanceUsers</code> with large number of memberships.</p> </note>"
3345+
},
3346+
"Operator":{
3347+
"shape":"SearchFieldOperator",
3348+
"documentation":"<p>The operator used to compare field values, currently <code>EQUALS</code> or <code>INCLUDES</code>. Use the <code>EQUALS</code> operator to find channels whose memberships equal the specified values. Use the <code>INCLUDES</code> operator to find channels whose memberships include the specified values.</p>"
3349+
}
3350+
},
3351+
"documentation":"<p>A <code>Field</code> of the channel that you want to search.</p>"
3352+
},
3353+
"SearchFieldKey":{
3354+
"type":"string",
3355+
"enum":["MEMBERS"]
3356+
},
3357+
"SearchFieldOperator":{
3358+
"type":"string",
3359+
"enum":[
3360+
"EQUALS",
3361+
"INCLUDES"
3362+
]
3363+
},
3364+
"SearchFieldValue":{
3365+
"type":"string",
3366+
"max":512,
3367+
"min":1,
3368+
"pattern":"[\\s\\S]*"
3369+
},
3370+
"SearchFieldValues":{
3371+
"type":"list",
3372+
"member":{"shape":"SearchFieldValue"},
3373+
"max":20,
3374+
"min":1
3375+
},
3376+
"SearchFields":{
3377+
"type":"list",
3378+
"member":{"shape":"SearchField"},
3379+
"max":20,
3380+
"min":1
3381+
},
32323382
"SendChannelMessageRequest":{
32333383
"type":"structure",
32343384
"required":[
@@ -3553,8 +3703,6 @@
35533703
"type":"structure",
35543704
"required":[
35553705
"ChannelArn",
3556-
"Name",
3557-
"Mode",
35583706
"ChimeBearer"
35593707
],
35603708
"members":{
@@ -3598,5 +3746,5 @@
35983746
"max":4096
35993747
}
36003748
},
3601-
"documentation":"<p>The Amazon Chime SDK Messaging APIs in this section allow software developers to send and receive messages in custom messaging applications. These APIs depend on the frameworks provided by the Amazon Chime SDK Identity APIs. For more information about the messaging APIs, see <a href=\"https://docs.aws.amazon.com/chime/latest/APIReference/API_Operations_Amazon_Chime_SDK_Messaging\">Amazon Chime SDK messaging</a> </p>"
3749+
"documentation":"<p>The Amazon Chime SDK Messaging APIs in this section allow software developers to send and receive messages in custom messaging applications. These APIs depend on the frameworks provided by the Amazon Chime SDK Identity APIs. For more information about the messaging APIs, see <a href=\"https://docs.aws.amazon.com/chime/latest/APIReference/API_Operations_Amazon_Chime_SDK_Messaging.html\">Amazon Chime SDK messaging</a>.</p>"
36023750
}

0 commit comments

Comments
 (0)