aws-sdk-workmail 1.22.0 → 1.27.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: d1b6fee2823bb80d44e66d79644c07ca2f458684
4
- data.tar.gz: bb23998cae974e30d04c4316eb327c2c36c24a4c
2
+ SHA256:
3
+ metadata.gz: d16e64d6a3ac8bd0188c8cff4cc2aaeceab7290c9520791c01bdfff539e2eefa
4
+ data.tar.gz: be4d5bef40c700950736529709dc108f943f679eb975ac1c1a18125860028bd2
5
5
  SHA512:
6
- metadata.gz: 3a1547998119557b14d08bf767e4c2a004510f3c6eb3f20aef16642d0a1a5934ea678300bb38a3516a9c6b7658891dc1cf9f678398a64845fae77e032713c324
7
- data.tar.gz: 64b084ccc6f53d455cacc4af8dbf8878a5edf50819036b615ab7536ee4cc52dac1d73b1426d28e701b8605e35ef1f6bdd5d8c59e15d4aeabfbc282c4b2c099ea
6
+ metadata.gz: 830b9d18a7c82a9dd7a20121d8d2c0c215ee01226faaf76dabc579744c37caec3cdab238ceb672fb817778a7c3e47cc245a0f8a34d88f54b8fd50c5069f1e218
7
+ data.tar.gz: cf0923b5b31e77e90e33138d164d33e3d24ca088fe9cfc599f588e99bbc2ac8ad5ce10fc5e33f4271af60936ab7c0307da1b47104d31af5d35216de11ebfe7fa
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -45,6 +47,6 @@ require_relative 'aws-sdk-workmail/customizations'
45
47
  # @service
46
48
  module Aws::WorkMail
47
49
 
48
- GEM_VERSION = '1.22.0'
50
+ GEM_VERSION = '1.27.0'
49
51
 
50
52
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
29
32
 
@@ -32,11 +35,11 @@ Aws::Plugins::GlobalConfiguration.add_identifier(:workmail)
32
35
  module Aws::WorkMail
33
36
  # An API client for WorkMail. To construct a client, you need to configure a `:region` and `:credentials`.
34
37
  #
35
- # client = Aws::WorkMail::Client.new(
36
- # region: region_name,
37
- # credentials: credentials,
38
- # # ...
39
- # )
38
+ # client = Aws::WorkMail::Client.new(
39
+ # region: region_name,
40
+ # credentials: credentials,
41
+ # # ...
42
+ # )
40
43
  #
41
44
  # For details on configuring region and credentials see
42
45
  # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
@@ -69,6 +72,7 @@ module Aws::WorkMail
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
74
78
 
@@ -105,7 +109,7 @@ module Aws::WorkMail
105
109
  # @option options [required, String] :region
106
110
  # The AWS region to connect to. The configured `:region` is
107
111
  # used to determine the service `:endpoint`. When not passed,
108
- # a default `:region` is search for in the following locations:
112
+ # a default `:region` is searched for in the following locations:
109
113
  #
110
114
  # * `Aws.config[:region]`
111
115
  # * `ENV['AWS_REGION']`
@@ -161,7 +165,7 @@ module Aws::WorkMail
161
165
  # @option options [String] :endpoint
162
166
  # The client endpoint is normally constructed from the `:region`
163
167
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be avalid HTTP(S) URI.
168
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
169
  #
166
170
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
171
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +180,7 @@ module Aws::WorkMail
176
180
  # requests fetching endpoints information. Defaults to 60 sec.
177
181
  #
178
182
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
183
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
184
  #
181
185
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
186
  # The log formatter.
@@ -229,15 +233,19 @@ module Aws::WorkMail
229
233
  #
230
234
  # @option options [String] :retry_mode ("legacy")
231
235
  # Specifies which retry algorithm to use. Values are:
