aws-sdk-workmail 1.21.0 → 1.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a5c1a31caca5a34b43b3793f9a5205aa5df5acf6
4
- data.tar.gz: 90bfa47e61f9cf814476d1c9e1a0ad9a0c9d43a0
2
+ SHA256:
3
+ metadata.gz: ed70c2f1707b432796fbcb7e7317467a787a09cbcd88d41b25d354b8c10b42d8
4
+ data.tar.gz: 62a69c41242f0e7ff71e940906f66522b95c8b89c3c3faed15bcc425016acad8
5
5
  SHA512:
6
- metadata.gz: c6dd425a6372cb24aa40b50059d977443be97a94625fc3cd7c0222727860e2c3bb72db6185cdfb769999ef1aab1fdb3af342bd682bb786b82e809ecf6366e8db
7
- data.tar.gz: bef43b086a68227097bd674e097035472dac6dfd94b21db4acfb03e7d8fa0ff482e39ab655a3591bfc4fb448575c34514d67294180bdb9d9602d7d8fc409054e
6
+ metadata.gz: 402d6c475a06e0d4579351ab2f0924277f91bea7dec3ef61ea33156a5c7010c5e11ea12ae54e7a1cb6a7b0c7c9642926f5a9315aa354c8c338ee1c118de31568
7
+ data.tar.gz: 6809a4a4c5b7052408ab467d87c669e4334f08c5ea171066cd7861c8d3b81afceded6ac2d867360b5e0a0604a30627fb2dad78d269d2690d95152c3ee84a4672
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-workmail/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # work_mail = Aws::WorkMail::Client.new
28
+ # resp = work_mail.associate_delegate_to_resource(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from Amazon WorkMail all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from Amazon WorkMail are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::WorkMail::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all Amazon WorkMail API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-workmail/customizations'
42
45
  # @service
43
46
  module Aws::WorkMail
44
47
 
45
- GEM_VERSION = '1.21.0'
48
+ GEM_VERSION = '1.26.1'
46
49
 
47
50
  end
@@ -24,12 +24,25 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
24
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
25
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
26
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
28
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
29
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
29
30
 
30
31
  Aws::Plugins::GlobalConfiguration.add_identifier(:workmail)
31
32
 
32
33
  module Aws::WorkMail
34
+ # An API client for WorkMail. To construct a client, you need to configure a `:region` and `:credentials`.
35
+ #
36
+ # client = Aws::WorkMail::Client.new(
37
+ # region: region_name,
38
+ # credentials: credentials,
39
+ # # ...
40
+ # )
41
+ #
42
+ # For details on configuring region and credentials see
43
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
44
+ #
45
+ # See {#initialize} for a full list of supported configuration options.
33
46
  class Client < Seahorse::Client::Base
34
47
 
35
48
  include Aws::ClientStubs
@@ -57,6 +70,7 @@ module Aws::WorkMail
57
70
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
58
71
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
72
  add_plugin(Aws::Plugins::TransferEncoding)
73
+ add_plugin(Aws::Plugins::HttpChecksum)
60
74
  add_plugin(Aws::Plugins::SignatureV4)
61
75
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
62
76
 
@@ -93,7 +107,7 @@ module Aws::WorkMail
93
107
  # @option options [required, String] :region
94
108
  # The AWS region to connect to. The configured `:region` is
95
109
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
110
+ # a default `:region` is searched for in the following locations:
97
111
  #
98
112
  # * `Aws.config[:region]`
99
113
  # * `ENV['AWS_REGION']`
@@ -108,6 +122,12 @@ module Aws::WorkMail
108
122
  # When set to `true`, a thread polling for endpoints will be running in
109
123
  # the background every 60 secs (default). Defaults to `false`.
110
124
  #
125
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
126
+ # Used only in `adaptive` retry mode. When true, the request will sleep
127
+ # until there is sufficent client side capacity to retry the request.
128
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
129
+ # not retry instead of sleeping.
130
+ #
111
131
  # @option options [Boolean] :client_side_monitoring (false)
112
132
  # When `true`, client-side metrics will be collected for all API requests from
113
133
  # this client.
@@ -132,6 +152,10 @@ module Aws::WorkMail
132
152
  # When `true`, an attempt is made to coerce request parameters into
133
153
  # the required types.
134
154
  #
155
+ # @option options [Boolean] :correct_clock_skew (true)
156
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
157
+ # a clock skew correction and retry requests with skewed client clocks.
158
+ #
135
159
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
160
  # Set to true to disable SDK automatically adding host prefix
137
161
  # to default service endpoint when available.
@@ -139,7 +163,7 @@ module Aws::WorkMail
139
163
  # @option options [String] :endpoint
140
164
  # The client endpoint is normally constructed from the `:region`
141
165
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
166
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
143
167
  #
144
168
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
169
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +178,7 @@ module Aws::WorkMail
154
178
  # requests fetching endpoints information. Defaults to 60 sec.
155
179
  #
156
180
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
181
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
182
  #
159
183
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
184
  # The log formatter.
@@ -166,15 +190,29 @@ module Aws::WorkMail
166
190
  # The Logger instance to send log messages to. If this option
167
191
  # is not set, logging will be disabled.
168
192
  #
193
+ # @option options [Integer] :max_attempts (3)
194
+ # An integer representing the maximum number attempts that will be made for
195
+ # a single request, including the initial attempt. For example,
196
+ # setting this value to 5 will result in a request being retried up to
197
+ # 4 times. Used in `standard` and `adaptive` retry modes.
198
+ #
169
199
  # @option options [String] :profile ("default")
170
200
  # Used when loading credentials from the shared credentials file
