aws-sdk-workmail 1.20.0 → 1.25.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: abcf0d3fe9c74b6e9acab706ad70ba749b67af87
4
- data.tar.gz: dd567f3a0d0e9cc72129ccbf4545ac903fbf4716
2
+ SHA256:
3
+ metadata.gz: d98fc7d663cab3fe44f4f054b359e6d7559e46f8cf5ea3216c7b37246e58ac08
4
+ data.tar.gz: ade93656f387b4639f3d4cab1bcf51b046ed60a169757bb8c53df4d459171807
5
5
  SHA512:
6
- metadata.gz: 7a4245226613f72de0c24f02b03c8c261b7c37913bf938e65d5906aa17e7017c8b53e95f1f912dcd699e6edbb9205d5ea3489516fd693d7e1b0eba5cc9793cff
7
- data.tar.gz: 909bbae39a1a3aa689739b66830fede36d3a23279306db11016e3807cf0dfdab3a24a82cd66c658bc4330b30e21dd7a9ee5264ecdf2ed623da41336692cf41b7
6
+ metadata.gz: eae4710e7a0df1f81d6859054c305df36934fb42c781bec508786ffac864534d1f5ca15564877761a7515e4f7b17e59c678a5e30583b0fc6c103a4d0cf37da03
7
+ data.tar.gz: 14047e5094f725e46975663d126195c637b91a059a30ddd813c46a52f39b4d56a5248eb8feec21b1ca8a7c74c83bfe4c4a2f57018f264d7a00e25d0c3b7754bf
@@ -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.20.0'
48
+ GEM_VERSION = '1.25.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:workmail)
31
31
 
32
32
  module Aws::WorkMail
33
+ # An API client for WorkMail. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::WorkMail::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::WorkMail
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::WorkMail
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::WorkMail
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::WorkMail
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::WorkMail
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::WorkMail
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @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.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::WorkMail
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @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.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -219,16 +274,15 @@ module Aws::WorkMail
219
274
  # requests through. Formatted like 'http://proxy.com:123'.
220
275
  #
221
276
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
277
+ # seconds to wait when opening a HTTP session before raising a
223
278
  # `Timeout::Error`.
224
279
  #
225
280
  # @option options [Integer] :http_read_timeout (60) The default
226
281
  # 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}.
282
+ # safely be set per-request on the session.
229
283
  #
230
284
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
285
+ # seconds a connection is allowed to sit idle before it is
232
286
  # considered stale. Stale connections are closed and removed
233
287
  # from the pool before making a request.
234
288
  #
@@ -237,7 +291,7 @@ module Aws::WorkMail
237
291
  # request body. This option has no effect unless the request has
238
292
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
293
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
294
+ # request on the session.
241
295
  #
242
296
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
297
  # HTTP debug output will be sent to the `:logger`.
@@ -468,6 +522,33 @@ module Aws::WorkMail
468
522
  req.send_request(options)
469
523
  end
470
524
 
525
+ # Deletes an access control rule for the specified WorkMail
526
+ # organization.
527
+ #
528
+ # @option params [required, String] :organization_id
529
+ # The identifier for the organization.
530
+ #
531
+ # @option params [required, String] :name
532
+ # The name of the access control rule.
533
+ #
534
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
535
+ #
536
+ # @example Request syntax with placeholder values
537
+ #
538
+ # resp = client.delete_access_control_rule({
539
+ # organization_id: "OrganizationId", # required
540
+ # name: "AccessControlRuleName", # required
541
+ # })
542
+ #
543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteAccessControlRule AWS API Documentation
544
+ #
545
+ # @overload delete_access_control_rule(params = {})
546
+ # @param [Hash] params ({})
547
+ def delete_access_control_rule(params = {}, options = {})
548
+ req = build_request(:delete_access_control_rule, params)
549
+ req.send_request(options)
550
+ end
551
+
471
552
  # Remove one or more specified aliases from a set of aliases for a given
472
553
  # user.
473
554
  #
@@ -587,6 +668,33 @@ module Aws::WorkMail
587
668
  req.send_request(options)
588
669
  end
589
670
 