232
- # * `legacy` - The pre-existing retry behavior. This is default value if
233
- # no retry mode is provided.
234
- # * `standard` - A standardized set of retry rules across the AWS SDKs.
235
- # This includes support for retry quotas, which limit the number of
236
- # unsuccessful retries a client can make.
237
- # * `adaptive` - An experimental retry mode that includes all the
238
- # functionality of `standard` mode along with automatic client side
239
- # throttling. This is a provisional mode that may change behavior
240
- # in the future.
236
+ #
237
+ # * `legacy` - The pre-existing retry behavior. This is default value if
238
+ # no retry mode is provided.
239
+ #
240
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
241
+ # This includes support for retry quotas, which limit the number of
242
+ # unsuccessful retries a client can make.
243
+ #
244
+ # * `adaptive` - An experimental retry mode that includes all the
245
+ # functionality of `standard` mode along with automatic client side
246
+ # throttling. This is a provisional mode that may change behavior
247
+ # in the future.
248
+ #
241
249
  #
242
250
  # @option options [String] :secret_access_key
243
251
  #
@@ -275,8 +283,7 @@ module Aws::WorkMail
275
283
  #
276
284
  # @option options [Integer] :http_read_timeout (60) The default
277
285
  # number of seconds to wait for response data. This value can
278
- # safely be set
279
- # per-request on the session yielded by {#session_for}.
286
+ # safely be set per-request on the session.
280
287
  #
281
288
  # @option options [Float] :http_idle_timeout (5) The number of
282
289
  # seconds a connection is allowed to sit idle before it is
@@ -288,7 +295,7 @@ module Aws::WorkMail
288
295
  # request body. This option has no effect unless the request has
289
296
  # "Expect" header set to "100-continue". Defaults to `nil` which
290
297
  # disables this behaviour. This value can safely be set per
291
- # request on the session yielded by {#session_for}.
298
+ # request on the session.
292
299
  #
293
300
  # @option options [Boolean] :http_wire_trace (false) When `true`,
294
301
  # HTTP debug output will be sent to the `:logger`.
@@ -522,7 +529,7 @@ module Aws::WorkMail
522
529
  # Deletes an access control rule for the specified WorkMail
523
530
  # organization.
524
531
  #
525
- # @option params [String] :organization_id
532
+ # @option params [required, String] :organization_id
526
533
  # The identifier for the organization.
527
534
  #
528
535
  # @option params [required, String] :name
@@ -533,7 +540,7 @@ module Aws::WorkMail
533
540
  # @example Request syntax with placeholder values
534
541
  #
535
542
  # resp = client.delete_access_control_rule({
536
- # organization_id: "OrganizationId",
543
+ # organization_id: "OrganizationId", # required
537
544
  # name: "AccessControlRuleName", # required
538
545
  # })
539
546
  #
@@ -665,6 +672,33 @@ module Aws::WorkMail
665
672
  req.send_request(options)
666
673
  end
667
674
 
675
+ # Deletes the specified retention policy from the specified
676
+ # organization.
677
+ #
678
+ # @option params [required, String] :organization_id
679
+ # The organization ID.
680
+ #
681
+ # @option params [required, String] :id
682
+ # The retention policy ID.
683
+ #
684
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
685
+ #
686
+ # @example Request syntax with placeholder values
687
+ #
688
+ # resp = client.delete_retention_policy({
689
+ # organization_id: "OrganizationId", # required
690
+ # id: "ShortString", # required
691
+ # })
692
+ #
693
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteRetentionPolicy AWS API Documentation
694
+ #
695
+ # @overload delete_retention_policy(params = {})
696
+ # @param [Hash] params ({})
697
+ def delete_retention_policy(params = {}, options = {})
698
+ req = build_request(:delete_retention_policy, params)
699
+ req.send_request(options)
700
+ end
701
+
668
702
  # Deletes a user from Amazon WorkMail and all subsequent systems. Before
669
703
  # you can delete a user, the user state must be `DISABLED`. Use the
670
704
  # DescribeUser action to confirm the user state.
@@ -1016,6 +1050,44 @@ module Aws::WorkMail
1016
1050
  req.send_request(options)
1017
1051
  end
1018
1052
 
