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.
@@ -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 ({})
@@ -8,6 +8,73 @@
8
8
  module Aws::WorkMail
9
9
  module Types
10
10
 
11
+ # A rule that controls access to an Amazon WorkMail organization.
12
+ #
13
+ # @!attribute [rw] name
14
+ # The rule name.
15
+ # @return [String]
16
+ #
17
+ # @!attribute [rw] effect
18
+ # The rule effect.
19
+ # @return [String]
20
+ #
21
+ # @!attribute [rw] description
22
+ # The rule description.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] ip_ranges
26
+ # IPv4 CIDR ranges to include in the rule.
27
+ # @return [Array<String>]
28
+ #
29
+ # @!attribute [rw] not_ip_ranges
30
+ # IPv4 CIDR ranges to exclude from the rule.
31
+ # @return [Array<String>]
32
+ #
33
+ # @!attribute [rw] actions
34
+ # Access protocol actions to include in the rule. Valid values include
35
+ # `ActiveSync`, `AutoDiscover`, `EWS`, `IMAP`, `SMTP`,
36
+ # `WindowsOutlook`, and `WebMail`.
37
+ # @return [Array<String>]
38
+ #
39
+ # @!attribute [rw] not_actions
40
+ # Access protocol actions to exclude from the rule. Valid values
41
+ # include `ActiveSync`, `AutoDiscover`, `EWS`, `IMAP`, `SMTP`,
42
+ # `WindowsOutlook`, and `WebMail`.
43
+ # @return [Array<String>]
44
+ #
45
+ # @!attribute [rw] user_ids
46
+ # User IDs to include in the rule.
47
+ # @return [Array<String>]
48
+ #
49
+ # @!attribute [rw] not_user_ids
50
+ # User IDs to exclude from the rule.
51
+ # @return [Array<String>]
52
+ #
53
+ # @!attribute [rw] date_created
54
+ # The date that the rule was created.
55
+ # @return [Time]
56
+ #
57
+ # @!attribute [rw] date_modified
58
+ # The date that the rule was modified.
59
+ # @return [Time]
60
+ #
61
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/AccessControlRule AWS API Documentation
62
+ #
63
+ class AccessControlRule < Struct.new(
64
+ :name,
65
+ :effect,
66
+ :description,
67
+ :ip_ranges,
68
+ :not_ip_ranges,
69
+ :actions,
70
+ :not_actions,
71
+ :user_ids,
72
+ :not_user_ids,
73
+ :date_created,
74
+ :date_modified)
75
+ include Aws::Structure
76
+ end
77
+
11
78
  # @note When making an API call, you may pass AssociateDelegateToResourceRequest
12
79
  # data as a hash:
13
80
  #
@@ -292,6 +359,34 @@ module Aws::WorkMail
292
359
  include Aws::Structure
293
360
  end
294
361
 
362
+ # @note When making an API call, you may pass DeleteAccessControlRuleRequest
363
+ # data as a hash:
364
+ #
365
+ # {
366
+ # organization_id: "OrganizationId", # required
367
+ # name: "AccessControlRuleName", # required
368
+ # }
369
+ #
370
+ # @!attribute [rw] organization_id
371
+ # The identifier for the organization.
372
+ # @return [String]
373
+ #
374
+ # @!attribute [rw] name
375
+ # The name of the access control rule.
376
+ # @return [String]
377
+ #
378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteAccessControlRuleRequest AWS API Documentation
379
+ #
380
+ class DeleteAccessControlRuleRequest < Struct.new(
381
+ :organization_id,
382
+ :name)
383
+ include Aws::Structure
384
+ end
385
+
386
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteAccessControlRuleResponse AWS API Documentation
387
+ #
388
+ class DeleteAccessControlRuleResponse < Aws::EmptyStructure; end
389
+
295
390
  # @note When making an API call, you may pass DeleteAliasRequest
296
391
  # data as a hash:
297
392
  #
@@ -422,6 +517,34 @@ module Aws::WorkMail
422
517
  #