671
+ # Deletes the specified retention policy from the specified
672
+ # organization.
673
+ #
674
+ # @option params [required, String] :organization_id
675
+ # The organization ID.
676
+ #
677
+ # @option params [required, String] :id
678
+ # The retention policy ID.
679
+ #
680
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
681
+ #
682
+ # @example Request syntax with placeholder values
683
+ #
684
+ # resp = client.delete_retention_policy({
685
+ # organization_id: "OrganizationId", # required
686
+ # id: "ShortString", # required
687
+ # })
688
+ #
689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteRetentionPolicy AWS API Documentation
690
+ #
691
+ # @overload delete_retention_policy(params = {})
692
+ # @param [Hash] params ({})
693
+ def delete_retention_policy(params = {}, options = {})
694
+ req = build_request(:delete_retention_policy, params)
695
+ req.send_request(options)
696
+ end
697
+
590
698
  # Deletes a user from Amazon WorkMail and all subsequent systems. Before
591
699
  # you can delete a user, the user state must be `DISABLED`. Use the
592
700
  # DescribeUser action to confirm the user state.
@@ -892,6 +1000,90 @@ module Aws::WorkMail
892
1000
  req.send_request(options)
893
1001
  end
894
1002
 
1003
+ # Gets the effects of an organization's access control rules as they
1004
+ # apply to a specified IPv4 address, access protocol action, or user ID.
1005
+ #
1006
+ # @option params [required, String] :organization_id
1007
+ # The identifier for the organization.
1008
+ #
1009
+ # @option params [required, String] :ip_address
1010
+ # The IPv4 address.
1011
+ #
1012
+ # @option params [required, String] :action
1013
+ # The access protocol action. Valid values include `ActiveSync`,
1014
+ # `AutoDiscover`, `EWS`, `IMAP`, `SMTP`, `WindowsOutlook`, and
1015
+ # `WebMail`.
1016
+ #
1017
+ # @option params [required, String] :user_id
1018
+ # The user ID.
1019
+ #
1020
+ # @return [Types::GetAccessControlEffectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1021
+ #
1022
+ # * {Types::GetAccessControlEffectResponse#effect #effect} => String
1023
+ # * {Types::GetAccessControlEffectResponse#matched_rules #matched_rules} => Array&lt;String&gt;
1024
+ #
1025
+ # @example Request syntax with placeholder values
1026
+ #
1027
+ # resp = client.get_access_control_effect({
1028
+ # organization_id: "OrganizationId", # required
1029
+ # ip_address: "IpAddress", # required
1030
+ # action: "AccessControlRuleAction", # required
1031
+ # user_id: "WorkMailIdentifier", # required
1032
+ # })
1033
+ #
1034
+ # @example Response structure
1035
+ #
1036
+ # resp.effect #=> String, one of "ALLOW", "DENY"
1037
+ # resp.matched_rules #=> Array
1038
+ # resp.matched_rules[0] #=> String
1039
+ #
1040
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetAccessControlEffect AWS API Documentation
1041
+ #
1042
+ # @overload get_access_control_effect(params = {})
1043
+ # @param [Hash] params ({})
1044
+ def get_access_control_effect(params = {}, options = {})
1045
+ req = build_request(:get_access_control_effect, params)
1046
+ req.send_request(options)
1047
+ end
1048
+
1049
+ # Gets the default retention policy details for the specified
1050
+ # organization.
1051
+ #
1052
+ # @option params [required, String] :organization_id
1053
+ # The organization ID.
1054
+ #
1055
+ # @return [Types::GetDefaultRetentionPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1056
+ #
1057
+ # * {Types::GetDefaultRetentionPolicyResponse#id #id} => String
1058
+ # * {Types::GetDefaultRetentionPolicyResponse#name #name} => String
1059
+ # * {Types::GetDefaultRetentionPolicyResponse#description #description} => String
1060
+ # * {Types::GetDefaultRetentionPolicyResponse#folder_configurations #folder_configurations} => Array&lt;Types::FolderConfiguration&gt;
1061
+ #
1062
+ # @example Request syntax with placeholder values
1063
+ #
1064
+ # resp = client.get_default_retention_policy({
1065
+ # organization_id: "OrganizationId", # required
1066
+ # })
1067
+ #
1068
+ # @example Response structure
1069
+ #
1070
+ # resp.id #=> String
1071
+ # resp.name #=> String
1072
+ # resp.description #=> String
1073
+ # resp.folder_configurations #=> Array
1074
+ # resp.folder_configurations[0].name #=> String, one of "INBOX", "DELETED_ITEMS", "SENT_ITEMS", "DRAFTS", "JUNK_EMAIL"
1075
+ # resp.folder_configurations[0].action #=> String, one of "NONE", "DELETE", "PERMANENTLY_DELETE"
1076
+ # resp.folder_configurations[0].period #=> Integer
1077
+ #
1078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetDefaultRetentionPolicy AWS API Documentation
1079
+ #
1080
+ # @overload get_default_retention_policy(params = {})
1081
+ # @param [Hash] params ({})
1082
+ def get_default_retention_policy(params = {}, options = {})
1083
+ req = build_request(:get_default_retention_policy, params)
1084
+ req.send_request(options)
1085
+ end
1086
+
895
1087
  # Requests a user's mailbox details for a specified organization and