1053
+ # Gets the default retention policy details for the specified
1054
+ # organization.
1055
+ #
1056
+ # @option params [required, String] :organization_id
1057
+ # The organization ID.
1058
+ #
1059
+ # @return [Types::GetDefaultRetentionPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1060
+ #
1061
+ # * {Types::GetDefaultRetentionPolicyResponse#id #id} => String
1062
+ # * {Types::GetDefaultRetentionPolicyResponse#name #name} => String
1063
+ # * {Types::GetDefaultRetentionPolicyResponse#description #description} => String
1064
+ # * {Types::GetDefaultRetentionPolicyResponse#folder_configurations #folder_configurations} => Array<Types::FolderConfiguration>
1065
+ #
1066
+ # @example Request syntax with placeholder values
1067
+ #
1068
+ # resp = client.get_default_retention_policy({
1069
+ # organization_id: "OrganizationId", # required
1070
+ # })
1071
+ #
1072
+ # @example Response structure
1073
+ #
1074
+ # resp.id #=> String
1075
+ # resp.name #=> String
1076
+ # resp.description #=> String
1077
+ # resp.folder_configurations #=> Array
1078
+ # resp.folder_configurations[0].name #=> String, one of "INBOX", "DELETED_ITEMS", "SENT_ITEMS", "DRAFTS", "JUNK_EMAIL"
1079
+ # resp.folder_configurations[0].action #=> String, one of "NONE", "DELETE", "PERMANENTLY_DELETE"
1080
+ # resp.folder_configurations[0].period #=> Integer
1081
+ #
1082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetDefaultRetentionPolicy AWS API Documentation
1083
+ #
1084
+ # @overload get_default_retention_policy(params = {})
1085
+ # @param [Hash] params ({})
1086
+ def get_default_retention_policy(params = {}, options = {})
1087
+ req = build_request(:get_default_retention_policy, params)
1088
+ req.send_request(options)
1089
+ end
1090
+
1019
1091
  # Requests a user's mailbox details for a specified organization and
1020
1092
  # user.
1021
1093
  #
@@ -1118,6 +1190,8 @@ module Aws::WorkMail
1118
1190
  # * {Types::ListAliasesResponse#aliases #aliases} => Array<String>
1119
1191
  # * {Types::ListAliasesResponse#next_token #next_token} => String
1120
1192
  #
1193
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1194
+ #
1121
1195
  # @example Request syntax with placeholder values
1122
1196
  #
1123
1197
  # resp = client.list_aliases({
@@ -1164,6 +1238,8 @@ module Aws::WorkMail
1164
1238
  # * {Types::ListGroupMembersResponse#members #members} => Array<Types::Member>
1165
1239
  # * {Types::ListGroupMembersResponse#next_token #next_token} => String
1166
1240
  #
1241
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1242
+ #
1167
1243
  # @example Request syntax with placeholder values
1168
1244
  #
1169
1245
  # resp = client.list_group_members({
@@ -1210,6 +1286,8 @@ module Aws::WorkMail
1210
1286
  # * {Types::ListGroupsResponse#groups #groups} => Array<Types::Group>
1211
1287
  # * {Types::ListGroupsResponse#next_token #next_token} => String
1212
1288
  #
1289
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1290
+ #
1213
1291
  # @example Request syntax with placeholder values
1214
1292
  #
1215
1293
  # resp = client.list_groups({
@@ -1261,6 +1339,8 @@ module Aws::WorkMail
1261
1339
  # * {Types::ListMailboxPermissionsResponse#permissions #permissions} => Array<Types::Permission>
1262
1340
  # * {Types::ListMailboxPermissionsResponse#next_token #next_token} => String
1263
1341
  #
1342
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1343
+ #
1264
1344
  # @example Request syntax with placeholder values
1265
1345
  #
1266
1346
  # resp = client.list_mailbox_permissions({
@@ -1288,7 +1368,7 @@ module Aws::WorkMail
1288
1368
  req.send_request(options)
1289
1369
  end
1290
1370
 
1291
- # Returns summaries of the customer's non-deleted organizations.
1371
+ # Returns summaries of the customer's organizations.
1292
1372
  #
1293
1373
  # @option params [String] :next_token
1294
1374
  # The token to use to retrieve the next page of results. The first call
@@ -1302,6 +1382,8 @@ module Aws::WorkMail
1302
1382
  # * {Types::ListOrganizationsResponse#organization_summaries #organization_summaries} => Array<Types::OrganizationSummary>