423
518
  class DeleteResourceResponse < Aws::EmptyStructure; end
424
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
+
425
548
  # @note When making an API call, you may pass DeleteUserRequest
426
549
  # data as a hash:
427
550
  #
@@ -915,6 +1038,139 @@ module Aws::WorkMail
915
1038
  include Aws::Structure
916
1039
  end
917
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
+
1076
+ # @note When making an API call, you may pass GetAccessControlEffectRequest
1077
+ # data as a hash:
1078
+ #
1079
+ # {
1080
+ # organization_id: "OrganizationId", # required
1081
+ # ip_address: "IpAddress", # required
1082
+ # action: "AccessControlRuleAction", # required
1083
+ # user_id: "WorkMailIdentifier", # required
1084
+ # }
1085
+ #
1086
+ # @!attribute [rw] organization_id
1087
+ # The identifier for the organization.
1088
+ # @return [String]
1089
+ #
1090
+ # @!attribute [rw] ip_address
1091
+ # The IPv4 address.
1092
+ # @return [String]
1093
+ #
1094
+ # @!attribute [rw] action
1095
+ # The access protocol action. Valid values include `ActiveSync`,
1096
+ # `AutoDiscover`, `EWS`, `IMAP`, `SMTP`, `WindowsOutlook`, and
1097
+ # `WebMail`.
1098
+ # @return [String]
1099
+ #
1100
+ # @!attribute [rw] user_id
1101
+ # The user ID.
1102
+ # @return [String]
1103
+ #
1104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetAccessControlEffectRequest AWS API Documentation
1105
+ #
1106
+ class GetAccessControlEffectRequest < Struct.new(
1107
+ :organization_id,
1108
+ :ip_address,
1109
+ :action,
1110
+ :user_id)
1111
+ include Aws::Structure
1112
+ end
1113
+
1114
+ # @!attribute [rw] effect
1115
+ # The rule effect.
1116
+ # @return [String]
1117
+ #
1118
+ # @!attribute [rw] matched_rules
1119
+ # The rules that match the given parameters, resulting in an effect.
1120
+ # @return [Array<String>]
1121
+ #
1122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetAccessControlEffectResponse AWS API Documentation
1123
+ #
1124
+ class GetAccessControlEffectResponse < Struct.new(
1125
+ :effect,
1126
+ :matched_rules)
1127
+ include Aws::Structure
1128
+ end
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
+
918
1174
  # @note When making an API call, you may pass GetMailboxDetailsRequest
919
1175
  # data as a hash:
920
1176
  #
@@ -1049,6 +1305,35 @@ module Aws::WorkMail
1049
1305
  include Aws::Structure
1050
1306
  end
1051
1307
 
1308
+ # @note When making an API call, you may pass ListAccessControlRulesRequest
1309
+ # data as a hash:
1310
+ #
1311
+ # {
1312
+ # organization_id: "OrganizationId", # required
1313
+ # }
1314
+ #
1315
+ # @!attribute [rw] organization_id
1316
+ # The identifier for the organization.
1317
+ # @return [String]
1318
+ #
1319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListAccessControlRulesRequest AWS API Documentation
1320
+ #
1321
+ class ListAccessControlRulesRequest < Struct.new(
1322
+ :organization_id)
1323
+ include Aws::Structure
1324
+ end
1325
+
1326
+ # @!attribute [rw] rules
1327
+ # The access control rules.
1328
+ # @return [Array<Types::AccessControlRule>]
1329
+ #
1330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListAccessControlRulesResponse AWS API Documentation
1331
+ #
1332
+ class ListAccessControlRulesResponse < Struct.new(
1333
+ :rules)
1334
+ include Aws::Structure
1335
+ end
1336
+
1052
1337
  # @note When making an API call, you may pass ListAliasesRequest
1053
1338
  # data as a hash:
1054
1339
  #
@@ -1653,6 +1938,86 @@ module Aws::WorkMail
1653
1938
  include Aws::Structure