171
201
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
202
  #
203
+ # @option options [Proc] :retry_backoff
204
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
205
+ # This option is only used in the `legacy` retry mode.
206
+ #
173
207
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
208
+ # The base delay in seconds used by the default backoff function. This option
209
+ # is only used in the `legacy` retry mode.
175
210
  #
176
211
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
212
+ # A delay randomiser function used by the default backoff function.
213
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
214
+ # otherwise a Proc that takes and returns a number. This option is only used
215
+ # in the `legacy` retry mode.
178
216
  #
179
217
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
218
  #
@@ -182,11 +220,30 @@ module Aws::WorkMail
182
220
  # The maximum number of times to retry failed requests. Only
183
221
  # ~ 500 level server errors and certain ~ 400 level client errors
184
222
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
223
+ # checksum errors, networking errors, timeout errors, auth errors,
224
+ # endpoint discovery, and errors from expired credentials.
225
+ # This option is only used in the `legacy` retry mode.
187
226
  #
188
227
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
228
+ # The maximum number of seconds to delay between retries (0 for no limit)
229
+ # used by the default backoff function. This option is only used in the
230
+ # `legacy` retry mode.
231
+ #
232
+ # @option options [String] :retry_mode ("legacy")
233
+ # Specifies which retry algorithm to use. Values are:
234
+ #
235
+ # * `legacy` - The pre-existing retry behavior. This is default value if
236
+ # no retry mode is provided.
237
+ #
238
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
239
+ # This includes support for retry quotas, which limit the number of
240
+ # unsuccessful retries a client can make.
241
+ #
242
+ # * `adaptive` - An experimental retry mode that includes all the
243
+ # functionality of `standard` mode along with automatic client side
244
+ # throttling. This is a provisional mode that may change behavior
245
+ # in the future.
246
+ #
190
247
  #
191
248
  # @option options [String] :secret_access_key
192
249
  #
@@ -219,16 +276,15 @@ module Aws::WorkMail
219
276
  # requests through. Formatted like 'http://proxy.com:123'.
220
277
  #
221
278
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
279
+ # seconds to wait when opening a HTTP session before raising a
223
280
  # `Timeout::Error`.
224
281
  #
225
282
  # @option options [Integer] :http_read_timeout (60) The default
226
283
  # number of seconds to wait for response data. This value can
227
- # safely be set
228
- # per-request on the session yeidled by {#session_for}.
284
+ # safely be set per-request on the session.
229
285
  #
230
286
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
287
+ # seconds a connection is allowed to sit idle before it is
232
288
  # considered stale. Stale connections are closed and removed
233
289
  # from the pool before making a request.
234
290
  #
@@ -237,7 +293,7 @@ module Aws::WorkMail
237
293
  # request body. This option has no effect unless the request has
238
294
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
295
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
296
+ # request on the session.
241
297
  #
242
298
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
299
  # HTTP debug output will be sent to the `:logger`.
@@ -471,7 +527,7 @@ module Aws::WorkMail
471
527
  # Deletes an access control rule for the specified WorkMail
472
528
  # organization.
473
529
  #
474
- # @option params [String] :organization_id
530
+ # @option params [required, String] :organization_id
475
531
  # The identifier for the organization.
476
532
  #
477
533
  # @option params [required, String] :name
@@ -482,7 +538,7 @@ module Aws::WorkMail
482
538
  # @example Request syntax with placeholder values
483
539
  #
484
540
  # resp = client.delete_access_control_rule({
485
- # organization_id: "OrganizationId",
541
+ # organization_id: "OrganizationId", # required
486
542
  # name: "AccessControlRuleName", # required
487
543
  # })
488
544
  #
@@ -614,6 +670,33 @@ module Aws::WorkMail
614
670
  req.send_request(options)
615
671
  end
616
672
 
673
+ # Deletes the specified retention policy from the specified
674
+ # organization.
675
+ #
676
+ # @option params [required, String] :organization_id
677
+ # The organization ID.
678
+ #
679
+ # @option params [required, String] :id
680
+ # The retention policy ID.
681
+ #
682
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
683
+ #
684
+ # @example Request syntax with placeholder values
685
+ #
686
+ # resp = client.delete_retention_policy({
687
+ # organization_id: "OrganizationId", # required
688
+ # id: "ShortString", # required
689
+ # })
690
+ #
691
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteRetentionPolicy AWS API Documentation
692
+ #
693
+ # @overload delete_retention_policy(params = {})
694
+ # @param [Hash] params ({})
695
+ def delete_retention_policy(params = {}, options = {})
696
+ req = build_request(:delete_retention_policy, params)
697
+ req.send_request(options)
698
+ end
699
+
617
700
  # Deletes a user from Amazon WorkMail and all subsequent systems. Before
618
701
  # you can delete a user, the user state must be `DISABLED`. Use the
619
702
  # DescribeUser action to confirm the user state.
@@ -965,6 +1048,44 @@ module Aws::WorkMail
965
1048
  req.send_request(options)
966
1049
  end
967
1050
 