1303
1383
  # * {Types::ListOrganizationsResponse#next_token #next_token} => String
1304
1384
  #
1385
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1386
+ #
1305
1387
  # @example Request syntax with placeholder values
1306
1388
  #
1307
1389
  # resp = client.list_organizations({
@@ -1349,6 +1431,8 @@ module Aws::WorkMail
1349
1431
  # * {Types::ListResourceDelegatesResponse#delegates #delegates} => Array<Types::Delegate>
1350
1432
  # * {Types::ListResourceDelegatesResponse#next_token #next_token} => String
1351
1433
  #
1434
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1435
+ #
1352
1436
  # @example Request syntax with placeholder values
1353
1437
  #
1354
1438
  # resp = client.list_resource_delegates({
@@ -1391,6 +1475,8 @@ module Aws::WorkMail
1391
1475
  # * {Types::ListResourcesResponse#resources #resources} => Array<Types::Resource>
1392
1476
  # * {Types::ListResourcesResponse#next_token #next_token} => String
1393
1477
  #
1478
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1479
+ #
1394
1480
  # @example Request syntax with placeholder values
1395
1481
  #
1396
1482
  # resp = client.list_resources({
@@ -1467,6 +1553,8 @@ module Aws::WorkMail
1467
1553
  # * {Types::ListUsersResponse#users #users} => Array<Types::User>
1468
1554
  # * {Types::ListUsersResponse#next_token #next_token} => String
1469
1555
  #
1556
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1557
+ #
1470
1558
  # @example Request syntax with placeholder values
1471
1559
  #
1472
1560
  # resp = client.list_users({
@@ -1606,6 +1694,50 @@ module Aws::WorkMail
1606
1694
  req.send_request(options)
1607
1695
  end
1608
1696
 
1697
+ # Puts a retention policy to the specified organization.
1698
+ #
1699
+ # @option params [required, String] :organization_id
1700
+ # The organization ID.
1701
+ #
1702
+ # @option params [String] :id
1703
+ # The retention policy ID.
1704
+ #
1705
+ # @option params [required, String] :name
1706
+ # The retention policy name.
1707
+ #
1708
+ # @option params [String] :description
1709
+ # The retention policy description.
1710
+ #
1711
+ # @option params [required, Array<Types::FolderConfiguration>] :folder_configurations
1712
+ # The retention policy folder configurations.
1713
+ #
1714
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1715
+ #
1716
+ # @example Request syntax with placeholder values
1717
+ #
1718
+ # resp = client.put_retention_policy({
1719
+ # organization_id: "OrganizationId", # required
1720
+ # id: "ShortString",
1721
+ # name: "ShortString", # required
1722
+ # description: "PolicyDescription",
1723
+ # folder_configurations: [ # required
1724
+ # {
1725
+ # name: "INBOX", # required, accepts INBOX, DELETED_ITEMS, SENT_ITEMS, DRAFTS, JUNK_EMAIL
1726
+ # action: "NONE", # required, accepts NONE, DELETE, PERMANENTLY_DELETE
1727
+ # period: 1,
1728
+ # },
1729
+ # ],
1730
+ # })
1731
+ #
1732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutRetentionPolicy AWS API Documentation
1733
+ #
1734
+ # @overload put_retention_policy(params = {})
1735
+ # @param [Hash] params ({})
1736
+ def put_retention_policy(params = {}, options = {})
1737
+ req = build_request(:put_retention_policy, params)
1738
+ req.send_request(options)
1739
+ end
1740
+
1609
1741
  # Registers an existing and disabled user, group, or resource for Amazon
1610
1742
  # WorkMail use by associating a mailbox and calendaring capabilities. It
1611
1743
  # performs no change if the user, group, or resource is enabled and
@@ -1861,7 +1993,7 @@ module Aws::WorkMail
1861
1993
  params: params,
1862
1994
  config: config)
1863
1995
  context[:gem_name] = 'aws-sdk-workmail'
1864
- context[:gem_version] = '1.22.0'
1996
+ context[:gem_version] = '1.27.0'
1865
1997
  Seahorse::Client::Request.new(handlers, context)
