aws-sdk-workmail 1.36.0 → 1.37.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
2
  SHA256:
3
- metadata.gz: dda04d1b3b97636df23d342c6ed0c681b53eafb0dd51bf1975066ebc419db222
4
- data.tar.gz: ac2d561621e53271ed9596838695ef97081e79dbf590e20efd3129bd6fae6245
3
+ metadata.gz: a4ddb887155bcd7c78602804d0198310856130aa78c67354b9118254adb5a8c0
4
+ data.tar.gz: 2edf1f8e6d86de0d4620ea472000e1b8208403b2f93461cbf132a66334f050a9
5
5
  SHA512:
6
- metadata.gz: 4a0a59795a4db4e4e1c74d8a6920fdaeea2d2c5e9926af67824dbacd995d468af5d1cf8b3c761fdec91f41d613225ca7da34cc791a1a7cd40d20ff6ce49a5b51
7
- data.tar.gz: e1a22aee04470996fea101297697222af988f69284080700abcc8bc31cf42f6b469e2d83e04a831cb21b949e722ef07b2b10347e0b8d0c4331472887ad0e0d8b
6
+ metadata.gz: 0efcfdba8e07bdcdf191cde59b682d049e8fa801adfb9f85935b76c07211187b7b07a594340d8d7997870c6d67f872c3e2b2bca0860d27754e46a37738b348de
7
+ data.tar.gz: fba4d8535a32a40834491305d166a6802aebf611ebd6061c8c3f78c499d7c5f71147a531c32913617cc1311afd5fdbc7632dc830112476273e909bba837cc1d7
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.37.0 (2021-03-31)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for mobile device access rules management in Amazon WorkMail.
8
+
4
9
  1.36.0 (2021-03-10)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.36.0
1
+ 1.37.0
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-workmail/customizations'
48
48
  # @!group service
49
49
  module Aws::WorkMail
50
50
 
51
- GEM_VERSION = '1.36.0'
51
+ GEM_VERSION = '1.37.0'
52
52
 
53
53
  end
@@ -499,6 +499,91 @@ module Aws::WorkMail
499
499
  req.send_request(options)
500
500
  end
501
501
 
502
+ # Creates a new mobile device access rule for the specified Amazon
503
+ # WorkMail organization.
504
+ #
505
+ # @option params [required, String] :organization_id
506
+ # The Amazon WorkMail organization under which the rule will be created.
507
+ #
508
+ # @option params [String] :client_token
509
+ # The idempotency token for the client request.
510
+ #
511
+ # **A suitable default value is auto-generated.** You should normally
512
+ # not need to pass this option.**
513
+ #
514
+ # @option params [required, String] :name
515
+ # The rule name.
516
+ #
517
+ # @option params [String] :description
518
+ # The rule description.
519
+ #
520
+ # @option params [required, String] :effect
521
+ # The effect of the rule when it matches. Allowed values are `ALLOW` or
522
+ # `DENY`.
523
+ #
524
+ # @option params [Array<String>] :device_types
525
+ # Device types that the rule will match.
526
+ #
527
+ # @option params [Array<String>] :not_device_types
528
+ # Device types that the rule **will not** match. All other device types
529
+ # will match.
530
+ #
531
+ # @option params [Array<String>] :device_models
532
+ # Device models that the rule will match.
533
+ #
534
+ # @option params [Array<String>] :not_device_models
535
+ # Device models that the rule **will not** match. All other device
536
+ # models will match.
537
+ #
538
+ # @option params [Array<String>] :device_operating_systems
539
+ # Device operating systems that the rule will match.
540
+ #
541
+ # @option params [Array<String>] :not_device_operating_systems
542
+ # Device operating systems that the rule **will not** match. All other
543
+ # device operating systems will match.
544
+ #
545
+ # @option params [Array<String>] :device_user_agents
546
+ # Device user agents that the rule will match.
547
+ #
548
+ # @option params [Array<String>] :not_device_user_agents
549
+ # Device user agents that the rule **will not** match. All other device
550
+ # user agents will match.
551
+ #
552
+ # @return [Types::CreateMobileDeviceAccessRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
553
+ #
554
+ # * {Types::CreateMobileDeviceAccessRuleResponse#mobile_device_access_rule_id #mobile_device_access_rule_id} => String
555
+ #
556
+ # @example Request syntax with placeholder values
557
+ #
558
+ # resp = client.create_mobile_device_access_rule({
559
+ # organization_id: "OrganizationId", # required
560
+ # client_token: "IdempotencyClientToken",
561
+ # name: "MobileDeviceAccessRuleName", # required
562
+ # description: "MobileDeviceAccessRuleDescription",
563
+ # effect: "ALLOW", # required, accepts ALLOW, DENY
564
+ # device_types: ["DeviceType"],
565
+ # not_device_types: ["DeviceType"],
566
+ # device_models: ["DeviceModel"],
567
+ # not_device_models: ["DeviceModel"],
568
+ # device_operating_systems: ["DeviceOperatingSystem"],
569
+ # not_device_operating_systems: ["DeviceOperatingSystem"],
570
+ # device_user_agents: ["DeviceUserAgent"],
571
+ # not_device_user_agents: ["DeviceUserAgent"],
572
+ # })
573
+ #
574
+ # @example Response structure
575
+ #
576
+ # resp.mobile_device_access_rule_id #=> String
577
+ #
578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/CreateMobileDeviceAccessRule AWS API Documentation
579
+ #
580
+ # @overload create_mobile_device_access_rule(params = {})
581
+ # @param [Hash] params ({})
582
+ def create_mobile_device_access_rule(params = {}, options = {})
583
+ req = build_request(:create_mobile_device_access_rule, params)
584
+ req.send_request(options)
585
+ end
586
+
502
587
  # Creates a new Amazon WorkMail organization. Optionally, you can choose
503
588
  # to associate an existing AWS Directory Service directory with your
504
589
  # organization. If an AWS Directory Service directory ID is specified,
@@ -782,6 +867,33 @@ module Aws::WorkMail
782
867
  req.send_request(options)
783
868
  end
784
869
 
870
+ # Deletes a mobile device access rule for the specified Amazon WorkMail
871
+ # organization.
872
+ #
873
+ # @option params [required, String] :organization_id
874
+ # The Amazon WorkMail organization under which the rule will be deleted.
875
+ #
876
+ # @option params [required, String] :mobile_device_access_rule_id
877
+ # The identifier of the rule to be deleted.
878
+ #
879
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
880
+ #
881
+ # @example Request syntax with placeholder values
882
+ #
883
+ # resp = client.delete_mobile_device_access_rule({
884
+ # organization_id: "OrganizationId", # required
885
+ # mobile_device_access_rule_id: "MobileDeviceAccessRuleId", # required
886
+ # })
887
+ #
888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteMobileDeviceAccessRule AWS API Documentation
889
+ #
890
+ # @overload delete_mobile_device_access_rule(params = {})
891
+ # @param [Hash] params ({})
892
+ def delete_mobile_device_access_rule(params = {}, options = {})
893
+ req = build_request(:delete_mobile_device_access_rule, params)
894
+ req.send_request(options)
895
+ end
896
+
785
897
  # Deletes an Amazon WorkMail organization and all underlying AWS
786
898
  # resources managed by Amazon WorkMail as part of the organization. You
787
899
  # can choose whether to delete the associated directory. For more
@@ -1365,6 +1477,57 @@ module Aws::WorkMail
1365
1477
  req.send_request(options)
1366
1478
  end
1367
1479
 