1051
+ # Gets the default retention policy details for the specified
1052
+ # organization.
1053
+ #
1054
+ # @option params [required, String] :organization_id
1055
+ # The organization ID.
1056
+ #
1057
+ # @return [Types::GetDefaultRetentionPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1058
+ #
1059
+ # * {Types::GetDefaultRetentionPolicyResponse#id #id} => String
1060
+ # * {Types::GetDefaultRetentionPolicyResponse#name #name} => String
1061
+ # * {Types::GetDefaultRetentionPolicyResponse#description #description} => String
1062
+ # * {Types::GetDefaultRetentionPolicyResponse#folder_configurations #folder_configurations} => Array&lt;Types::FolderConfiguration&gt;
1063
+ #
1064
+ # @example Request syntax with placeholder values
1065
+ #
1066
+ # resp = client.get_default_retention_policy({
1067
+ # organization_id: "OrganizationId", # required
1068
+ # })
1069
+ #
1070
+ # @example Response structure
1071
+ #
1072
+ # resp.id #=> String
1073
+ # resp.name #=> String
1074
+ # resp.description #=> String
1075
+ # resp.folder_configurations #=> Array
1076
+ # resp.folder_configurations[0].name #=> String, one of "INBOX", "DELETED_ITEMS", "SENT_ITEMS", "DRAFTS", "JUNK_EMAIL"
1077
+ # resp.folder_configurations[0].action #=> String, one of "NONE", "DELETE", "PERMANENTLY_DELETE"
1078
+ # resp.folder_configurations[0].period #=> Integer
1079
+ #
1080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetDefaultRetentionPolicy AWS API Documentation
1081
+ #
1082
+ # @overload get_default_retention_policy(params = {})
1083
+ # @param [Hash] params ({})
1084
+ def get_default_retention_policy(params = {}, options = {})
1085
+ req = build_request(:get_default_retention_policy, params)
1086
+ req.send_request(options)
1087
+ end
1088
+
968
1089
  # Requests a user's mailbox details for a specified organization and
969
1090
  # user.
970
1091
  #
@@ -1067,6 +1188,8 @@ module Aws::WorkMail
1067
1188
  # * {Types::ListAliasesResponse#aliases #aliases} => Array&lt;String&gt;
1068
1189
  # * {Types::ListAliasesResponse#next_token #next_token} => String
1069
1190
  #
1191
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1192
+ #
1070
1193
  # @example Request syntax with placeholder values
1071
1194
  #
1072
1195
  # resp = client.list_aliases({
@@ -1113,6 +1236,8 @@ module Aws::WorkMail
1113
1236
  # * {Types::ListGroupMembersResponse#members #members} => Array&lt;Types::Member&gt;
1114
1237
  # * {Types::ListGroupMembersResponse#next_token #next_token} => String
1115
1238
  #
1239
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1240
+ #
1116
1241
  # @example Request syntax with placeholder values
1117
1242
  #
1118
1243
  # resp = client.list_group_members({
@@ -1159,6 +1284,8 @@ module Aws::WorkMail
1159
1284
  # * {Types::ListGroupsResponse#groups #groups} => Array&lt;Types::Group&gt;
1160
1285
  # * {Types::ListGroupsResponse#next_token #next_token} => String
1161
1286
  #
1287
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1288
+ #
1162
1289
  # @example Request syntax with placeholder values
1163
1290
  #
1164
1291
  # resp = client.list_groups({
@@ -1210,6 +1337,8 @@ module Aws::WorkMail
1210
1337
  # * {Types::ListMailboxPermissionsResponse#permissions #permissions} => Array&lt;Types::Permission&gt;
1211
1338
  # * {Types::ListMailboxPermissionsResponse#next_token #next_token} => String
1212
1339
  #
1340
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1341
+ #
1213
1342
  # @example Request syntax with placeholder values
1214
1343
  #
1215
1344
  # resp = client.list_mailbox_permissions({
@@ -1237,7 +1366,7 @@ module Aws::WorkMail
1237
1366
  req.send_request(options)
1238
1367
  end
1239
1368
 
1240
- # Returns summaries of the customer's non-deleted organizations.
1369
+ # Returns summaries of the customer's organizations.
1241
1370
  #
1242
1371
  # @option params [String] :next_token
1243
1372
  # The token to use to retrieve the next page of results. The first call
@@ -1251,6 +1380,8 @@ module Aws::WorkMail
1251
1380
  # * {Types::ListOrganizationsResponse#organization_summaries #organization_summaries} => Array&lt;Types::OrganizationSummary&gt;
1252
1381
  # * {Types::ListOrganizationsResponse#next_token #next_token} => String
1253
1382
  #
1383
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1384
+ #
1254
1385
  # @example Request syntax with placeholder values
1255
1386
  #
1256
1387
  # resp = client.list_organizations({
@@ -1298,6 +1429,8 @@ module Aws::WorkMail
1298
1429
  # * {Types::ListResourceDelegatesResponse#delegates #delegates} => Array&lt;Types::Delegate&gt;
1299
1430
  # * {Types::ListResourceDelegatesResponse#next_token #next_token} => String
1300
1431
  #
1432
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1433
+ #
1301
1434
  # @example Request syntax with placeholder values
1302
1435
  #
1303
1436
  # resp = client.list_resource_delegates({
@@ -1340,6 +1473,8 @@ module Aws::WorkMail
1340
1473
  # * {Types::ListResourcesResponse#resources #resources} => Array&lt;Types::Resource&gt;
1341
1474
  # * {Types::ListResourcesResponse#next_token #next_token} => String
1342
1475
  #
1476
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1477
+ #
1343
1478
  # @example Request syntax with placeholder values
1344
1479
  #
1345
1480
  # resp = client.list_resources({
@@ -1416,6 +1551,8 @@ module Aws::WorkMail
1416
1551
  # * {Types::ListUsersResponse#users #users} => Array&lt;Types::User&gt;
1417
1552
  # * {Types::ListUsersResponse#next_token #next_token} => String
1418
1553
  #
1554
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1555
+ #
1419
1556
  # @example Request syntax with placeholder values
1420
1557
  #
1421
1558
  # resp = client.list_users({
@@ -1555,6 +1692,50 @@ module Aws::WorkMail
1555
1692
  req.send_request(options)