1866
1998
  end
1867
1999
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -46,6 +48,8 @@ module Aws::WorkMail
46
48
  DeleteMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsResponse')
47
49
  DeleteResourceRequest = Shapes::StructureShape.new(name: 'DeleteResourceRequest')
48
50
  DeleteResourceResponse = Shapes::StructureShape.new(name: 'DeleteResourceResponse')
51
+ DeleteRetentionPolicyRequest = Shapes::StructureShape.new(name: 'DeleteRetentionPolicyRequest')
52
+ DeleteRetentionPolicyResponse = Shapes::StructureShape.new(name: 'DeleteRetentionPolicyResponse')
49
53
  DeleteUserRequest = Shapes::StructureShape.new(name: 'DeleteUserRequest')
50
54
  DeleteUserResponse = Shapes::StructureShape.new(name: 'DeleteUserResponse')
51
55
  DeregisterFromWorkMailRequest = Shapes::StructureShape.new(name: 'DeregisterFromWorkMailRequest')
@@ -70,8 +74,13 @@ module Aws::WorkMail
70
74
  EntityNotFoundException = Shapes::StructureShape.new(name: 'EntityNotFoundException')
71
75
  EntityState = Shapes::StringShape.new(name: 'EntityState')
72
76
  EntityStateException = Shapes::StructureShape.new(name: 'EntityStateException')
77
+ FolderConfiguration = Shapes::StructureShape.new(name: 'FolderConfiguration')
78
+ FolderConfigurations = Shapes::ListShape.new(name: 'FolderConfigurations')
79
+ FolderName = Shapes::StringShape.new(name: 'FolderName')
73
80
  GetAccessControlEffectRequest = Shapes::StructureShape.new(name: 'GetAccessControlEffectRequest')
74
81
  GetAccessControlEffectResponse = Shapes::StructureShape.new(name: 'GetAccessControlEffectResponse')
82
+ GetDefaultRetentionPolicyRequest = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyRequest')
83
+ GetDefaultRetentionPolicyResponse = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyResponse')
75
84
  GetMailboxDetailsRequest = Shapes::StructureShape.new(name: 'GetMailboxDetailsRequest')
76
85
  GetMailboxDetailsResponse = Shapes::StructureShape.new(name: 'GetMailboxDetailsResponse')
77
86
  Group = Shapes::StructureShape.new(name: 'Group')
@@ -125,10 +134,13 @@ module Aws::WorkMail
125
134
  PermissionType = Shapes::StringShape.new(name: 'PermissionType')
126
135
  PermissionValues = Shapes::ListShape.new(name: 'PermissionValues')
127
136
  Permissions = Shapes::ListShape.new(name: 'Permissions')
137
+ PolicyDescription = Shapes::StringShape.new(name: 'PolicyDescription')
128
138
  PutAccessControlRuleRequest = Shapes::StructureShape.new(name: 'PutAccessControlRuleRequest')
129
139
  PutAccessControlRuleResponse = Shapes::StructureShape.new(name: 'PutAccessControlRuleResponse')
130
140
  PutMailboxPermissionsRequest = Shapes::StructureShape.new(name: 'PutMailboxPermissionsRequest')
131
141
  PutMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'PutMailboxPermissionsResponse')
142
+ PutRetentionPolicyRequest = Shapes::StructureShape.new(name: 'PutRetentionPolicyRequest')
143
+ PutRetentionPolicyResponse = Shapes::StructureShape.new(name: 'PutRetentionPolicyResponse')
132
144
  RegisterToWorkMailRequest = Shapes::StructureShape.new(name: 'RegisterToWorkMailRequest')
133
145
  RegisterToWorkMailResponse = Shapes::StructureShape.new(name: 'RegisterToWorkMailResponse')
134
146
  ReservedNameException = Shapes::StructureShape.new(name: 'ReservedNameException')
@@ -141,6 +153,9 @@ module Aws::WorkMail
141
153
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
142
154
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
143
155
  Resources = Shapes::ListShape.new(name: 'Resources')