896
1088
  # user.
897
1089
  #
@@ -928,6 +1120,51 @@ module Aws::WorkMail
928
1120
  req.send_request(options)
929
1121
  end
930
1122
 
1123
+ # Lists the access control rules for the specified organization.
1124
+ #
1125
+ # @option params [required, String] :organization_id
1126
+ # The identifier for the organization.
1127
+ #
1128
+ # @return [Types::ListAccessControlRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1129
+ #
1130
+ # * {Types::ListAccessControlRulesResponse#rules #rules} => Array&lt;Types::AccessControlRule&gt;
1131
+ #
1132
+ # @example Request syntax with placeholder values
1133
+ #
1134
+ # resp = client.list_access_control_rules({
1135
+ # organization_id: "OrganizationId", # required
1136
+ # })
1137
+ #
1138
+ # @example Response structure
1139
+ #
1140
+ # resp.rules #=> Array
1141
+ # resp.rules[0].name #=> String
1142
+ # resp.rules[0].effect #=> String, one of "ALLOW", "DENY"
1143
+ # resp.rules[0].description #=> String
1144
+ # resp.rules[0].ip_ranges #=> Array
1145
+ # resp.rules[0].ip_ranges[0] #=> String
1146
+ # resp.rules[0].not_ip_ranges #=> Array
1147
+ # resp.rules[0].not_ip_ranges[0] #=> String
1148
+ # resp.rules[0].actions #=> Array
1149
+ # resp.rules[0].actions[0] #=> String
1150
+ # resp.rules[0].not_actions #=> Array
1151
+ # resp.rules[0].not_actions[0] #=> String
1152
+ # resp.rules[0].user_ids #=> Array
1153
+ # resp.rules[0].user_ids[0] #=> String
1154
+ # resp.rules[0].not_user_ids #=> Array
1155
+ # resp.rules[0].not_user_ids[0] #=> String
1156
+ # resp.rules[0].date_created #=> Time
1157
+ # resp.rules[0].date_modified #=> Time
1158
+ #
1159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListAccessControlRules AWS API Documentation
1160
+ #
1161
+ # @overload list_access_control_rules(params = {})
1162
+ # @param [Hash] params ({})
1163
+ def list_access_control_rules(params = {}, options = {})
1164
+ req = build_request(:list_access_control_rules, params)
1165
+ req.send_request(options)
1166
+ end
1167
+
931
1168
  # Creates a paginated call to list the aliases associated with a given
932
1169
  # entity.
933
1170
  #
@@ -949,6 +1186,8 @@ module Aws::WorkMail
949
1186
  # * {Types::ListAliasesResponse#aliases #aliases} => Array&lt;String&gt;
950
1187
  # * {Types::ListAliasesResponse#next_token #next_token} => String
951
1188
  #
1189
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1190
+ #
952
1191
  # @example Request syntax with placeholder values
953
1192
  #
954
1193
  # resp = client.list_aliases({
@@ -995,6 +1234,8 @@ module Aws::WorkMail
995
1234
  # * {Types::ListGroupMembersResponse#members #members} => Array&lt;Types::Member&gt;
996
1235
  # * {Types::ListGroupMembersResponse#next_token #next_token} => String
997
1236
  #
1237
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1238
+ #
998
1239
  # @example Request syntax with placeholder values
999
1240
  #
1000
1241
  # resp = client.list_group_members({
@@ -1041,6 +1282,8 @@ module Aws::WorkMail
1041
1282
  # * {Types::ListGroupsResponse#groups #groups} => Array&lt;Types::Group&gt;
1042
1283
  # * {Types::ListGroupsResponse#next_token #next_token} => String
1043
1284
  #
1285
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1286
+ #
1044
1287
  # @example Request syntax with placeholder values
1045
1288
  #
1046
1289
  # resp = client.list_groups({
@@ -1092,6 +1335,8 @@ module Aws::WorkMail
1092
1335
  # * {Types::ListMailboxPermissionsResponse#permissions #permissions} => Array&lt;Types::Permission&gt;