1556
1693
  end
1557
1694
 
1695
+ # Puts a retention policy to the specified organization.
1696
+ #
1697
+ # @option params [required, String] :organization_id
1698
+ # The organization ID.
1699
+ #
1700
+ # @option params [String] :id
1701
+ # The retention policy ID.
1702
+ #
1703
+ # @option params [required, String] :name
1704
+ # The retention policy name.
1705
+ #
1706
+ # @option params [String] :description
1707
+ # The retention policy description.
1708
+ #
1709
+ # @option params [required, Array<Types::FolderConfiguration>] :folder_configurations
1710
+ # The retention policy folder configurations.
1711
+ #
1712
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1713
+ #
1714
+ # @example Request syntax with placeholder values
1715
+ #
1716
+ # resp = client.put_retention_policy({
1717
+ # organization_id: "OrganizationId", # required
1718
+ # id: "ShortString",
1719
+ # name: "ShortString", # required
1720
+ # description: "PolicyDescription",
1721
+ # folder_configurations: [ # required
1722
+ # {
1723
+ # name: "INBOX", # required, accepts INBOX, DELETED_ITEMS, SENT_ITEMS, DRAFTS, JUNK_EMAIL
1724
+ # action: "NONE", # required, accepts NONE, DELETE, PERMANENTLY_DELETE
1725
+ # period: 1,
1726
+ # },
1727
+ # ],
1728
+ # })
1729
+ #
1730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutRetentionPolicy AWS API Documentation
1731
+ #
1732
+ # @overload put_retention_policy(params = {})
1733
+ # @param [Hash] params ({})
1734
+ def put_retention_policy(params = {}, options = {})
1735
+ req = build_request(:put_retention_policy, params)
1736
+ req.send_request(options)
1737
+ end
1738
+
1558
1739
  # Registers an existing and disabled user, group, or resource for Amazon
1559
1740
  # WorkMail use by associating a mailbox and calendaring capabilities. It
1560
1741
  # performs no change if the user, group, or resource is enabled and
@@ -1810,7 +1991,7 @@ module Aws::WorkMail
1810
1991
  params: params,
1811
1992
  config: config)
1812
1993
  context[:gem_name] = 'aws-sdk-workmail'
1813
- context[:gem_version] = '1.21.0'
1994
+ context[:gem_version] = '1.26.1'
1814
1995
  Seahorse::Client::Request.new(handlers, context)
1815
1996
  end
1816
1997
 
@@ -46,6 +46,8 @@ module Aws::WorkMail
46
46
  DeleteMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsResponse')
47
47
  DeleteResourceRequest = Shapes::StructureShape.new(name: 'DeleteResourceRequest')
48
48
  DeleteResourceResponse = Shapes::StructureShape.new(name: 'DeleteResourceResponse')
49
+ DeleteRetentionPolicyRequest = Shapes::StructureShape.new(name: 'DeleteRetentionPolicyRequest')
50
+ DeleteRetentionPolicyResponse = Shapes::StructureShape.new(name: 'DeleteRetentionPolicyResponse')
49
51
  DeleteUserRequest = Shapes::StructureShape.new(name: 'DeleteUserRequest')
50
52
  DeleteUserResponse = Shapes::StructureShape.new(name: 'DeleteUserResponse')
51
53
  DeregisterFromWorkMailRequest = Shapes::StructureShape.new(name: 'DeregisterFromWorkMailRequest')
@@ -70,8 +72,13 @@ module Aws::WorkMail
70
72
  EntityNotFoundException = Shapes::StructureShape.new(name: 'EntityNotFoundException')
71
73
  EntityState = Shapes::StringShape.new(name: 'EntityState')
72
74
  EntityStateException = Shapes::StructureShape.new(name: 'EntityStateException')
75
+ FolderConfiguration = Shapes::StructureShape.new(name: 'FolderConfiguration')
76
+ FolderConfigurations = Shapes::ListShape.new(name: 'FolderConfigurations')
77
+ FolderName = Shapes::StringShape.new(name: 'FolderName')
73
78
  GetAccessControlEffectRequest = Shapes::StructureShape.new(name: 'GetAccessControlEffectRequest')
74
79
  GetAccessControlEffectResponse = Shapes::StructureShape.new(name: 'GetAccessControlEffectResponse')
80
+ GetDefaultRetentionPolicyRequest = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyRequest')
81
+ GetDefaultRetentionPolicyResponse = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyResponse')
75
82
  GetMailboxDetailsRequest = Shapes::StructureShape.new(name: 'GetMailboxDetailsRequest')
76
83
  GetMailboxDetailsResponse = Shapes::StructureShape.new(name: 'GetMailboxDetailsResponse')
77
84
  Group = Shapes::StructureShape.new(name: 'Group')
@@ -125,10 +132,13 @@ module Aws::WorkMail
125
132
  PermissionType = Shapes::StringShape.new(name: 'PermissionType')
126
133
  PermissionValues = Shapes::ListShape.new(name: 'PermissionValues')
127
134
  Permissions = Shapes::ListShape.new(name: 'Permissions')
135
+ PolicyDescription = Shapes::StringShape.new(name: 'PolicyDescription')
128
136
  PutAccessControlRuleRequest = Shapes::StructureShape.new(name: 'PutAccessControlRuleRequest')
129
137
  PutAccessControlRuleResponse = Shapes::StructureShape.new(name: 'PutAccessControlRuleResponse')
130
138
  PutMailboxPermissionsRequest = Shapes::StructureShape.new(name: 'PutMailboxPermissionsRequest')
131
139
  PutMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'PutMailboxPermissionsResponse')