1480
+ # Simulates the effect of the mobile device access rules for the given
1481
+ # attributes of a sample access event. Use this method to test the
1482
+ # effects of the current set of mobile device access rules for the
1483
+ # Amazon WorkMail organization for a particular user's attributes.
1484
+ #
1485
+ # @option params [required, String] :organization_id
1486
+ # The Amazon WorkMail organization to simulate the access effect for.
1487
+ #
1488
+ # @option params [String] :device_type
1489
+ # Device type the simulated user will report.
1490
+ #
1491
+ # @option params [String] :device_model
1492
+ # Device model the simulated user will report.
1493
+ #
1494
+ # @option params [String] :device_operating_system
1495
+ # Device operating system the simulated user will report.
1496
+ #
1497
+ # @option params [String] :device_user_agent
1498
+ # Device user agent the simulated user will report.
1499
+ #
1500
+ # @return [Types::GetMobileDeviceAccessEffectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1501
+ #
1502
+ # * {Types::GetMobileDeviceAccessEffectResponse#effect #effect} => String
1503
+ # * {Types::GetMobileDeviceAccessEffectResponse#matched_rules #matched_rules} => Array&lt;Types::MobileDeviceAccessMatchedRule&gt;
1504
+ #
1505
+ # @example Request syntax with placeholder values
1506
+ #
1507
+ # resp = client.get_mobile_device_access_effect({
1508
+ # organization_id: "OrganizationId", # required
1509
+ # device_type: "DeviceType",
1510
+ # device_model: "DeviceModel",
1511
+ # device_operating_system: "DeviceOperatingSystem",
1512
+ # device_user_agent: "DeviceUserAgent",
1513
+ # })
1514
+ #
1515
+ # @example Response structure
1516
+ #
1517
+ # resp.effect #=> String, one of "ALLOW", "DENY"
1518
+ # resp.matched_rules #=> Array
1519
+ # resp.matched_rules[0].mobile_device_access_rule_id #=> String
1520
+ # resp.matched_rules[0].name #=> String
1521
+ #
1522
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetMobileDeviceAccessEffect AWS API Documentation
1523
+ #
1524
+ # @overload get_mobile_device_access_effect(params = {})
1525
+ # @param [Hash] params ({})
1526
+ def get_mobile_device_access_effect(params = {}, options = {})
1527
+ req = build_request(:get_mobile_device_access_effect, params)
1528
+ req.send_request(options)
1529
+ end
1530
+
1368
1531
  # Lists the access control rules for the specified organization.
1369
1532
  #
1370
1533
  # @option params [required, String] :organization_id
@@ -1659,6 +1822,57 @@ module Aws::WorkMail
1659
1822
  req.send_request(options)
1660
1823
  end
1661
1824
 
1825
+ # Lists the mobile device access rules for the specified Amazon WorkMail
1826
+ # organization.
1827
+ #
1828
+ # @option params [required, String] :organization_id
1829
+ # The Amazon WorkMail organization for which to list the rules.
1830
+ #
1831
+ # @return [Types::ListMobileDeviceAccessRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1832
+ #
1833
+ # * {Types::ListMobileDeviceAccessRulesResponse#rules #rules} => Array&lt;Types::MobileDeviceAccessRule&gt;
1834
+ #
1835
+ # @example Request syntax with placeholder values
1836
+ #
1837
+ # resp = client.list_mobile_device_access_rules({
1838
+ # organization_id: "OrganizationId", # required
1839
+ # })
1840
+ #
1841
+ # @example Response structure
1842
+ #
1843
+ # resp.rules #=> Array
1844
+ # resp.rules[0].mobile_device_access_rule_id #=> String
1845
+ # resp.rules[0].name #=> String
1846
+ # resp.rules[0].description #=> String
1847
+ # resp.rules[0].effect #=> String, one of "ALLOW", "DENY"
1848
+ # resp.rules[0].device_types #=> Array
1849
+ # resp.rules[0].device_types[0] #=> String
1850
+ # resp.rules[0].not_device_types #=> Array
1851
+ # resp.rules[0].not_device_types[0] #=> String
1852
+ # resp.rules[0].device_models #=> Array
1853
+ # resp.rules[0].device_models[0] #=> String
1854
+ # resp.rules[0].not_device_models #=> Array
1855
+ # resp.rules[0].not_device_models[0] #=> String
1856
+ # resp.rules[0].device_operating_systems #=> Array
1857
+ # resp.rules[0].device_operating_systems[0] #=> String
1858
+ # resp.rules[0].not_device_operating_systems #=> Array
1859
+ # resp.rules[0].not_device_operating_systems[0] #=> String
1860
+ # resp.rules[0].device_user_agents #=> Array
1861
+ # resp.rules[0].device_user_agents[0] #=> String
1862
+ # resp.rules[0].not_device_user_agents #=> Array
1863
+ # resp.rules[0].not_device_user_agents[0] #=> String
1864
+ # resp.rules[0].date_created #=> Time
1865
+ # resp.rules[0].date_modified #=> Time
1866
+ #
1867
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListMobileDeviceAccessRules AWS API Documentation
1868
+ #
1869
+ # @overload list_mobile_device_access_rules(params = {})
1870
+ # @param [Hash] params ({})
1871
+ def list_mobile_device_access_rules(params = {}, options = {})
1872
+ req = build_request(:list_mobile_device_access_rules, params)
1873
+ req.send_request(options)
1874
+ end
1875
+
1662
1876
  # Returns summaries of the customer's organizations.
1663
1877
  #
1664
1878
  # @option params [String] :next_token
@@ -2266,6 +2480,82 @@ module Aws::WorkMail
2266
2480
  req.send_request(options)
2267
2481
  end
2268
2482
 
2483
+ # Updates a mobile device access rule for the specified Amazon WorkMail
2484
+ # organization.
2485
+ #
2486
+ # @option params [required, String] :organization_id
2487
+ # The Amazon WorkMail organization under which the rule will be updated.
2488
+ #
2489
+ # @option params [required, String] :mobile_device_access_rule_id
2490
+ # The identifier of the rule to be updated.
2491
+ #
2492
+ # @option params [required, String] :name
2493
+ # The updated rule name.
2494
+ #
2495
+ # @option params [String] :description
2496
+ # The updated rule description.
2497
+ #
2498
+ # @option params [required, String] :effect
2499
+ # The effect of the rule when it matches. Allowed values are `ALLOW` or
2500
+ # `DENY`.
2501
+ #
2502
+ # @option params [Array<String>] :device_types
2503
+ # Device types that the updated rule will match.
2504
+ #
2505
+ # @option params [Array<String>] :not_device_types
2506
+ # Device types that the updated rule **will not** match. All other
2507
+ # device types will match.
2508
+ #
2509
+ # @option params [Array<String>] :device_models
2510
+ # Device models that the updated rule will match.
2511
+ #
2512
+ # @option params [Array<String>] :not_device_models
2513
+ # Device models that the updated rule **will not** match. All other
2514
+ # device models will match.
2515
+ #
2516
+ # @option params [Array<String>] :device_operating_systems
2517
+ # Device operating systems that the updated rule will match.
2518
+ #
2519
+ # @option params [Array<String>] :not_device_operating_systems
2520
+ # Device operating systems that the updated rule **will not** match. All
2521
+ # other device operating systems will match.
2522
+ #
2523
+ # @option params [Array<String>] :device_user_agents
2524
+ # User agents that the updated rule will match.
2525
+ #
2526
+ # @option params [Array<String>] :not_device_user_agents
2527
+ # User agents that the updated rule **will not** match. All other user
2528
+ # agents will match.
2529
+ #
2530
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2531
+ #
2532
+ # @example Request syntax with placeholder values
2533
+ #
2534
+ # resp = client.update_mobile_device_access_rule({
2535
+ # organization_id: "OrganizationId", # required
2536
+ # mobile_device_access_rule_id: "MobileDeviceAccessRuleId", # required
2537
+ # name: "MobileDeviceAccessRuleName", # required
2538
+ # description: "MobileDeviceAccessRuleDescription",
2539
+ # effect: "ALLOW", # required, accepts ALLOW, DENY
2540
+ # device_types: ["DeviceType"],
2541
+ # not_device_types: ["DeviceType"],
2542
+ # device_models: ["DeviceModel"],
2543
+ # not_device_models: ["DeviceModel"],
2544
+ # device_operating_systems: ["DeviceOperatingSystem"],
2545
+ # not_device_operating_systems: ["DeviceOperatingSystem"],
2546
+ # device_user_agents: ["DeviceUserAgent"],
2547
+ # not_device_user_agents: ["DeviceUserAgent"],
2548
+ # })
2549
+ #
2550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateMobileDeviceAccessRule AWS API Documentation
2551
+ #
2552
+ # @overload update_mobile_device_access_rule(params = {})
2553
+ # @param [Hash] params ({})
2554
+ def update_mobile_device_access_rule(params = {}, options = {})
2555
+ req = build_request(:update_mobile_device_access_rule, params)
2556
+ req.send_request(options)
2557
+ end
2558
+
2269
2559
  # Updates the primary email for a user, group, or resource. The current