1093
1336
  # * {Types::ListMailboxPermissionsResponse#next_token #next_token} => String
1094
1337
  #
1338
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1339
+ #
1095
1340
  # @example Request syntax with placeholder values
1096
1341
  #
1097
1342
  # resp = client.list_mailbox_permissions({
@@ -1119,7 +1364,7 @@ module Aws::WorkMail
1119
1364
  req.send_request(options)
1120
1365
  end
1121
1366
 
1122
- # Returns summaries of the customer's non-deleted organizations.
1367
+ # Returns summaries of the customer's organizations.
1123
1368
  #
1124
1369
  # @option params [String] :next_token
1125
1370
  # The token to use to retrieve the next page of results. The first call
@@ -1133,6 +1378,8 @@ module Aws::WorkMail
1133
1378
  # * {Types::ListOrganizationsResponse#organization_summaries #organization_summaries} => Array&lt;Types::OrganizationSummary&gt;
1134
1379
  # * {Types::ListOrganizationsResponse#next_token #next_token} => String
1135
1380
  #
1381
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1382
+ #
1136
1383
  # @example Request syntax with placeholder values
1137
1384
  #
1138
1385
  # resp = client.list_organizations({
@@ -1180,6 +1427,8 @@ module Aws::WorkMail
1180
1427
  # * {Types::ListResourceDelegatesResponse#delegates #delegates} => Array&lt;Types::Delegate&gt;
1181
1428
  # * {Types::ListResourceDelegatesResponse#next_token #next_token} => String
1182
1429
  #
1430
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1431
+ #
1183
1432
  # @example Request syntax with placeholder values
1184
1433
  #
1185
1434
  # resp = client.list_resource_delegates({
@@ -1222,6 +1471,8 @@ module Aws::WorkMail
1222
1471
  # * {Types::ListResourcesResponse#resources #resources} => Array&lt;Types::Resource&gt;
1223
1472
  # * {Types::ListResourcesResponse#next_token #next_token} => String
1224
1473
  #
1474
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1475
+ #
1225
1476
  # @example Request syntax with placeholder values
1226
1477
  #
1227
1478
  # resp = client.list_resources({
@@ -1298,6 +1549,8 @@ module Aws::WorkMail
1298
1549
  # * {Types::ListUsersResponse#users #users} => Array&lt;Types::User&gt;
1299
1550
  # * {Types::ListUsersResponse#next_token #next_token} => String
1300
1551
  #
1552
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1553
+ #
1301
1554
  # @example Request syntax with placeholder values
1302
1555
  #
1303
1556
  # resp = client.list_users({
@@ -1328,6 +1581,71 @@ module Aws::WorkMail
1328
1581
  req.send_request(options)
1329
1582
  end
1330
1583
 
1584
+ # Adds a new access control rule for the specified organization. The
1585
+ # rule allows or denies access to the organization for the specified
1586
+ # IPv4 addresses, access protocol actions, and user IDs. Adding a new
1587
+ # rule with the same name as an existing rule replaces the older rule.
1588
+ #
1589
+ # @option params [required, String] :name
1590
+ # The rule name.
1591
+ #
1592
+ # @option params [required, String] :effect
1593
+ # The rule effect.
1594
+ #
1595
+ # @option params [required, String] :description
1596
+ # The rule description.
1597
+ #
1598
+ # @option params [Array<String>] :ip_ranges
1599
+ # IPv4 CIDR ranges to include in the rule.
1600
+ #
1601
+ # @option params [Array<String>] :not_ip_ranges
1602
+ # IPv4 CIDR ranges to exclude from the rule.
1603
+ #
1604
+ # @option params [Array<String>] :actions
1605
+ # Access protocol actions to include in the rule. Valid values include
1606
+ # `ActiveSync`, `AutoDiscover`, `EWS`, `IMAP`, `SMTP`, `WindowsOutlook`,
1607
+ # and `WebMail`.
1608
+ #
1609
+ # @option params [Array<String>] :not_actions
1610
+ # Access protocol actions to exclude from the rule. Valid values include
1611
+ # `ActiveSync`, `AutoDiscover`, `EWS`, `IMAP`, `SMTP`, `WindowsOutlook`,
1612
+ # and `WebMail`.
1613
+ #
1614
+ # @option params [Array<String>] :user_ids
1615
+ # User IDs to include in the rule.
1616
+ #
1617
+ # @option params [Array<String>] :not_user_ids
1618
+ # User IDs to exclude from the rule.
1619
+ #
1620
+ # @option params [required, String] :organization_id
1621
+ # The identifier of the organization.
1622
+ #
1623
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1624
+ #
1625
+ # @example Request syntax with placeholder values
1626
+ #
1627
+ # resp = client.put_access_control_rule({
1628
+ # name: "AccessControlRuleName", # required
1629
+ # effect: "ALLOW", # required, accepts ALLOW, DENY
1630
+ # description: "AccessControlRuleDescription", # required
1631
+ # ip_ranges: ["IpRange"],
1632
+ # not_ip_ranges: ["IpRange"],
1633
+ # actions: ["AccessControlRuleAction"],
1634
+ # not_actions: ["AccessControlRuleAction"],
1635
+ # user_ids: ["WorkMailIdentifier"],
1636
+ # not_user_ids: ["WorkMailIdentifier"],
1637
+ # organization_id: "OrganizationId", # required
1638
+ # })
1639
+ #
1640
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutAccessControlRule AWS API Documentation
1641
+ #
1642
+ # @overload put_access_control_rule(params = {})
1643
+ # @param [Hash] params ({})
1644
+ def put_access_control_rule(params = {}, options = {})
1645
+ req = build_request(:put_access_control_rule, params)
1646
+ req.send_request(options)
1647
+ end
1648
+
1331
1649
  # Sets permissions for a user, group, or resource. This replaces any
1332
1650
  # pre-existing permissions.
1333
1651
  #
@@ -1372,6 +1690,50 @@ module Aws::WorkMail
1372
1690
  req.send_request(options)
1373
1691
  end
1374
1692
 
1693
+ # Puts a retention policy to the specified organization.
1694
+ #
1695
+ # @option params [required, String] :organization_id
1696
+ # The organization ID.
1697
+ #
1698
+ # @option params [String] :id
1699
+ # The retention policy ID.
1700
+ #
1701
+ # @option params [required, String] :name
1702
+ # The retention policy name.
1703
+ #
1704
+ # @option params [String] :description
1705
+ # The retention policy description.
1706
+ #
1707
+ # @option params [required, Array<Types::FolderConfiguration>] :folder_configurations
1708
+ # The retention policy folder configurations.
1709
+ #
1710
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1711
+ #
1712
+ # @example Request syntax with placeholder values
1713
+ #
1714
+ # resp = client.put_retention_policy({
1715
+ # organization_id: "OrganizationId", # required
1716
+ # id: "ShortString",
1717
+ # name: "ShortString", # required
1718
+ # description: "PolicyDescription",
1719
+ # folder_configurations: [ # required
1720
+ # {
1721
+ # name: "INBOX", # required, accepts INBOX, DELETED_ITEMS, SENT_ITEMS, DRAFTS, JUNK_EMAIL
1722
+ # action: "NONE", # required, accepts NONE, DELETE, PERMANENTLY_DELETE
1723
+ # period: 1,
1724
+ # },
1725
+ # ],
1726
+ # })
1727
+ #
1728
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutRetentionPolicy AWS API Documentation
1729
+ #
1730
+ # @overload put_retention_policy(params = {})
1731
+ # @param [Hash] params ({})
1732
+ def put_retention_policy(params = {}, options = {})
1733
+ req = build_request(:put_retention_policy, params)
1734
+ req.send_request(options)
1735
+ end
1736
+
1375
1737
  # Registers an existing and disabled user, group, or resource for Amazon
1376
1738
  # WorkMail use by associating a mailbox and calendaring capabilities. It
1377
1739
  # performs no change if the user, group, or resource is enabled and
@@ -1386,7 +1748,7 @@ module Aws::WorkMail
1386
1748
  #
1387
1749
  #
1388
1750
  #
1389
- # [1]: https://aws.amazon.com//workmail/pricing
1751
+ # [1]: https://aws.amazon.com/workmail/pricing
1390
1752
  #
1391
1753
  # @option params [required, String] :organization_id
1392
1754
  # The identifier for the organization under which the user, group, or
@@ -1627,7 +1989,7 @@ module Aws::WorkMail
1627
1989
  params: params,
1628
1990
  config: config)
1629
1991
  context[:gem_name] = 'aws-sdk-workmail'
1630
- context[:gem_version] = '1.20.0'
1992
+ context[:gem_version] = '1.25.0'
1631
1993
  Seahorse::Client::Request.new(handlers, context)
1632
1994
  end
1633
1995