140
+ PutRetentionPolicyRequest = Shapes::StructureShape.new(name: 'PutRetentionPolicyRequest')
141
+ PutRetentionPolicyResponse = Shapes::StructureShape.new(name: 'PutRetentionPolicyResponse')
132
142
  RegisterToWorkMailRequest = Shapes::StructureShape.new(name: 'RegisterToWorkMailRequest')
133
143
  RegisterToWorkMailResponse = Shapes::StructureShape.new(name: 'RegisterToWorkMailResponse')
134
144
  ReservedNameException = Shapes::StructureShape.new(name: 'ReservedNameException')
@@ -141,6 +151,9 @@ module Aws::WorkMail
141
151
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
142
152
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
143
153
  Resources = Shapes::ListShape.new(name: 'Resources')
154
+ RetentionAction = Shapes::StringShape.new(name: 'RetentionAction')
155
+ RetentionPeriod = Shapes::IntegerShape.new(name: 'RetentionPeriod')
156
+ ShortString = Shapes::StringShape.new(name: 'ShortString')
144
157
  String = Shapes::StringShape.new(name: 'String')
145
158
  Tag = Shapes::StructureShape.new(name: 'Tag')
146
159
  TagKey = Shapes::StringShape.new(name: 'TagKey')
@@ -242,7 +255,7 @@ module Aws::WorkMail
242
255
  Delegate.add_member(:type, Shapes::ShapeRef.new(shape: MemberType, required: true, location_name: "Type"))
243
256
  Delegate.struct_class = Types::Delegate
244
257
 
245
- DeleteAccessControlRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, location_name: "OrganizationId"))
258
+ DeleteAccessControlRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
246
259
  DeleteAccessControlRuleRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessControlRuleName, required: true, location_name: "Name"))
247
260
  DeleteAccessControlRuleRequest.struct_class = Types::DeleteAccessControlRuleRequest
248
261
 
@@ -274,6 +287,12 @@ module Aws::WorkMail
274
287
 
275
288
  DeleteResourceResponse.struct_class = Types::DeleteResourceResponse
276
289
 
290
+ DeleteRetentionPolicyRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
291
+ DeleteRetentionPolicyRequest.add_member(:id, Shapes::ShapeRef.new(shape: ShortString, required: true, location_name: "Id"))
292
+ DeleteRetentionPolicyRequest.struct_class = Types::DeleteRetentionPolicyRequest
293
+
294
+ DeleteRetentionPolicyResponse.struct_class = Types::DeleteRetentionPolicyResponse
295
+
277
296
  DeleteUserRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
278
297
  DeleteUserRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
279
298
  DeleteUserRequest.struct_class = Types::DeleteUserRequest
@@ -372,6 +391,13 @@ module Aws::WorkMail
372
391
  EntityStateException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
373
392
  EntityStateException.struct_class = Types::EntityStateException
374
393
 
394
+ FolderConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: FolderName, required: true, location_name: "Name"))
395
+ FolderConfiguration.add_member(:action, Shapes::ShapeRef.new(shape: RetentionAction, required: true, location_name: "Action"))
396
+ FolderConfiguration.add_member(:period, Shapes::ShapeRef.new(shape: RetentionPeriod, location_name: "Period"))
397
+ FolderConfiguration.struct_class = Types::FolderConfiguration
398
+
399
+ FolderConfigurations.member = Shapes::ShapeRef.new(shape: FolderConfiguration)
400
+
375
401
  GetAccessControlEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
376
402
  GetAccessControlEffectRequest.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, required: true, location_name: "IpAddress"))
377
403
  GetAccessControlEffectRequest.add_member(:action, Shapes::ShapeRef.new(shape: AccessControlRuleAction, required: true, location_name: "Action"))
@@ -382,6 +408,15 @@ module Aws::WorkMail
382
408
  GetAccessControlEffectResponse.add_member(:matched_rules, Shapes::ShapeRef.new(shape: AccessControlRuleNameList, location_name: "MatchedRules"))
383
409
  GetAccessControlEffectResponse.struct_class = Types::GetAccessControlEffectResponse
384
410
 
411
+ GetDefaultRetentionPolicyRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
412
+ GetDefaultRetentionPolicyRequest.struct_class = Types::GetDefaultRetentionPolicyRequest
413
+
414
+ GetDefaultRetentionPolicyResponse.add_member(:id, Shapes::ShapeRef.new(shape: ShortString, location_name: "Id"))
415
+ GetDefaultRetentionPolicyResponse.add_member(:name, Shapes::ShapeRef.new(shape: ShortString, location_name: "Name"))
416
+ GetDefaultRetentionPolicyResponse.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
417
+ GetDefaultRetentionPolicyResponse.add_member(:folder_configurations, Shapes::ShapeRef.new(shape: FolderConfigurations, location_name: "FolderConfigurations"))
418
+ GetDefaultRetentionPolicyResponse.struct_class = Types::GetDefaultRetentionPolicyResponse
419
+
385
420
  GetMailboxDetailsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
386
421
  GetMailboxDetailsRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
387
422
  GetMailboxDetailsRequest.struct_class = Types::GetMailboxDetailsRequest
@@ -565,6 +600,15 @@ module Aws::WorkMail
565
600
 
566
601
  PutMailboxPermissionsResponse.struct_class = Types::PutMailboxPermissionsResponse
567
602
 