2270
2560
  # email is moved into the list of aliases (or swapped between an
2271
2561
  # existing alias and the current primary email), and the email provided
@@ -2354,7 +2644,7 @@ module Aws::WorkMail
2354
2644
  params: params,
2355
2645
  config: config)
2356
2646
  context[:gem_name] = 'aws-sdk-workmail'
2357
- context[:gem_version] = '1.36.0'
2647
+ context[:gem_version] = '1.37.0'
2358
2648
  Seahorse::Client::Request.new(handlers, context)
2359
2649
  end
2360
2650
 
@@ -35,6 +35,8 @@ module Aws::WorkMail
35
35
  CreateAliasResponse = Shapes::StructureShape.new(name: 'CreateAliasResponse')
36
36
  CreateGroupRequest = Shapes::StructureShape.new(name: 'CreateGroupRequest')
37
37
  CreateGroupResponse = Shapes::StructureShape.new(name: 'CreateGroupResponse')
38
+ CreateMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleRequest')
39
+ CreateMobileDeviceAccessRuleResponse = Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleResponse')
38
40
  CreateOrganizationRequest = Shapes::StructureShape.new(name: 'CreateOrganizationRequest')
39
41
  CreateOrganizationResponse = Shapes::StructureShape.new(name: 'CreateOrganizationResponse')
40
42
  CreateResourceRequest = Shapes::StructureShape.new(name: 'CreateResourceRequest')
@@ -50,6 +52,8 @@ module Aws::WorkMail
50
52
  DeleteGroupResponse = Shapes::StructureShape.new(name: 'DeleteGroupResponse')
51
53
  DeleteMailboxPermissionsRequest = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsRequest')
52
54
  DeleteMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsResponse')
55
+ DeleteMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessRuleRequest')
56
+ DeleteMobileDeviceAccessRuleResponse = Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessRuleResponse')
53
57
  DeleteOrganizationRequest = Shapes::StructureShape.new(name: 'DeleteOrganizationRequest')
54
58
  DeleteOrganizationResponse = Shapes::StructureShape.new(name: 'DeleteOrganizationResponse')
55
59
  DeleteResourceRequest = Shapes::StructureShape.new(name: 'DeleteResourceRequest')
@@ -71,6 +75,14 @@ module Aws::WorkMail
71
75
  DescribeUserRequest = Shapes::StructureShape.new(name: 'DescribeUserRequest')
72
76
  DescribeUserResponse = Shapes::StructureShape.new(name: 'DescribeUserResponse')
73
77
  Description = Shapes::StringShape.new(name: 'Description')
78
+ DeviceModel = Shapes::StringShape.new(name: 'DeviceModel')
79
+ DeviceModelList = Shapes::ListShape.new(name: 'DeviceModelList')
80
+ DeviceOperatingSystem = Shapes::StringShape.new(name: 'DeviceOperatingSystem')
81
+ DeviceOperatingSystemList = Shapes::ListShape.new(name: 'DeviceOperatingSystemList')
82
+ DeviceType = Shapes::StringShape.new(name: 'DeviceType')
83
+ DeviceTypeList = Shapes::ListShape.new(name: 'DeviceTypeList')
84
+ DeviceUserAgent = Shapes::StringShape.new(name: 'DeviceUserAgent')
85
+ DeviceUserAgentList = Shapes::ListShape.new(name: 'DeviceUserAgentList')
74
86
  DirectoryId = Shapes::StringShape.new(name: 'DirectoryId')
75
87
  DirectoryInUseException = Shapes::StructureShape.new(name: 'DirectoryInUseException')
76
88
  DirectoryServiceAuthenticationFailedException = Shapes::StructureShape.new(name: 'DirectoryServiceAuthenticationFailedException')
@@ -97,6 +109,8 @@ module Aws::WorkMail
97
109
  GetDefaultRetentionPolicyResponse = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyResponse')
98
110
  GetMailboxDetailsRequest = Shapes::StructureShape.new(name: 'GetMailboxDetailsRequest')
99
111
  GetMailboxDetailsResponse = Shapes::StructureShape.new(name: 'GetMailboxDetailsResponse')
112
+ GetMobileDeviceAccessEffectRequest = Shapes::StructureShape.new(name: 'GetMobileDeviceAccessEffectRequest')
113
+ GetMobileDeviceAccessEffectResponse = Shapes::StructureShape.new(name: 'GetMobileDeviceAccessEffectResponse')
100
114
  Group = Shapes::StructureShape.new(name: 'Group')
101
115
  GroupName = Shapes::StringShape.new(name: 'GroupName')
102
116
  Groups = Shapes::ListShape.new(name: 'Groups')
@@ -123,6 +137,8 @@ module Aws::WorkMail
123
137
  ListMailboxExportJobsResponse = Shapes::StructureShape.new(name: 'ListMailboxExportJobsResponse')
124
138
  ListMailboxPermissionsRequest = Shapes::StructureShape.new(name: 'ListMailboxPermissionsRequest')
125
139
  ListMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'ListMailboxPermissionsResponse')
140
+ ListMobileDeviceAccessRulesRequest = Shapes::StructureShape.new(name: 'ListMobileDeviceAccessRulesRequest')
141
+ ListMobileDeviceAccessRulesResponse = Shapes::StructureShape.new(name: 'ListMobileDeviceAccessRulesResponse')
126
142
  ListOrganizationsRequest = Shapes::StructureShape.new(name: 'ListOrganizationsRequest')
127
143
  ListOrganizationsResponse = Shapes::StructureShape.new(name: 'ListOrganizationsResponse')
128
144
  ListResourceDelegatesRequest = Shapes::StructureShape.new(name: 'ListResourceDelegatesRequest')
@@ -145,6 +161,14 @@ module Aws::WorkMail
145
161
  Member = Shapes::StructureShape.new(name: 'Member')
146
162
  MemberType = Shapes::StringShape.new(name: 'MemberType')
147
163
  Members = Shapes::ListShape.new(name: 'Members')
164
+ MobileDeviceAccessMatchedRule = Shapes::StructureShape.new(name: 'MobileDeviceAccessMatchedRule')
165
+ MobileDeviceAccessMatchedRuleList = Shapes::ListShape.new(name: 'MobileDeviceAccessMatchedRuleList')
166
+ MobileDeviceAccessRule = Shapes::StructureShape.new(name: 'MobileDeviceAccessRule')
167
+ MobileDeviceAccessRuleDescription = Shapes::StringShape.new(name: 'MobileDeviceAccessRuleDescription')
168
+ MobileDeviceAccessRuleEffect = Shapes::StringShape.new(name: 'MobileDeviceAccessRuleEffect')
169
+ MobileDeviceAccessRuleId = Shapes::StringShape.new(name: 'MobileDeviceAccessRuleId')
170
+ MobileDeviceAccessRuleName = Shapes::StringShape.new(name: 'MobileDeviceAccessRuleName')
171
+ MobileDeviceAccessRulesList = Shapes::ListShape.new(name: 'MobileDeviceAccessRulesList')
148
172
  NameAvailabilityException = Shapes::StructureShape.new(name: 'NameAvailabilityException')