156
+ RetentionAction = Shapes::StringShape.new(name: 'RetentionAction')
157
+ RetentionPeriod = Shapes::IntegerShape.new(name: 'RetentionPeriod')
158
+ ShortString = Shapes::StringShape.new(name: 'ShortString')
144
159
  String = Shapes::StringShape.new(name: 'String')
145
160
  Tag = Shapes::StructureShape.new(name: 'Tag')
146
161
  TagKey = Shapes::StringShape.new(name: 'TagKey')
@@ -242,7 +257,7 @@ module Aws::WorkMail
242
257
  Delegate.add_member(:type, Shapes::ShapeRef.new(shape: MemberType, required: true, location_name: "Type"))
243
258
  Delegate.struct_class = Types::Delegate
244
259
 
245
- DeleteAccessControlRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, location_name: "OrganizationId"))
260
+ DeleteAccessControlRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
246
261
  DeleteAccessControlRuleRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessControlRuleName, required: true, location_name: "Name"))
247
262
  DeleteAccessControlRuleRequest.struct_class = Types::DeleteAccessControlRuleRequest
248
263
 
@@ -274,6 +289,12 @@ module Aws::WorkMail
274
289
 
275
290
  DeleteResourceResponse.struct_class = Types::DeleteResourceResponse
276
291
 
292
+ DeleteRetentionPolicyRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
293
+ DeleteRetentionPolicyRequest.add_member(:id, Shapes::ShapeRef.new(shape: ShortString, required: true, location_name: "Id"))
294
+ DeleteRetentionPolicyRequest.struct_class = Types::DeleteRetentionPolicyRequest
295
+
296
+ DeleteRetentionPolicyResponse.struct_class = Types::DeleteRetentionPolicyResponse
297
+
277
298
  DeleteUserRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
278
299
  DeleteUserRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
279
300
  DeleteUserRequest.struct_class = Types::DeleteUserRequest
@@ -372,6 +393,13 @@ module Aws::WorkMail
372
393
  EntityStateException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
373
394
  EntityStateException.struct_class = Types::EntityStateException
374
395
 
396
+ FolderConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: FolderName, required: true, location_name: "Name"))
397
+ FolderConfiguration.add_member(:action, Shapes::ShapeRef.new(shape: RetentionAction, required: true, location_name: "Action"))
398
+ FolderConfiguration.add_member(:period, Shapes::ShapeRef.new(shape: RetentionPeriod, location_name: "Period"))
399
+ FolderConfiguration.struct_class = Types::FolderConfiguration
400
+
401
+ FolderConfigurations.member = Shapes::ShapeRef.new(shape: FolderConfiguration)
402
+
375
403
  GetAccessControlEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
376
404
  GetAccessControlEffectRequest.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, required: true, location_name: "IpAddress"))
377
405
  GetAccessControlEffectRequest.add_member(:action, Shapes::ShapeRef.new(shape: AccessControlRuleAction, required: true, location_name: "Action"))
@@ -382,6 +410,15 @@ module Aws::WorkMail
382
410
  GetAccessControlEffectResponse.add_member(:matched_rules, Shapes::ShapeRef.new(shape: AccessControlRuleNameList, location_name: "MatchedRules"))
383
411
  GetAccessControlEffectResponse.struct_class = Types::GetAccessControlEffectResponse
384
412
 
413
+ GetDefaultRetentionPolicyRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
414
+ GetDefaultRetentionPolicyRequest.struct_class = Types::GetDefaultRetentionPolicyRequest
415
+
416
+ GetDefaultRetentionPolicyResponse.add_member(:id, Shapes::ShapeRef.new(shape: ShortString, location_name: "Id"))
417
+ GetDefaultRetentionPolicyResponse.add_member(:name, Shapes::ShapeRef.new(shape: ShortString, location_name: "Name"))
418
+ GetDefaultRetentionPolicyResponse.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
419
+ GetDefaultRetentionPolicyResponse.add_member(:folder_configurations, Shapes::ShapeRef.new(shape: FolderConfigurations, location_name: "FolderConfigurations"))
420
+ GetDefaultRetentionPolicyResponse.struct_class = Types::GetDefaultRetentionPolicyResponse
421
+
385
422
  GetMailboxDetailsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