1654
1939
  end
1655
1940
 
1941
+ # @note When making an API call, you may pass PutAccessControlRuleRequest
1942
+ # data as a hash:
1943
+ #
1944
+ # {
1945
+ # name: "AccessControlRuleName", # required
1946
+ # effect: "ALLOW", # required, accepts ALLOW, DENY
1947
+ # description: "AccessControlRuleDescription", # required
1948
+ # ip_ranges: ["IpRange"],
1949
+ # not_ip_ranges: ["IpRange"],
1950
+ # actions: ["AccessControlRuleAction"],
1951
+ # not_actions: ["AccessControlRuleAction"],
1952
+ # user_ids: ["WorkMailIdentifier"],
1953
+ # not_user_ids: ["WorkMailIdentifier"],
1954
+ # organization_id: "OrganizationId", # required
1955
+ # }
1956
+ #
1957
+ # @!attribute [rw] name
1958
+ # The rule name.
1959
+ # @return [String]
1960
+ #
1961
+ # @!attribute [rw] effect
1962
+ # The rule effect.
1963
+ # @return [String]
1964
+ #
1965
+ # @!attribute [rw] description
1966
+ # The rule description.
1967
+ # @return [String]
1968
+ #
1969
+ # @!attribute [rw] ip_ranges
1970
+ # IPv4 CIDR ranges to include in the rule.
1971
+ # @return [Array<String>]
1972
+ #
1973
+ # @!attribute [rw] not_ip_ranges
1974
+ # IPv4 CIDR ranges to exclude from the rule.
1975
+ # @return [Array<String>]
1976
+ #
1977
+ # @!attribute [rw] actions
1978
+ # Access protocol actions to include in the rule. Valid values include
1979
+ # `ActiveSync`, `AutoDiscover`, `EWS`, `IMAP`, `SMTP`,
1980
+ # `WindowsOutlook`, and `WebMail`.
1981
+ # @return [Array<String>]
1982
+ #
1983
+ # @!attribute [rw] not_actions
1984
+ # Access protocol actions to exclude from the rule. Valid values
1985
+ # include `ActiveSync`, `AutoDiscover`, `EWS`, `IMAP`, `SMTP`,
1986
+ # `WindowsOutlook`, and `WebMail`.
1987
+ # @return [Array<String>]
1988
+ #
1989
+ # @!attribute [rw] user_ids
1990
+ # User IDs to include in the rule.
1991
+ # @return [Array<String>]
1992
+ #
1993
+ # @!attribute [rw] not_user_ids
1994
+ # User IDs to exclude from the rule.
1995
+ # @return [Array<String>]
1996
+ #
1997
+ # @!attribute [rw] organization_id
1998
+ # The identifier of the organization.
1999
+ # @return [String]
2000
+ #
2001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutAccessControlRuleRequest AWS API Documentation
2002
+ #
2003
+ class PutAccessControlRuleRequest < Struct.new(
2004
+ :name,
2005
+ :effect,
2006
+ :description,
2007
+ :ip_ranges,
2008
+ :not_ip_ranges,
2009
+ :actions,
2010
+ :not_actions,
2011
+ :user_ids,
2012
+ :not_user_ids,
2013
+ :organization_id)
2014
+ include Aws::Structure
2015
+ end
2016
+
2017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutAccessControlRuleResponse AWS API Documentation
2018
+ #
2019
+ class PutAccessControlRuleResponse < Aws::EmptyStructure; end
2020
+
1656
2021
  # @note When making an API call, you may pass PutMailboxPermissionsRequest
1657
2022
  # data as a hash:
1658
2023
  #
@@ -1702,6 +2067,58 @@ module Aws::WorkMail
1702
2067
  #
1703
2068
  class PutMailboxPermissionsResponse < Aws::EmptyStructure; end
1704
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
+
1705
2122
  # @note When making an API call, you may pass RegisterToWorkMailRequest
1706
2123
  # data as a hash:
1707
2124
  #