603
+ PutRetentionPolicyRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
604
+ PutRetentionPolicyRequest.add_member(:id, Shapes::ShapeRef.new(shape: ShortString, location_name: "Id"))
605
+ PutRetentionPolicyRequest.add_member(:name, Shapes::ShapeRef.new(shape: ShortString, required: true, location_name: "Name"))
606
+ PutRetentionPolicyRequest.add_member(:description, Shapes::ShapeRef.new(shape: PolicyDescription, location_name: "Description"))
607
+ PutRetentionPolicyRequest.add_member(:folder_configurations, Shapes::ShapeRef.new(shape: FolderConfigurations, required: true, location_name: "FolderConfigurations"))
608
+ PutRetentionPolicyRequest.struct_class = Types::PutRetentionPolicyRequest
609
+
610
+ PutRetentionPolicyResponse.struct_class = Types::PutRetentionPolicyResponse
611
+
568
612
  RegisterToWorkMailRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
569
613
  RegisterToWorkMailRequest.add_member(:entity_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "EntityId"))
570
614
  RegisterToWorkMailRequest.add_member(:email, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "Email"))
@@ -835,6 +879,17 @@ module Aws::WorkMail
835
879
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
836
880
  end)
837
881
 
882
+ api.add_operation(:delete_retention_policy, Seahorse::Model::Operation.new.tap do |o|
883
+ o.name = "DeleteRetentionPolicy"
884
+ o.http_method = "POST"
885
+ o.http_request_uri = "/"
886
+ o.input = Shapes::ShapeRef.new(shape: DeleteRetentionPolicyRequest)
887
+ o.output = Shapes::ShapeRef.new(shape: DeleteRetentionPolicyResponse)
888
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
889
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
890
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
891
+ end)
892
+
838
893
  api.add_operation(:delete_user, Seahorse::Model::Operation.new.tap do |o|
839
894
  o.name = "DeleteUser"
840
895
  o.http_method = "POST"
@@ -950,6 +1005,18 @@ module Aws::WorkMail
950
1005
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
951
1006
  end)
952
1007
 
1008
+ api.add_operation(:get_default_retention_policy, Seahorse::Model::Operation.new.tap do |o|
1009
+ o.name = "GetDefaultRetentionPolicy"
1010
+ o.http_method = "POST"
1011
+ o.http_request_uri = "/"
1012
+ o.input = Shapes::ShapeRef.new(shape: GetDefaultRetentionPolicyRequest)
1013
+ o.output = Shapes::ShapeRef.new(shape: GetDefaultRetentionPolicyResponse)
1014
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1015
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1016
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1017
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1018
+ end)
1019
+
953
1020
  api.add_operation(:get_mailbox_details, Seahorse::Model::Operation.new.tap do |o|
954
1021
  o.name = "GetMailboxDetails"
955
1022
  o.http_method = "POST"
@@ -1148,6 +1215,18 @@ module Aws::WorkMail
1148
1215
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1149
1216
  end)
1150
1217
 