149
173
  NextToken = Shapes::StringShape.new(name: 'NextToken')
150
174
  OrganizationId = Shapes::StringShape.new(name: 'OrganizationId')
@@ -201,6 +225,8 @@ module Aws::WorkMail
201
225
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
202
226
  UpdateMailboxQuotaRequest = Shapes::StructureShape.new(name: 'UpdateMailboxQuotaRequest')
203
227
  UpdateMailboxQuotaResponse = Shapes::StructureShape.new(name: 'UpdateMailboxQuotaResponse')
228
+ UpdateMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'UpdateMobileDeviceAccessRuleRequest')
229
+ UpdateMobileDeviceAccessRuleResponse = Shapes::StructureShape.new(name: 'UpdateMobileDeviceAccessRuleResponse')
204
230
  UpdatePrimaryEmailAddressRequest = Shapes::StructureShape.new(name: 'UpdatePrimaryEmailAddressRequest')
205
231
  UpdatePrimaryEmailAddressResponse = Shapes::StructureShape.new(name: 'UpdatePrimaryEmailAddressResponse')
206
232
  UpdateResourceRequest = Shapes::StructureShape.new(name: 'UpdateResourceRequest')
@@ -273,6 +299,24 @@ module Aws::WorkMail
273
299
  CreateGroupResponse.add_member(:group_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, location_name: "GroupId"))
274
300
  CreateGroupResponse.struct_class = Types::CreateGroupResponse
275
301
 
302
+ CreateMobileDeviceAccessRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
303
+ CreateMobileDeviceAccessRuleRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
304
+ CreateMobileDeviceAccessRuleRequest.add_member(:name, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleName, required: true, location_name: "Name"))
305
+ CreateMobileDeviceAccessRuleRequest.add_member(:description, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleDescription, location_name: "Description"))
306
+ CreateMobileDeviceAccessRuleRequest.add_member(:effect, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleEffect, required: true, location_name: "Effect"))
307
+ CreateMobileDeviceAccessRuleRequest.add_member(:device_types, Shapes::ShapeRef.new(shape: DeviceTypeList, location_name: "DeviceTypes"))
308
+ CreateMobileDeviceAccessRuleRequest.add_member(:not_device_types, Shapes::ShapeRef.new(shape: DeviceTypeList, location_name: "NotDeviceTypes"))
309
+ CreateMobileDeviceAccessRuleRequest.add_member(:device_models, Shapes::ShapeRef.new(shape: DeviceModelList, location_name: "DeviceModels"))
310
+ CreateMobileDeviceAccessRuleRequest.add_member(:not_device_models, Shapes::ShapeRef.new(shape: DeviceModelList, location_name: "NotDeviceModels"))
311
+ CreateMobileDeviceAccessRuleRequest.add_member(:device_operating_systems, Shapes::ShapeRef.new(shape: DeviceOperatingSystemList, location_name: "DeviceOperatingSystems"))
312
+ CreateMobileDeviceAccessRuleRequest.add_member(:not_device_operating_systems, Shapes::ShapeRef.new(shape: DeviceOperatingSystemList, location_name: "NotDeviceOperatingSystems"))
313
+ CreateMobileDeviceAccessRuleRequest.add_member(:device_user_agents, Shapes::ShapeRef.new(shape: DeviceUserAgentList, location_name: "DeviceUserAgents"))
314
+ CreateMobileDeviceAccessRuleRequest.add_member(:not_device_user_agents, Shapes::ShapeRef.new(shape: DeviceUserAgentList, location_name: "NotDeviceUserAgents"))
315
+ CreateMobileDeviceAccessRuleRequest.struct_class = Types::CreateMobileDeviceAccessRuleRequest
316
+
317
+ CreateMobileDeviceAccessRuleResponse.add_member(:mobile_device_access_rule_id, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleId, location_name: "MobileDeviceAccessRuleId"))
318
+ CreateMobileDeviceAccessRuleResponse.struct_class = Types::CreateMobileDeviceAccessRuleResponse
319
+
276
320
  CreateOrganizationRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, location_name: "DirectoryId"))
277
321
  CreateOrganizationRequest.add_member(:alias, Shapes::ShapeRef.new(shape: OrganizationName, required: true, location_name: "Alias"))
278
322
  CreateOrganizationRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
@@ -331,6 +375,12 @@ module Aws::WorkMail
331
375
 
332
376
  DeleteMailboxPermissionsResponse.struct_class = Types::DeleteMailboxPermissionsResponse
333
377
 
378
+ DeleteMobileDeviceAccessRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
379
+ DeleteMobileDeviceAccessRuleRequest.add_member(:mobile_device_access_rule_id, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleId, required: true, location_name: "MobileDeviceAccessRuleId"))
380
+ DeleteMobileDeviceAccessRuleRequest.struct_class = Types::DeleteMobileDeviceAccessRuleRequest
381
+
382
+ DeleteMobileDeviceAccessRuleResponse.struct_class = Types::DeleteMobileDeviceAccessRuleResponse
383
+
334
384
  DeleteOrganizationRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
335
385
  DeleteOrganizationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
336
386
  DeleteOrganizationRequest.add_member(:delete_directory, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "DeleteDirectory"))
@@ -436,6 +486,14 @@ module Aws::WorkMail
436
486
  DescribeUserResponse.add_member(:disabled_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DisabledDate"))
437
487
  DescribeUserResponse.struct_class = Types::DescribeUserResponse
438
488
 
489
+ DeviceModelList.member = Shapes::ShapeRef.new(shape: DeviceModel)
490
+
491
+ DeviceOperatingSystemList.member = Shapes::ShapeRef.new(shape: DeviceOperatingSystem)
492
+
493
+ DeviceTypeList.member = Shapes::ShapeRef.new(shape: DeviceType)
494
+
495
+ DeviceUserAgentList.member = Shapes::ShapeRef.new(shape: DeviceUserAgent)
496
+
439
497
  DirectoryInUseException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
440
498
  DirectoryInUseException.struct_class = Types::DirectoryInUseException
441
499
 
@@ -511,6 +569,17 @@ module Aws::WorkMail
511
569
  GetMailboxDetailsResponse.add_member(:mailbox_size, Shapes::ShapeRef.new(shape: MailboxSize, location_name: "MailboxSize"))
512
570
  GetMailboxDetailsResponse.struct_class = Types::GetMailboxDetailsResponse
513
571
 
572
+ GetMobileDeviceAccessEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
573
+ GetMobileDeviceAccessEffectRequest.add_member(:device_type, Shapes::ShapeRef.new(shape: DeviceType, location_name: "DeviceType"))
574
+ GetMobileDeviceAccessEffectRequest.add_member(:device_model, Shapes::ShapeRef.new(shape: DeviceModel, location_name: "DeviceModel"))
575
+ GetMobileDeviceAccessEffectRequest.add_member(:device_operating_system, Shapes::ShapeRef.new(shape: DeviceOperatingSystem, location_name: "DeviceOperatingSystem"))
576
+ GetMobileDeviceAccessEffectRequest.add_member(:device_user_agent, Shapes::ShapeRef.new(shape: DeviceUserAgent, location_name: "DeviceUserAgent"))
577
+ GetMobileDeviceAccessEffectRequest.struct_class = Types::GetMobileDeviceAccessEffectRequest
578
+
579
+ GetMobileDeviceAccessEffectResponse.add_member(:effect, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleEffect, location_name: "Effect"))
580
+ GetMobileDeviceAccessEffectResponse.add_member(:matched_rules, Shapes::ShapeRef.new(shape: MobileDeviceAccessMatchedRuleList, location_name: "MatchedRules"))
581
+ GetMobileDeviceAccessEffectResponse.struct_class = Types::GetMobileDeviceAccessEffectResponse
582
+
514
583
  Group.add_member(:id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, location_name: "Id"))
515
584
  Group.add_member(:email, Shapes::ShapeRef.new(shape: EmailAddress, location_name: "Email"))
516
585
  Group.add_member(:name, Shapes::ShapeRef.new(shape: GroupName, location_name: "Name"))
@@ -591,6 +660,12 @@ module Aws::WorkMail
591
660
  ListMailboxPermissionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
592
661
  ListMailboxPermissionsResponse.struct_class = Types::ListMailboxPermissionsResponse
593
662
 
663
+ ListMobileDeviceAccessRulesRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
664
+ ListMobileDeviceAccessRulesRequest.struct_class = Types::ListMobileDeviceAccessRulesRequest
665
+
666
+ ListMobileDeviceAccessRulesResponse.add_member(:rules, Shapes::ShapeRef.new(shape: MobileDeviceAccessRulesList, location_name: "Rules"))
667
+ ListMobileDeviceAccessRulesResponse.struct_class = Types::ListMobileDeviceAccessRulesResponse
668
+
594
669
  ListOrganizationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
595
670
  ListOrganizationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
596
671
  ListOrganizationsRequest.struct_class = Types::ListOrganizationsRequest
@@ -660,6 +735,30 @@ module Aws::WorkMail
660
735
 
661
736
  Members.member = Shapes::ShapeRef.new(shape: Member)
662
737
 
738
+ MobileDeviceAccessMatchedRule.add_member(:mobile_device_access_rule_id, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleId, location_name: "MobileDeviceAccessRuleId"))
739
+ MobileDeviceAccessMatchedRule.add_member(:name, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleName, location_name: "Name"))
740
+ MobileDeviceAccessMatchedRule.struct_class = Types::MobileDeviceAccessMatchedRule
741
+
742
+ MobileDeviceAccessMatchedRuleList.member = Shapes::ShapeRef.new(shape: MobileDeviceAccessMatchedRule)
743
+
744
+ MobileDeviceAccessRule.add_member(:mobile_device_access_rule_id, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleId, location_name: "MobileDeviceAccessRuleId"))
745
+ MobileDeviceAccessRule.add_member(:name, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleName, location_name: "Name"))
746
+ MobileDeviceAccessRule.add_member(:description, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleDescription, location_name: "Description"))
747
+ MobileDeviceAccessRule.add_member(:effect, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleEffect, location_name: "Effect"))
748
+ MobileDeviceAccessRule.add_member(:device_types, Shapes::ShapeRef.new(shape: DeviceTypeList, location_name: "DeviceTypes"))
749
+ MobileDeviceAccessRule.add_member(:not_device_types, Shapes::ShapeRef.new(shape: DeviceTypeList, location_name: "NotDeviceTypes"))
750
+ MobileDeviceAccessRule.add_member(:device_models, Shapes::ShapeRef.new(shape: DeviceModelList, location_name: "DeviceModels"))
751
+ MobileDeviceAccessRule.add_member(:not_device_models, Shapes::ShapeRef.new(shape: DeviceModelList, location_name: "NotDeviceModels"))
752
+ MobileDeviceAccessRule.add_member(:device_operating_systems, Shapes::ShapeRef.new(shape: DeviceOperatingSystemList, location_name: "DeviceOperatingSystems"))
753
+ MobileDeviceAccessRule.add_member(:not_device_operating_systems, Shapes::ShapeRef.new(shape: DeviceOperatingSystemList, location_name: "NotDeviceOperatingSystems"))
754
+ MobileDeviceAccessRule.add_member(:device_user_agents, Shapes::ShapeRef.new(shape: DeviceUserAgentList, location_name: "DeviceUserAgents"))
755
+ MobileDeviceAccessRule.add_member(:not_device_user_agents, Shapes::ShapeRef.new(shape: DeviceUserAgentList, location_name: "NotDeviceUserAgents"))
756
+ MobileDeviceAccessRule.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
757
+ MobileDeviceAccessRule.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
758
+ MobileDeviceAccessRule.struct_class = Types::MobileDeviceAccessRule
759
+
760
+ MobileDeviceAccessRulesList.member = Shapes::ShapeRef.new(shape: MobileDeviceAccessRule)
761
+
663
762
  NameAvailabilityException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
664
763
  NameAvailabilityException.struct_class = Types::NameAvailabilityException
665
764
 
@@ -797,6 +896,23 @@ module Aws::WorkMail
797
896
 
798
897
  UpdateMailboxQuotaResponse.struct_class = Types::UpdateMailboxQuotaResponse
799
898
 
899
+ UpdateMobileDeviceAccessRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
900
+ UpdateMobileDeviceAccessRuleRequest.add_member(:mobile_device_access_rule_id, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleId, required: true, location_name: "MobileDeviceAccessRuleId"))
901
+ UpdateMobileDeviceAccessRuleRequest.add_member(:name, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleName, required: true, location_name: "Name"))
902
+ UpdateMobileDeviceAccessRuleRequest.add_member(:description, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleDescription, location_name: "Description"))
903
+ UpdateMobileDeviceAccessRuleRequest.add_member(:effect, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleEffect, required: true, location_name: "Effect"))
904
+ UpdateMobileDeviceAccessRuleRequest.add_member(:device_types, Shapes::ShapeRef.new(shape: DeviceTypeList, location_name: "DeviceTypes"))
905
+ UpdateMobileDeviceAccessRuleRequest.add_member(:not_device_types, Shapes::ShapeRef.new(shape: DeviceTypeList, location_name: "NotDeviceTypes"))
906
+ UpdateMobileDeviceAccessRuleRequest.add_member(:device_models, Shapes::ShapeRef.new(shape: DeviceModelList, location_name: "DeviceModels"))
907
+ UpdateMobileDeviceAccessRuleRequest.add_member(:not_device_models, Shapes::ShapeRef.new(shape: DeviceModelList, location_name: "NotDeviceModels"))
908
+ UpdateMobileDeviceAccessRuleRequest.add_member(:device_operating_systems, Shapes::ShapeRef.new(shape: DeviceOperatingSystemList, location_name: "DeviceOperatingSystems"))
909
+ UpdateMobileDeviceAccessRuleRequest.add_member(:not_device_operating_systems, Shapes::ShapeRef.new(shape: DeviceOperatingSystemList, location_name: "NotDeviceOperatingSystems"))
910
+ UpdateMobileDeviceAccessRuleRequest.add_member(:device_user_agents, Shapes::ShapeRef.new(shape: DeviceUserAgentList, location_name: "DeviceUserAgents"))
911
+ UpdateMobileDeviceAccessRuleRequest.add_member(:not_device_user_agents, Shapes::ShapeRef.new(shape: DeviceUserAgentList, location_name: "NotDeviceUserAgents"))
912
+ UpdateMobileDeviceAccessRuleRequest.struct_class = Types::UpdateMobileDeviceAccessRuleRequest
913
+
914
+ UpdateMobileDeviceAccessRuleResponse.struct_class = Types::UpdateMobileDeviceAccessRuleResponse
915
+
800
916
  UpdatePrimaryEmailAddressRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
801
917
  UpdatePrimaryEmailAddressRequest.add_member(:entity_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "EntityId"))
802
918
  UpdatePrimaryEmailAddressRequest.add_member(:email, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "Email"))
@@ -918,6 +1034,18 @@ module Aws::WorkMail
918
1034
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
919
1035
  end)
920
1036
 
1037
+ api.add_operation(:create_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
1038
+ o.name = "CreateMobileDeviceAccessRule"
1039
+ o.http_method = "POST"
1040
+ o.http_request_uri = "/"
1041
+ o.input = Shapes::ShapeRef.new(shape: CreateMobileDeviceAccessRuleRequest)
1042
+ o.output = Shapes::ShapeRef.new(shape: CreateMobileDeviceAccessRuleResponse)
1043
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1044
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1045
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1046
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1047
+ end)
1048
+
921
1049
  api.add_operation(:create_organization, Seahorse::Model::Operation.new.tap do |o|
922
1050
  o.name = "CreateOrganization"
923
1051
  o.http_method = "POST"
@@ -1014,6 +1142,17 @@ module Aws::WorkMail
1014
1142
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1015
1143
  end)
1016
1144
 
1145
+ api.add_operation(:delete_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
1146
+ o.name = "DeleteMobileDeviceAccessRule"
1147
+ o.http_method = "POST"
1148
+ o.http_request_uri = "/"
1149
+ o.input = Shapes::ShapeRef.new(shape: DeleteMobileDeviceAccessRuleRequest)
1150
+ o.output = Shapes::ShapeRef.new(shape: DeleteMobileDeviceAccessRuleResponse)
1151
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1152
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1153
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1154
+ end)
1155
+
1017
1156
  api.add_operation(:delete_organization, Seahorse::Model::Operation.new.tap do |o|
1018
1157
  o.name = "DeleteOrganization"
1019
1158
  o.http_method = "POST"
@@ -1198,6 +1337,17 @@ module Aws::WorkMail
1198
1337
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1199
1338
  end)
1200
1339
 
1340
+ api.add_operation(:get_mobile_device_access_effect, Seahorse::Model::Operation.new.tap do |o|
1341
+ o.name = "GetMobileDeviceAccessEffect"
1342
+ o.http_method = "POST"
1343
+ o.http_request_uri = "/"
1344
+ o.input = Shapes::ShapeRef.new(shape: GetMobileDeviceAccessEffectRequest)
1345
+ o.output = Shapes::ShapeRef.new(shape: GetMobileDeviceAccessEffectResponse)
1346
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1347
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1348
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1349
+ end)
1350
+
1201
1351
  api.add_operation(:list_access_control_rules, Seahorse::Model::Operation.new.tap do |o|
1202
1352
  o.name = "ListAccessControlRules"
1203
1353
  o.http_method = "POST"
@@ -1299,6 +1449,17 @@ module Aws::WorkMail
1299
1449
  )
1300
1450
  end)
1301
1451
 
1452
+ api.add_operation(:list_mobile_device_access_rules, Seahorse::Model::Operation.new.tap do |o|
1453
+ o.name = "ListMobileDeviceAccessRules"
1454
+ o.http_method = "POST"
1455
+ o.http_request_uri = "/"
1456
+ o.input = Shapes::ShapeRef.new(shape: ListMobileDeviceAccessRulesRequest)
1457
+ o.output = Shapes::ShapeRef.new(shape: ListMobileDeviceAccessRulesResponse)
1458
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1459
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1460
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1461
+ end)
1462
+
1302
1463
  api.add_operation(:list_organizations, Seahorse::Model::Operation.new.tap do |o|
1303
1464
  o.name = "ListOrganizations"
1304
1465
  o.http_method = "POST"
@@ -1496,6 +1657,18 @@ module Aws::WorkMail
1496
1657
  o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
1497
1658
  end)
1498
1659
 