386
423
  GetMailboxDetailsRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
387
424
  GetMailboxDetailsRequest.struct_class = Types::GetMailboxDetailsRequest
@@ -565,6 +602,15 @@ module Aws::WorkMail
565
602
 
566
603
  PutMailboxPermissionsResponse.struct_class = Types::PutMailboxPermissionsResponse
567
604
 
605
+ PutRetentionPolicyRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
606
+ PutRetentionPolicyRequest.add_member(:id, Shapes::ShapeRef.new(shape: ShortString, location_name: "Id"))
607
+ PutRetentionPolicyRequest.add_member(:name, Shapes::ShapeRef.new(shape: ShortString, required: true, location_name: "Name"))
608
+ PutRetentionPolicyRequest.add_member(:description, Shapes::ShapeRef.new(shape: PolicyDescription, location_name: "Description"))
609
+ PutRetentionPolicyRequest.add_member(:folder_configurations, Shapes::ShapeRef.new(shape: FolderConfigurations, required: true, location_name: "FolderConfigurations"))
610
+ PutRetentionPolicyRequest.struct_class = Types::PutRetentionPolicyRequest
611
+
612
+ PutRetentionPolicyResponse.struct_class = Types::PutRetentionPolicyResponse
613
+
568
614
  RegisterToWorkMailRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
569
615
  RegisterToWorkMailRequest.add_member(:entity_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "EntityId"))
570
616
  RegisterToWorkMailRequest.add_member(:email, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "Email"))
@@ -835,6 +881,17 @@ module Aws::WorkMail
835
881
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
836
882
  end)
837
883
 
884
+ api.add_operation(:delete_retention_policy, Seahorse::Model::Operation.new.tap do |o|
885
+ o.name = "DeleteRetentionPolicy"
886
+ o.http_method = "POST"
887
+ o.http_request_uri = "/"
888
+ o.input = Shapes::ShapeRef.new(shape: DeleteRetentionPolicyRequest)
889
+ o.output = Shapes::ShapeRef.new(shape: DeleteRetentionPolicyResponse)
890
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
891
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
892
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
893
+ end)
894
+
838
895
  api.add_operation(:delete_user, Seahorse::Model::Operation.new.tap do |o|
839
896
  o.name = "DeleteUser"
840
897
  o.http_method = "POST"
@@ -950,6 +1007,18 @@ module Aws::WorkMail
950
1007
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
951
1008
  end)
952
1009
 
1010
+ api.add_operation(:get_default_retention_policy, Seahorse::Model::Operation.new.tap do |o|
1011
+ o.name = "GetDefaultRetentionPolicy"
1012
+ o.http_method = "POST"
1013
+ o.http_request_uri = "/"
1014
+ o.input = Shapes::ShapeRef.new(shape: GetDefaultRetentionPolicyRequest)
1015
+ o.output = Shapes::ShapeRef.new(shape: GetDefaultRetentionPolicyResponse)
1016
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1017
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1018
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1019
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1020
+ end)
1021
+
953
1022
  api.add_operation(:get_mailbox_details, Seahorse::Model::Operation.new.tap do |o|
954
1023
  o.name = "GetMailboxDetails"
955
1024
  o.http_method = "POST"
@@ -1148,6 +1217,18 @@ module Aws::WorkMail
1148
1217
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1149
1218
  end)
1150
1219
 
1220
+ api.add_operation(:put_retention_policy, Seahorse::Model::Operation.new.tap do |o|
1221
+ o.name = "PutRetentionPolicy"
1222
+ o.http_method = "POST"
1223
+ o.http_request_uri = "/"
1224
+ o.input = Shapes::ShapeRef.new(shape: PutRetentionPolicyRequest)
1225
+ o.output = Shapes::ShapeRef.new(shape: PutRetentionPolicyResponse)
1226
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1227
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1228
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1229
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1230
+ end)
1231
+
1151
1232
  api.add_operation(:register_to_work_mail, Seahorse::Model::Operation.new.tap do |o|
1152
1233
  o.name = "RegisterToWorkMail"
1153
1234
  o.http_method = "POST"