aws-sdk-workmail 1.36.0 → 1.37.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
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: