aws-sdk-workmail 1.20.0 → 1.25.0

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: 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