1218
+ api.add_operation(:put_retention_policy, Seahorse::Model::Operation.new.tap do |o|
1219
+ o.name = "PutRetentionPolicy"
1220
+ o.http_method = "POST"
1221
+ o.http_request_uri = "/"
1222
+ o.input = Shapes::ShapeRef.new(shape: PutRetentionPolicyRequest)
1223
+ o.output = Shapes::ShapeRef.new(shape: PutRetentionPolicyResponse)
1224
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1225
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1226
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1227
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1228
+ end)
1229
+
1151
1230
  api.add_operation(:register_to_work_mail, Seahorse::Model::Operation.new.tap do |o|
1152
1231
  o.name = "RegisterToWorkMail"
1153
1232
  o.http_method = "POST"
@@ -6,6 +6,47 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::WorkMail
9
+
10
+ # When WorkMail returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::WorkMail::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all WorkMail errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::WorkMail::Errors::ServiceError
18
+ # # rescues all WorkMail API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {DirectoryServiceAuthenticationFailedException}
29
+ # * {DirectoryUnavailableException}
30
+ # * {EmailAddressInUseException}
31
+ # * {EntityAlreadyRegisteredException}
32
+ # * {EntityNotFoundException}
33
+ # * {EntityStateException}
34
+ # * {InvalidConfigurationException}
35
+ # * {InvalidParameterException}
36
+ # * {InvalidPasswordException}
37
+ # * {LimitExceededException}
38
+ # * {MailDomainNotFoundException}
39
+ # * {MailDomainStateException}
40
+ # * {NameAvailabilityException}
41
+ # * {OrganizationNotFoundException}
42
+ # * {OrganizationStateException}
43
+ # * {ReservedNameException}
44
+ # * {ResourceNotFoundException}
45
+ # * {TooManyTagsException}
46
+ # * {UnsupportedOperationException}
47
+ #
48
+ # Additionally, error classes are dynamically generated for service errors based on the error code
49
+ # if they are not defined above.
9
50
  module Errors
10
51
 
11
52
  extend Aws::Errors::DynamicErrors
@@ -23,7 +64,6 @@ module Aws::WorkMail
23
64
  def message
24
65
  @message || @data[:message]
25
66
  end
26
-
27
67
  end
28
68
 
29
69
  class DirectoryUnavailableException < ServiceError
@@ -39,7 +79,6 @@ module Aws::WorkMail
39
79
  def message
40
80
  @message || @data[:message]
41
81
  end
42
-
43
82
  end
44
83
 
45
84
  class EmailAddressInUseException < ServiceError
@@ -55,7 +94,6 @@ module Aws::WorkMail
55
94
  def message
56
95
  @message || @data[:message]
57
96
  end
58
-
59
97
  end
60
98
 
61
99
  class EntityAlreadyRegisteredException < ServiceError
@@ -71,7 +109,6 @@ module Aws::WorkMail
71
109
  def message
72
110
  @message || @data[:message]
73
111
  end
74
-
75
112
  end
76
113
 
77
114
  class EntityNotFoundException < ServiceError
@@ -87,7 +124,6 @@ module Aws::WorkMail
87
124
  def message
88
125
  @message || @data[:message]
89
126
  end
90
-
91
127
  end
92
128
 
93
129
  class EntityStateException < ServiceError
@@ -103,7 +139,6 @@ module Aws::WorkMail
103
139
  def message
104
140
  @message || @data[:message]
105
141
  end
106
-
107
142
  end
108
143
 
109
144
  class InvalidConfigurationException < ServiceError
@@ -119,7 +154,6 @@ module Aws::WorkMail
119
154
  def message
120
155
  @message || @data[:message]
121
156
  end
122
-
123
157
  end
124
158
 
125
159
  class InvalidParameterException < ServiceError
@@ -135,7 +169,6 @@ module Aws::WorkMail
135
169
  def message
136
170
  @message || @data[:message]
137
171
  end
138
-
139
172
  end
140
173
 
141
174
  class InvalidPasswordException < ServiceError
@@ -151,7 +184,6 @@ module Aws::WorkMail
151
184
  def message
152
185
  @message || @data[:message]
153
186
  end
154
-
155
187
  end
156
188
 
157
189
  class LimitExceededException < ServiceError
@@ -167,7 +199,6 @@ module Aws::WorkMail
167
199
  def message
168
200
  @message || @data[:message]
169
201
  end
170
-
171
202
  end
172
203
 
173
204
  class MailDomainNotFoundException < ServiceError
@@ -183,7 +214,6 @@ module Aws::WorkMail
183
214
  def message
184
215
  @message || @data[:message]
185
216
  end
186
-
187
217
  end
188
218
 
189
219
  class MailDomainStateException < ServiceError
@@ -199,7 +229,6 @@ module Aws::WorkMail
199
229
  def message
200
230
  @message || @data[:message]
201
231
  end
202
-
203
232
  end
204
233
 
205
234
  class NameAvailabilityException < ServiceError
@@ -215,7 +244,6 @@ module Aws::WorkMail
215
244
  def message
216
245
  @message || @data[:message]
217
246
  end
218
-
219
247
  end
220
248
 
221
249
  class OrganizationNotFoundException < ServiceError
@@ -231,7 +259,6 @@ module Aws::WorkMail
231
259
  def message
232
260
  @message || @data[:message]
233
261
  end
234
-
235
262
  end
236
263
 
237
264
  class OrganizationStateException < ServiceError
@@ -247,7 +274,6 @@ module Aws::WorkMail
247
274
  def message
248
275
  @message || @data[:message]
249
276
  end
250
-
251
277
  end
252
278
 
253
279
  class ReservedNameException < ServiceError
@@ -263,7 +289,6 @@ module Aws::WorkMail
263
289
  def message
264
290
  @message || @data[:message]
265
291
  end
266
-
267
292
  end
268
293
 
269
294
  class ResourceNotFoundException < ServiceError
@@ -279,7 +304,6 @@ module Aws::WorkMail
279
304
  def message
280
305
  @message || @data[:message]
281
306
  end
282
-
283
307
  end
284
308
 
285
309
  class TooManyTagsException < ServiceError
@@ -295,7 +319,6 @@ module Aws::WorkMail
295
319
  def message
296
320
  @message || @data[:message]
297
321
  end
298
-
299
322
  end
300
323
 
301
324
  class UnsupportedOperationException < ServiceError
@@ -311,7 +334,6 @@ module Aws::WorkMail
311
334
  def message
312
335
  @message || @data[:message]
313
336
  end
314
-
315
337
  end
316
338
 
317
339
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::WorkMail
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -363,7 +363,7 @@ module Aws::WorkMail
363
363
  # data as a hash:
364
364
  #
365
365
  # {
366
- # organization_id: "OrganizationId",
366
+ # organization_id: "OrganizationId", # required
367
367
  # name: "AccessControlRuleName", # required
368
368
  # }
369
369
  #
@@ -517,6 +517,34 @@ module Aws::WorkMail
517
517
  #
518
518
  class DeleteResourceResponse < Aws::EmptyStructure; end
519
519
 
520
+ # @note When making an API call, you may pass DeleteRetentionPolicyRequest
521
+ # data as a hash:
522
+ #
523
+ # {
524
+ # organization_id: "OrganizationId", # required
525
+ # id: "ShortString", # required
526
+ # }
527
+ #
528
+ # @!attribute [rw] organization_id
529
+ # The organization ID.
530
+ # @return [String]
531
+ #
532
+ # @!attribute [rw] id
533
+ # The retention policy ID.
534
+ # @return [String]
535
+ #
536
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteRetentionPolicyRequest AWS API Documentation
537
+ #
538
+ class DeleteRetentionPolicyRequest < Struct.new(
539
+ :organization_id,
540
+ :id)
541
+ include Aws::Structure
542
+ end
543
+
544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteRetentionPolicyResponse AWS API Documentation
545
+ #
546
+ class DeleteRetentionPolicyResponse < Aws::EmptyStructure; end
547
+
520
548
  # @note When making an API call, you may pass DeleteUserRequest
521
549
  # data as a hash:
522
550
  #
@@ -1010,6 +1038,41 @@ module Aws::WorkMail
1010
1038
  include Aws::Structure
1011
1039
  end
1012
1040
 
1041
+ # The configuration applied to an organization's folders by its
1042
+ # retention policy.
1043
+ #
1044
+ # @note When making an API call, you may pass FolderConfiguration
1045
+ # data as a hash:
1046
+ #
1047
+ # {
1048
+ # name: "INBOX", # required, accepts INBOX, DELETED_ITEMS, SENT_ITEMS, DRAFTS, JUNK_EMAIL
1049
+ # action: "NONE", # required, accepts NONE, DELETE, PERMANENTLY_DELETE
1050
+ # period: 1,
1051
+ # }
1052
+ #
1053
+ # @!attribute [rw] name
1054
+ # The folder name.
1055
+ # @return [String]
1056
+ #
1057
+ # @!attribute [rw] action
1058
+ # The action to take on the folder contents at the end of the folder
1059
+ # configuration period.
1060
+ # @return [String]
1061
+ #
1062
+ # @!attribute [rw] period
1063
+ # The period of time at which the folder configuration action is
1064
+ # applied.
1065
+ # @return [Integer]
1066
+ #
1067
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/FolderConfiguration AWS API Documentation
1068
+ #
1069
+ class FolderConfiguration < Struct.new(
1070
+ :name,
1071
+ :action,
1072
+ :period)
1073
+ include Aws::Structure
1074
+ end
1075
+
1013
1076
  # @note When making an API call, you may pass GetAccessControlEffectRequest
1014
1077
  # data as a hash:
1015
1078
  #
@@ -1064,6 +1127,50 @@ module Aws::WorkMail
1064
1127
  include Aws::Structure
1065
1128
  end
1066
1129
 
1130
+ # @note When making an API call, you may pass GetDefaultRetentionPolicyRequest
1131
+ # data as a hash:
1132
+ #
1133
+ # {
1134
+ # organization_id: "OrganizationId", # required
1135
+ # }
1136
+ #
1137
+ # @!attribute [rw] organization_id
1138
+ # The organization ID.
1139
+ # @return [String]
1140
+ #
1141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetDefaultRetentionPolicyRequest AWS API Documentation
1142
+ #
1143
+ class GetDefaultRetentionPolicyRequest < Struct.new(
1144
+ :organization_id)
1145
+ include Aws::Structure
1146
+ end
1147
+
1148
+ # @!attribute [rw] id
1149
+ # The retention policy ID.
1150
+ # @return [String]
1151
+ #
1152
+ # @!attribute [rw] name
1153
+ # The retention policy name.
1154
+ # @return [String]
1155
+ #
1156
+ # @!attribute [rw] description
1157
+ # The retention policy description.
1158
+ # @return [String]
1159
+ #
1160
+ # @!attribute [rw] folder_configurations
1161
+ # The retention policy folder configurations.
1162
+ # @return [Array<Types::FolderConfiguration>]
1163
+ #
1164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetDefaultRetentionPolicyResponse AWS API Documentation
1165
+ #
1166
+ class GetDefaultRetentionPolicyResponse < Struct.new(
1167
+ :id,
1168
+ :name,
1169
+ :description,
1170
+ :folder_configurations)
1171
+ include Aws::Structure
1172
+ end
1173
+
1067
1174
  # @note When making an API call, you may pass GetMailboxDetailsRequest
1068
1175
  # data as a hash:
1069
1176
  #
@@ -1960,6 +2067,58 @@ module Aws::WorkMail
1960
2067
  #
1961
2068
  class PutMailboxPermissionsResponse < Aws::EmptyStructure; end
1962
2069
 
2070
+ # @note When making an API call, you may pass PutRetentionPolicyRequest
2071
+ # data as a hash:
2072
+ #
2073
+ # {
2074
+ # organization_id: "OrganizationId", # required
2075
+ # id: "ShortString",
2076
+ # name: "ShortString", # required
2077
+ # description: "PolicyDescription",
2078
+ # folder_configurations: [ # required
2079
+ # {
2080
+ # name: "INBOX", # required, accepts INBOX, DELETED_ITEMS, SENT_ITEMS, DRAFTS, JUNK_EMAIL
2081
+ # action: "NONE", # required, accepts NONE, DELETE, PERMANENTLY_DELETE
2082
+ # period: 1,
2083
+ # },
2084
+ # ],
2085
+ # }
2086
+ #
2087
+ # @!attribute [rw] organization_id
2088
+ # The organization ID.
2089
+ # @return [String]
2090
+ #
2091
+ # @!attribute [rw] id
2092
+ # The retention policy ID.
2093
+ # @return [String]
2094
+ #
2095
+ # @!attribute [rw] name
2096
+ # The retention policy name.
2097
+ # @return [String]
2098
+ #
2099
+ # @!attribute [rw] description
2100
+ # The retention policy description.
2101
+ # @return [String]
2102
+ #
2103
+ # @!attribute [rw] folder_configurations
2104
+ # The retention policy folder configurations.
2105
+ # @return [Array<Types::FolderConfiguration>]
2106
+ #
2107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutRetentionPolicyRequest AWS API Documentation
2108
+ #
2109
+ class PutRetentionPolicyRequest < Struct.new(
2110
+ :organization_id,
2111
+ :id,
2112
+ :name,
2113
+ :description,
2114
+ :folder_configurations)
2115
+ include Aws::Structure
2116
+ end
2117
+
2118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutRetentionPolicyResponse AWS API Documentation
2119
+ #
2120
+ class PutRetentionPolicyResponse < Aws::EmptyStructure; end
2121
+
1963
2122
  # @note When making an API call, you may pass RegisterToWorkMailRequest
1964
2123
  # data as a hash:
1965
2124
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-workmail
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.21.0
4
+ version: 1.26.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-12 00:00:00.000000000 Z
11
+ date: 2020-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.71.0
22
+ version: 3.99.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.71.0
32
+ version: 3.99.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - Amazon WorkMail