1660
+ api.add_operation(:update_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
1661
+ o.name = "UpdateMobileDeviceAccessRule"
1662
+ o.http_method = "POST"
1663
+ o.http_request_uri = "/"
1664
+ o.input = Shapes::ShapeRef.new(shape: UpdateMobileDeviceAccessRuleRequest)
1665
+ o.output = Shapes::ShapeRef.new(shape: UpdateMobileDeviceAccessRuleResponse)
1666
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1667
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1668
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1669
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1670
+ end)
1671
+
1499
1672
  api.add_operation(:update_primary_email_address, Seahorse::Model::Operation.new.tap do |o|
1500
1673
  o.name = "UpdatePrimaryEmailAddress"
1501
1674
  o.http_method = "POST"
@@ -295,6 +295,118 @@ module Aws::WorkMail
295
295
  include Aws::Structure
296
296
  end
297
297
 
298
+ # @note When making an API call, you may pass CreateMobileDeviceAccessRuleRequest
299
+ # data as a hash:
300
+ #
301
+ # {
302
+ # organization_id: "OrganizationId", # required
303
+ # client_token: "IdempotencyClientToken",
304
+ # name: "MobileDeviceAccessRuleName", # required
305
+ # description: "MobileDeviceAccessRuleDescription",
306
+ # effect: "ALLOW", # required, accepts ALLOW, DENY
307
+ # device_types: ["DeviceType"],
308
+ # not_device_types: ["DeviceType"],
309
+ # device_models: ["DeviceModel"],
310
+ # not_device_models: ["DeviceModel"],
311
+ # device_operating_systems: ["DeviceOperatingSystem"],
312
+ # not_device_operating_systems: ["DeviceOperatingSystem"],
313
+ # device_user_agents: ["DeviceUserAgent"],
314
+ # not_device_user_agents: ["DeviceUserAgent"],
315
+ # }
316
+ #
317
+ # @!attribute [rw] organization_id
318
+ # The Amazon WorkMail organization under which the rule will be
319
+ # created.
320
+ # @return [String]
321
+ #
322
+ # @!attribute [rw] client_token
323
+ # The idempotency token for the client request.
324
+ #
325
+ # **A suitable default value is auto-generated.** You should normally
326
+ # not need to pass this option.
327
+ # @return [String]
328
+ #
329
+ # @!attribute [rw] name
330
+ # The rule name.
331
+ # @return [String]
332
+ #
333
+ # @!attribute [rw] description
334
+ # The rule description.
335
+ # @return [String]
336
+ #
337
+ # @!attribute [rw] effect
338
+ # The effect of the rule when it matches. Allowed values are `ALLOW`
339
+ # or `DENY`.
340
+ # @return [String]
341
+ #
342
+ # @!attribute [rw] device_types
343
+ # Device types that the rule will match.
344
+ # @return [Array<String>]
345
+ #
346
+ # @!attribute [rw] not_device_types
347
+ # Device types that the rule **will not** match. All other device
348
+ # types will match.
349
+ # @return [Array<String>]
350
+ #
351
+ # @!attribute [rw] device_models
352
+ # Device models that the rule will match.
353
+ # @return [Array<String>]
354
+ #
355
+ # @!attribute [rw] not_device_models
356
+ # Device models that the rule **will not** match. All other device
357
+ # models will match.
358
+ # @return [Array<String>]
359
+ #
360
+ # @!attribute [rw] device_operating_systems
361
+ # Device operating systems that the rule will match.
362
+ # @return [Array<String>]
363
+ #
364
+ # @!attribute [rw] not_device_operating_systems
365
+ # Device operating systems that the rule **will not** match. All other
366
+ # device operating systems will match.
367
+ # @return [Array<String>]
368
+ #
369
+ # @!attribute [rw] device_user_agents
370
+ # Device user agents that the rule will match.
371
+ # @return [Array<String>]
372
+ #
373
+ # @!attribute [rw] not_device_user_agents
374
+ # Device user agents that the rule **will not** match. All other
375
+ # device user agents will match.
376
+ # @return [Array<String>]
377
+ #
378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/CreateMobileDeviceAccessRuleRequest AWS API Documentation
379
+ #
380
+ class CreateMobileDeviceAccessRuleRequest < Struct.new(
381
+ :organization_id,
382
+ :client_token,
383
+ :name,
384
+ :description,
385
+ :effect,
386
+ :device_types,
387
+ :not_device_types,
388
+ :device_models,
389
+ :not_device_models,
390
+ :device_operating_systems,
391
+ :not_device_operating_systems,
392
+ :device_user_agents,
393
+ :not_device_user_agents)
394
+ SENSITIVE = []
395
+ include Aws::Structure
396
+ end
397
+
398
+ # @!attribute [rw] mobile_device_access_rule_id
399
+ # The identifier for the newly created mobile device access rule.
400
+ # @return [String]
401
+ #
402
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/CreateMobileDeviceAccessRuleResponse AWS API Documentation
403
+ #
404
+ class CreateMobileDeviceAccessRuleResponse < Struct.new(
405
+ :mobile_device_access_rule_id)
406
+ SENSITIVE = []
407
+ include Aws::Structure
408
+ end
409
+
298
410
  # @note When making an API call, you may pass CreateOrganizationRequest
299
411
  # data as a hash:
300
412
  #
@@ -616,6 +728,36 @@ module Aws::WorkMail
616
728
  #
617
729
  class DeleteMailboxPermissionsResponse < Aws::EmptyStructure; end
618
730
 
731
+ # @note When making an API call, you may pass DeleteMobileDeviceAccessRuleRequest
732
+ # data as a hash:
733
+ #
734
+ # {
735
+ # organization_id: "OrganizationId", # required
736
+ # mobile_device_access_rule_id: "MobileDeviceAccessRuleId", # required
737
+ # }
738
+ #
739
+ # @!attribute [rw] organization_id
740
+ # The Amazon WorkMail organization under which the rule will be
741
+ # deleted.
742
+ # @return [String]
743
+ #
744
+ # @!attribute [rw] mobile_device_access_rule_id
745
+ # The identifier of the rule to be deleted.
746
+ # @return [String]
747
+ #
748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteMobileDeviceAccessRuleRequest AWS API Documentation
749
+ #
750
+ class DeleteMobileDeviceAccessRuleRequest < Struct.new(
751
+ :organization_id,
752
+ :mobile_device_access_rule_id)
753
+ SENSITIVE = []
754
+ include Aws::Structure
755
+ end
756
+
757
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteMobileDeviceAccessRuleResponse AWS API Documentation
758
+ #
759
+ class DeleteMobileDeviceAccessRuleResponse < Aws::EmptyStructure; end
760
+
619
761
  # @note When making an API call, you may pass DeleteOrganizationRequest
620
762
  # data as a hash:
621
763
  #
@@ -1568,6 +1710,69 @@ module Aws::WorkMail
1568
1710
  include Aws::Structure
1569
1711
  end
1570
1712
 
1713
+ # @note When making an API call, you may pass GetMobileDeviceAccessEffectRequest
1714
+ # data as a hash:
1715
+ #
1716
+ # {
1717
+ # organization_id: "OrganizationId", # required
1718
+ # device_type: "DeviceType",
1719
+ # device_model: "DeviceModel",
1720
+ # device_operating_system: "DeviceOperatingSystem",
1721
+ # device_user_agent: "DeviceUserAgent",
1722
+ # }
1723
+ #
1724
+ # @!attribute [rw] organization_id
1725
+ # The Amazon WorkMail organization to simulate the access effect for.
1726
+ # @return [String]
1727
+ #
1728
+ # @!attribute [rw] device_type
1729
+ # Device type the simulated user will report.
1730
+ # @return [String]
1731
+ #
1732
+ # @!attribute [rw] device_model
1733
+ # Device model the simulated user will report.
1734
+ # @return [String]
1735
+ #
1736
+ # @!attribute [rw] device_operating_system
1737
+ # Device operating system the simulated user will report.
1738
+ # @return [String]
1739
+ #
1740
+ # @!attribute [rw] device_user_agent
1741
+ # Device user agent the simulated user will report.
1742
+ # @return [String]
1743
+ #
1744
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetMobileDeviceAccessEffectRequest AWS API Documentation
1745
+ #
1746
+ class GetMobileDeviceAccessEffectRequest < Struct.new(
1747
+ :organization_id,
1748
+ :device_type,
1749
+ :device_model,
1750
+ :device_operating_system,
1751
+ :device_user_agent)
1752
+ SENSITIVE = []
1753
+ include Aws::Structure
1754
+ end
1755
+
1756
+ # @!attribute [rw] effect
1757
+ # The effect of the simulated access, `ALLOW` or `DENY`, after
1758
+ # evaluating mobile device access rules in the Amazon WorkMail
1759
+ # organization for the simulated user parameters.
1760
+ # @return [String]
1761
+ #
1762
+ # @!attribute [rw] matched_rules
1763
+ # A list of the rules which matched the simulated user input and
1764
+ # produced the effect.
1765
+ # @return [Array<Types::MobileDeviceAccessMatchedRule>]
1766
+ #
1767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetMobileDeviceAccessEffectResponse AWS API Documentation
1768
+ #
1769
+ class GetMobileDeviceAccessEffectResponse < Struct.new(
1770
+ :effect,
1771
+ :matched_rules)
1772
+ SENSITIVE = []
1773
+ include Aws::Structure
1774
+ end
1775
+
1571
1776
  # The representation of an Amazon WorkMail group.
1572
1777
  #
1573
1778
  # @!attribute [rw] id
@@ -1965,6 +2170,38 @@ module Aws::WorkMail
1965
2170
  include Aws::Structure
1966
2171
  end
1967
2172
 
2173
+ # @note When making an API call, you may pass ListMobileDeviceAccessRulesRequest
2174
+ # data as a hash:
2175
+ #
2176
+ # {
2177
+ # organization_id: "OrganizationId", # required
2178
+ # }
2179
+ #
2180
+ # @!attribute [rw] organization_id
2181
+ # The Amazon WorkMail organization for which to list the rules.
2182
+ # @return [String]
2183
+ #
2184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListMobileDeviceAccessRulesRequest AWS API Documentation
2185
+ #
2186
+ class ListMobileDeviceAccessRulesRequest < Struct.new(
2187
+ :organization_id)
2188
+ SENSITIVE = []
2189
+ include Aws::Structure
2190
+ end
2191
+
2192
+ # @!attribute [rw] rules
2193
+ # The list of mobile device access rules that exist under the
2194
+ # specified Amazon WorkMail organization.
2195
+ # @return [Array<Types::MobileDeviceAccessRule>]
2196
+ #
2197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListMobileDeviceAccessRulesResponse AWS API Documentation
2198
+ #
2199
+ class ListMobileDeviceAccessRulesResponse < Struct.new(
2200
+ :rules)
2201
+ SENSITIVE = []
2202
+ include Aws::Structure
2203
+ end
2204
+
1968
2205
  # @note When making an API call, you may pass ListOrganizationsRequest
1969
2206
  # data as a hash:
1970
2207
  #
@@ -2327,6 +2564,110 @@ module Aws::WorkMail
2327
2564
  include Aws::Structure
2328
2565
  end
2329
2566
 
2567
+ # The rule that a simulated user matches.
2568
+ #
2569
+ # @!attribute [rw] mobile_device_access_rule_id
2570
+ # Identifier of the rule that a simulated user matches.
2571
+ # @return [String]
2572
+ #
2573
+ # @!attribute [rw] name
2574
+ # Name of a rule that a simulated user matches.
2575
+ # @return [String]
2576
+ #
2577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/MobileDeviceAccessMatchedRule AWS API Documentation
2578
+ #
2579
+ class MobileDeviceAccessMatchedRule < Struct.new(
2580
+ :mobile_device_access_rule_id,
2581
+ :name)
2582
+ SENSITIVE = []
2583
+ include Aws::Structure
2584
+ end
2585
+
2586
+ # A rule that controls access to mobile devices for an Amazon WorkMail
2587
+ # group.
2588
+ #
2589
+ # @!attribute [rw] mobile_device_access_rule_id
2590
+ # The ID assigned to a mobile access rule.
2591
+ # @return [String]
2592
+ #
2593
+ # @!attribute [rw] name
2594
+ # The name of a mobile access rule.
2595
+ # @return [String]
2596
+ #
2597
+ # @!attribute [rw] description
2598
+ # The description of a mobile access rule.
2599
+ # @return [String]
2600
+ #
2601
+ # @!attribute [rw] effect
2602
+ # The effect of the rule when it matches. Allowed values are `ALLOW`
2603
+ # or `DENY`.
2604
+ # @return [String]
2605
+ #
2606
+ # @!attribute [rw] device_types
2607
+ # Device types that a rule will match.
2608
+ # @return [Array<String>]
2609
+ #
2610
+ # @!attribute [rw] not_device_types
2611
+ # Device types that a rule **will not** match. All other device types
2612
+ # will match.
2613
+ # @return [Array<String>]
2614
+ #
2615
+ # @!attribute [rw] device_models
2616
+ # Device models that a rule will match.
2617
+ # @return [Array<String>]
2618
+ #
2619
+ # @!attribute [rw] not_device_models
2620
+ # Device models that a rule **will not** match. All other device
2621
+ # models will match.
2622
+ # @return [Array<String>]
2623
+ #
2624
+ # @!attribute [rw] device_operating_systems
2625
+ # Device operating systems that a rule will match.
2626
+ # @return [Array<String>]
2627
+ #
2628
+ # @!attribute [rw] not_device_operating_systems
2629
+ # Device operating systems that a rule **will not** match. All other
2630
+ # device types will match.
2631
+ # @return [Array<String>]
2632
+ #
2633
+ # @!attribute [rw] device_user_agents
2634
+ # Device user agents that a rule will match.
2635
+ # @return [Array<String>]
2636
+ #
2637
+ # @!attribute [rw] not_device_user_agents
2638
+ # Device user agents that a rule **will not** match. All other device
2639
+ # user agents will match.
2640
+ # @return [Array<String>]
2641
+ #
2642
+ # @!attribute [rw] date_created
2643
+ # The date and time at which an access rule was created.
2644
+ # @return [Time]
2645
+ #
2646
+ # @!attribute [rw] date_modified
2647
+ # The date and time at which an access rule was modified.
2648
+ # @return [Time]
2649
+ #
2650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/MobileDeviceAccessRule AWS API Documentation
2651
+ #
2652
+ class MobileDeviceAccessRule < Struct.new(
2653
+ :mobile_device_access_rule_id,
2654
+ :name,
2655
+ :description,
2656
+ :effect,
2657
+ :device_types,
2658
+ :not_device_types,
2659
+ :device_models,
2660
+ :not_device_models,
2661
+ :device_operating_systems,
2662
+ :not_device_operating_systems,
2663
+ :device_user_agents,
2664
+ :not_device_user_agents,
2665
+ :date_created,
2666
+ :date_modified)
2667
+ SENSITIVE = []
2668
+ include Aws::Structure
2669
+ end
2670
+
2330
2671
  # The user, group, or resource name isn't unique in Amazon WorkMail.
2331
2672
  #
2332
2673
  # @!attribute [rw] message
@@ -2996,6 +3337,107 @@ module Aws::WorkMail
2996
3337
  #
2997
3338
  class UpdateMailboxQuotaResponse < Aws::EmptyStructure; end
2998
3339
 
3340
+ # @note When making an API call, you may pass UpdateMobileDeviceAccessRuleRequest
3341
+ # data as a hash:
3342
+ #
3343
+ # {
3344
+ # organization_id: "OrganizationId", # required
3345
+ # mobile_device_access_rule_id: "MobileDeviceAccessRuleId", # required
3346
+ # name: "MobileDeviceAccessRuleName", # required
3347
+ # description: "MobileDeviceAccessRuleDescription",
3348
+ # effect: "ALLOW", # required, accepts ALLOW, DENY
3349
+ # device_types: ["DeviceType"],
3350
+ # not_device_types: ["DeviceType"],
3351
+ # device_models: ["DeviceModel"],
3352
+ # not_device_models: ["DeviceModel"],
3353
+ # device_operating_systems: ["DeviceOperatingSystem"],
3354
+ # not_device_operating_systems: ["DeviceOperatingSystem"],
3355
+ # device_user_agents: ["DeviceUserAgent"],
3356
+ # not_device_user_agents: ["DeviceUserAgent"],
3357
+ # }
3358
+ #
3359
+ # @!attribute [rw] organization_id
3360
+ # The Amazon WorkMail organization under which the rule will be
3361
+ # updated.
3362
+ # @return [String]
3363
+ #
3364
+ # @!attribute [rw] mobile_device_access_rule_id
3365
+ # The identifier of the rule to be updated.
3366
+ # @return [String]
3367
+ #
3368
+ # @!attribute [rw] name
3369
+ # The updated rule name.
3370
+ # @return [String]
3371
+ #
3372
+ # @!attribute [rw] description
3373
+ # The updated rule description.
3374
+ # @return [String]
3375
+ #
3376
+ # @!attribute [rw] effect
3377
+ # The effect of the rule when it matches. Allowed values are `ALLOW`
3378
+ # or `DENY`.
3379
+ # @return [String]
3380
+ #
3381
+ # @!attribute [rw] device_types
3382
+ # Device types that the updated rule will match.
3383
+ # @return [Array<String>]
3384
+ #
3385
+ # @!attribute [rw] not_device_types
3386
+ # Device types that the updated rule **will not** match. All other
3387
+ # device types will match.
3388
+ # @return [Array<String>]
3389
+ #
3390
+ # @!attribute [rw] device_models
3391
+ # Device models that the updated rule will match.
3392
+ # @return [Array<String>]
3393
+ #
3394
+ # @!attribute [rw] not_device_models
3395
+ # Device models that the updated rule **will not** match. All other
3396
+ # device models will match.
3397
+ # @return [Array<String>]
3398
+ #
3399
+ # @!attribute [rw] device_operating_systems
3400
+ # Device operating systems that the updated rule will match.
3401
+ # @return [Array<String>]
3402
+ #
3403
+ # @!attribute [rw] not_device_operating_systems
3404
+ # Device operating systems that the updated rule **will not** match.
3405
+ # All other device operating systems will match.
3406
+ # @return [Array<String>]
3407
+ #
3408
+ # @!attribute [rw] device_user_agents
3409
+ # User agents that the updated rule will match.
3410
+ # @return [Array<String>]
3411
+ #
3412
+ # @!attribute [rw] not_device_user_agents
3413
+ # User agents that the updated rule **will not** match. All other user
3414
+ # agents will match.
3415
+ # @return [Array<String>]
3416
+ #
3417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateMobileDeviceAccessRuleRequest AWS API Documentation
3418
+ #
3419
+ class UpdateMobileDeviceAccessRuleRequest < Struct.new(
3420
+ :organization_id,
3421
+ :mobile_device_access_rule_id,
3422
+ :name,
3423
+ :description,
3424
+ :effect,
3425
+ :device_types,
3426
+ :not_device_types,
3427
+ :device_models,
3428
+ :not_device_models,
3429
+ :device_operating_systems,
3430
+ :not_device_operating_systems,
3431
+ :device_user_agents,
3432
+ :not_device_user_agents)
3433
+ SENSITIVE = []
3434
+ include Aws::Structure
3435
+ end
3436
+
3437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateMobileDeviceAccessRuleResponse AWS API Documentation
3438
+ #
3439
+ class UpdateMobileDeviceAccessRuleResponse < Aws::EmptyStructure; end
3440
+
2999
3441
  # @note When making an API call, you may pass UpdatePrimaryEmailAddressRequest
3000
3442
  # data as a hash:
3001
3443
  #
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.36.0
4
+ version: 1.37.0
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: 2021-03-10 00:00:00.000000000 Z
11
+ date: 2021-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -66,8 +66,8 @@ homepage: https://github.com/aws/aws-sdk-ruby
66
66
  licenses:
67
67
  - Apache-2.0
68
68
  metadata:
69
- source_code_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-workmail
70
- changelog_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-workmail/CHANGELOG.md
69
+ source_code_uri: https://github.com/aws/aws-sdk-ruby/tree/version-3/gems/aws-sdk-workmail
70
+ changelog_uri: https://github.com/aws/aws-sdk-ruby/tree/version-3/gems/aws-sdk-workmail/CHANGELOG.md
71
71
  post_install_message:
72
72
  rdoc_options: []
73
73
  require_paths: