aws-sdk-workmail 1.57.0 → 1.59.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -216,6 +216,10 @@ module Aws::WorkMail
216
216
  # @option options [Boolean] :endpoint_discovery (false)
217
217
  # When set to `true`, endpoint discovery will be enabled for operations when available.
218
218
  #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
219
223
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
220
224
  # The log formatter.
221
225
  #
@@ -402,17 +406,36 @@ module Aws::WorkMail
402
406
  # @option params [required, String] :resource_id
403
407
  # The resource for which members (users or groups) are associated.
404
408
  #
409
+ # The identifier can accept *ResourceId*, *Resourcename*, or *email*.
410
+ # The following identity formats are available:
411
+ #
412
+ # * Resource ID: r-0123456789a0123456789b0123456789
413
+ #
414
+ # * Email address: resource@domain.tld
415
+ #
416
+ # * Resource name: resource
417
+ #
405
418
  # @option params [required, String] :entity_id
406
419
  # The member (user or group) to associate to the resource.
407
420
  #
421
+ # The entity ID can accept *UserId or GroupID*, *Username or Groupname*,
422
+ # or *email*.
423
+ #
424
+ # * Entity: 12345678-1234-1234-1234-123456789012 or
425
+ # S-1-1-12-1234567890-123456789-123456789-1234
426
+ #
427
+ # * Email address: entity@domain.tld
428
+ #
429
+ # * Entity: entity
430
+ #
408
431
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
409
432
  #
410
433
  # @example Request syntax with placeholder values
411
434
  #
412
435
  # resp = client.associate_delegate_to_resource({
413
436
  # organization_id: "OrganizationId", # required
414
- # resource_id: "ResourceId", # required
415
- # entity_id: "WorkMailIdentifier", # required
437
+ # resource_id: "EntityIdentifier", # required
438
+ # entity_id: "EntityIdentifier", # required
416
439
  # })
417
440
  #
418
441
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/AssociateDelegateToResource AWS API Documentation
@@ -432,17 +455,37 @@ module Aws::WorkMail
432
455
  # @option params [required, String] :group_id
433
456
  # The group to which the member (user or group) is associated.
434
457
  #
458
+ # The identifier can accept *GroupId*, *Groupname*, or *email*. The
459
+ # following identity formats are available:
460
+ #
461
+ # * Group ID: 12345678-1234-1234-1234-123456789012 or
462
+ # S-1-1-12-1234567890-123456789-123456789-1234
463
+ #
464
+ # * Email address: group@domain.tld
465
+ #
466
+ # * Group name: group
467
+ #
435
468
  # @option params [required, String] :member_id
436
469
  # The member (user or group) to associate to the group.
437
470
  #
471
+ # The member ID can accept *UserID or GroupId*, *Username or Groupname*,
472
+ # or *email*.
473
+ #
474
+ # * Member: 12345678-1234-1234-1234-123456789012 or
475
+ # S-1-1-12-1234567890-123456789-123456789-1234
476
+ #
477
+ # * Email address: member@domain.tld
478
+ #
479
+ # * Member name: member
480
+ #
438
481
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
439
482
  #
440
483
  # @example Request syntax with placeholder values
441
484
  #
442
485
  # resp = client.associate_member_to_group({
443
486
  # organization_id: "OrganizationId", # required
444
- # group_id: "WorkMailIdentifier", # required
445
- # member_id: "WorkMailIdentifier", # required
487
+ # group_id: "EntityIdentifier", # required
488
+ # member_id: "EntityIdentifier", # required
446
489
  # })
447
490
  #
448
491
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/AssociateMemberToGroup AWS API Documentation
@@ -623,6 +666,10 @@ module Aws::WorkMail
623
666
  # @option params [required, String] :name
624
667
  # The name of the group.
625
668
  #
669
+ # @option params [Boolean] :hidden_from_global_address_list
670
+ # If this parameter is enabled, the group will be hidden from the
671
+ # address book.
672
+ #
626
673
  # @return [Types::CreateGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
627
674
  #
628
675
  # * {Types::CreateGroupResponse#group_id #group_id} => String
@@ -632,6 +679,7 @@ module Aws::WorkMail
632
679
  # resp = client.create_group({
633
680
  # organization_id: "OrganizationId", # required
634
681
  # name: "GroupName", # required
682
+ # hidden_from_global_address_list: false,
635
683
  # })
636
684
  #
637
685
  # @example Response structure
@@ -859,7 +907,7 @@ module Aws::WorkMail
859
907
  # client_token: "IdempotencyClientToken",
860
908
  # domains: [
861
909
  # {
862
- # domain_name: "DomainName",
910
+ # domain_name: "DomainName", # required
863
911
  # hosted_zone_id: "HostedZoneId",
864
912
  # },
865
913
  # ],
@@ -893,6 +941,13 @@ module Aws::WorkMail
893
941
  # The type of the new resource. The available types are `equipment` and
894
942
  # `room`.
895
943
  #
944
+ # @option params [String] :description
945
+ # Resource description.
946
+ #
947
+ # @option params [Boolean] :hidden_from_global_address_list
948
+ # If this parameter is enabled, the resource will be hidden from the
949
+ # address book.
950
+ #
896
951
  # @return [Types::CreateResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
897
952
  #
898
953
  # * {Types::CreateResourceResponse#resource_id #resource_id} => String
@@ -903,6 +958,8 @@ module Aws::WorkMail
903
958
  # organization_id: "OrganizationId", # required
904
959
  # name: "ResourceName", # required
905
960
  # type: "ROOM", # required, accepts ROOM, EQUIPMENT
961
+ # description: "ResourceDescription",
962
+ # hidden_from_global_address_list: false,
906
963
  # })
907
964
  #
908
965
  # @example Response structure
@@ -931,9 +988,26 @@ module Aws::WorkMail
931
988
  # @option params [required, String] :display_name
932
989
  # The display name for the new user.
933
990
  #
934
- # @option params [required, String] :password
991
+ # @option params [String] :password
935
992
  # The password for the new user.
936
993
  #
994
+ # @option params [String] :role
995
+ # The role of the new user.
996
+ #
997
+ # You cannot pass *SYSTEM\_USER* or *RESOURCE* role in a single request.
998
+ # When a user role is not selected, the default role of *USER* is
999
+ # selected.
1000
+ #
1001
+ # @option params [String] :first_name
1002
+ # The first name of the new user.
1003
+ #
1004
+ # @option params [String] :last_name
1005
+ # The last name of the new user.
1006
+ #
1007
+ # @option params [Boolean] :hidden_from_global_address_list
1008
+ # If this parameter is enabled, the user will be hidden from the address
1009
+ # book.
1010
+ #
937
1011
  # @return [Types::CreateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
938
1012
  #
939
1013
  # * {Types::CreateUserResponse#user_id #user_id} => String
@@ -943,8 +1017,12 @@ module Aws::WorkMail
943
1017
  # resp = client.create_user({
944
1018
  # organization_id: "OrganizationId", # required
945
1019
  # name: "UserName", # required
946
- # display_name: "String", # required
947
- # password: "Password", # required
1020
+ # display_name: "UserAttribute", # required
1021
+ # password: "Password",
1022
+ # role: "USER", # accepts USER, RESOURCE, SYSTEM_USER, REMOTE_USER
1023
+ # first_name: "UserAttribute",
1024
+ # last_name: "UserAttribute",
1025
+ # hidden_from_global_address_list: false,
948
1026
  # })
949
1027
  #
950
1028
  # @example Response structure
@@ -1087,13 +1165,21 @@ module Aws::WorkMail
1087
1165
  # @option params [required, String] :group_id
1088
1166
  # The identifier of the group to be deleted.
1089
1167
  #
1168
+ # The identifier can be the *GroupId*, or *Groupname*. The following
1169
+ # identity formats are available:
1170
+ #
1171
+ # * Group ID: 12345678-1234-1234-1234-123456789012 or
1172
+ # S-1-1-12-1234567890-123456789-123456789-1234
1173
+ #
1174
+ # * Group name: group
1175
+ #
1090
1176
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1091
1177
  #
1092
1178
  # @example Request syntax with placeholder values
1093
1179
  #
1094
1180
  # resp = client.delete_group({
1095
1181
  # organization_id: "OrganizationId", # required
1096
- # group_id: "WorkMailIdentifier", # required
1182
+ # group_id: "EntityIdentifier", # required
1097
1183
  # })
1098
1184
  #
1099
1185
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteGroup AWS API Documentation
@@ -1138,11 +1224,32 @@ module Aws::WorkMail
1138
1224
  # group) exists.
1139
1225
  #
1140
1226
  # @option params [required, String] :entity_id
1141
- # The identifier of the member (user or group) that owns the mailbox.
1227
+ # The identifier of the entity that owns the mailbox.
1228
+ #
1229
+ # The identifier can be *UserId or Group Id*, *Username or Groupname*,
1230
+ # or *email*.
1231
+ #
1232
+ # * Entity ID: 12345678-1234-1234-1234-123456789012,
1233
+ # r-0123456789a0123456789b0123456789, or
1234
+ # S-1-1-12-1234567890-123456789-123456789-1234
1235
+ #
1236
+ # * Email address: entity@domain.tld
1237
+ #
1238
+ # * Entity name: entity
1142
1239
  #
1143
1240
  # @option params [required, String] :grantee_id
1144
- # The identifier of the member (user or group) for which to delete
1145
- # granted permissions.
1241
+ # The identifier of the entity for which to delete granted permissions.
1242
+ #
1243
+ # The identifier can be *UserId, ResourceID, or Group Id*, *Username or
1244
+ # Groupname*, or *email*.
1245
+ #
1246
+ # * Grantee ID:
1247
+ # 12345678-1234-1234-1234-123456789012,r-0123456789a0123456789b0123456789,
1248
+ # or S-1-1-12-1234567890-123456789-123456789-1234
1249
+ #
1250
+ # * Email address: grantee@domain.tld
1251
+ #
1252
+ # * Grantee name: grantee
1146
1253
  #
1147
1254
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1148
1255
  #
@@ -1150,8 +1257,8 @@ module Aws::WorkMail
1150
1257
  #
1151
1258
  # resp = client.delete_mailbox_permissions({
1152
1259
  # organization_id: "OrganizationId", # required
1153
- # entity_id: "WorkMailIdentifier", # required
1154
- # grantee_id: "WorkMailIdentifier", # required
1260
+ # entity_id: "EntityIdentifier", # required
1261
+ # grantee_id: "EntityIdentifier", # required
1155
1262
  # })
1156
1263
  #
1157
1264
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteMailboxPermissions AWS API Documentation
@@ -1265,6 +1372,10 @@ module Aws::WorkMail
1265
1372
  # If true, deletes the AWS Directory Service directory associated with
1266
1373
  # the organization.
1267
1374
  #
1375
+ # @option params [Boolean] :force_delete
1376
+ # Deletes a WorkMail organization even if the organization has enabled
1377
+ # users.
1378
+ #
1268
1379
  # @return [Types::DeleteOrganizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1269
1380
  #
1270
1381
  # * {Types::DeleteOrganizationResponse#organization_id #organization_id} => String
@@ -1276,6 +1387,7 @@ module Aws::WorkMail
1276
1387
  # client_token: "IdempotencyClientToken",
1277
1388
  # organization_id: "OrganizationId", # required
1278
1389
  # delete_directory: false, # required
1390
+ # force_delete: false,
1279
1391
  # })
1280
1392
  #
1281
1393
  # @example Response structure
@@ -1301,13 +1413,20 @@ module Aws::WorkMail
1301
1413
  # @option params [required, String] :resource_id
1302
1414
  # The identifier of the resource to be deleted.
1303
1415
  #
1416
+ # The identifier can accept *ResourceId*, or *Resourcename*. The
1417
+ # following identity formats are available:
1418
+ #
1419
+ # * Resource ID: r-0123456789a0123456789b0123456789
1420
+ #
1421
+ # * Resource name: resource
1422
+ #
1304
1423
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1305
1424
  #
1306
1425
  # @example Request syntax with placeholder values
1307
1426
  #
1308
1427
  # resp = client.delete_resource({
1309
1428
  # organization_id: "OrganizationId", # required
1310
- # resource_id: "ResourceId", # required
1429
+ # resource_id: "EntityIdentifier", # required
1311
1430
  # })
1312
1431
  #
1313
1432
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteResource AWS API Documentation
@@ -1359,13 +1478,21 @@ module Aws::WorkMail
1359
1478
  # @option params [required, String] :user_id
1360
1479
  # The identifier of the user to be deleted.
1361
1480
  #
1481
+ # The identifier can be the *UserId* or *Username*. The following
1482
+ # identity formats are available:
1483
+ #
1484
+ # * User ID: 12345678-1234-1234-1234-123456789012 or
1485
+ # S-1-1-12-1234567890-123456789-123456789-1234
1486
+ #
1487
+ # * User name: user
1488
+ #
1362
1489
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1363
1490
  #
1364
1491
  # @example Request syntax with placeholder values
1365
1492
  #
1366
1493
  # resp = client.delete_user({
1367
1494
  # organization_id: "OrganizationId", # required
1368
- # user_id: "WorkMailIdentifier", # required
1495
+ # user_id: "EntityIdentifier", # required
1369
1496
  # })
1370
1497
  #
1371
1498
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteUser AWS API Documentation
@@ -1387,7 +1514,18 @@ module Aws::WorkMail
1387
1514
  # exists.
1388
1515
  #
1389
1516
  # @option params [required, String] :entity_id
1390
- # The identifier for the member (user or group) to be updated.
1517
+ # The identifier for the member to be updated.
1518
+ #
1519
+ # The identifier can be *UserId, ResourceId, or Group Id*, *Username,
1520
+ # Resourcename, or Groupname*, or *email*.
1521
+ #
1522
+ # * Entity ID: 12345678-1234-1234-1234-123456789012,
1523
+ # r-0123456789a0123456789b0123456789, or
1524
+ # S-1-1-12-1234567890-123456789-123456789-1234
1525
+ #
1526
+ # * Email address: entity@domain.tld
1527
+ #
1528
+ # * Entity name: entity
1391
1529
  #
1392
1530
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1393
1531
  #
@@ -1395,7 +1533,7 @@ module Aws::WorkMail
1395
1533
  #
1396
1534
  # resp = client.deregister_from_work_mail({
1397
1535
  # organization_id: "OrganizationId", # required
1398
- # entity_id: "WorkMailIdentifier", # required
1536
+ # entity_id: "EntityIdentifier", # required
1399
1537
  # })
1400
1538
  #
1401
1539
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeregisterFromWorkMail AWS API Documentation
@@ -1468,6 +1606,42 @@ module Aws::WorkMail
1468
1606
  req.send_request(options)
1469
1607
  end
1470
1608
 
1609
+ # Returns basic details about an entity in WorkMail.
1610
+ #
1611
+ # @option params [required, String] :organization_id
1612
+ # The identifier for the organization under which the entity exists.
1613
+ #
1614
+ # @option params [required, String] :email
1615
+ # The email under which the entity exists.
1616
+ #
1617
+ # @return [Types::DescribeEntityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1618
+ #
1619
+ # * {Types::DescribeEntityResponse#entity_id #entity_id} => String
1620
+ # * {Types::DescribeEntityResponse#name #name} => String
1621
+ # * {Types::DescribeEntityResponse#type #type} => String
1622
+ #
1623
+ # @example Request syntax with placeholder values
1624
+ #
1625
+ # resp = client.describe_entity({
1626
+ # organization_id: "OrganizationId", # required
1627
+ # email: "EmailAddress", # required
1628
+ # })
1629
+ #
1630
+ # @example Response structure
1631
+ #
1632
+ # resp.entity_id #=> String
1633
+ # resp.name #=> String
1634
+ # resp.type #=> String, one of "GROUP", "USER", "RESOURCE"
1635
+ #
1636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DescribeEntity AWS API Documentation
1637
+ #
1638
+ # @overload describe_entity(params = {})
1639
+ # @param [Hash] params ({})
1640
+ def describe_entity(params = {}, options = {})
1641
+ req = build_request(:describe_entity, params)
1642
+ req.send_request(options)
1643
+ end
1644
+
1471
1645
  # Returns the data available for the group.
1472
1646
  #
1473
1647
  # @option params [required, String] :organization_id
@@ -1476,6 +1650,16 @@ module Aws::WorkMail
1476
1650
  # @option params [required, String] :group_id
1477
1651
  # The identifier for the group to be described.
1478
1652
  #
1653
+ # The identifier can accept *GroupId*, *Groupname*, or *email*. The
1654
+ # following identity formats are available:
1655
+ #
1656
+ # * Group ID: 12345678-1234-1234-1234-123456789012 or
1657
+ # S-1-1-12-1234567890-123456789-123456789-1234
1658
+ #
1659
+ # * Email address: group@domain.tld
1660
+ #
1661
+ # * Group name: group
1662
+ #
1479
1663
  # @return [Types::DescribeGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1480
1664
  #
1481
1665
  # * {Types::DescribeGroupResponse#group_id #group_id} => String
@@ -1484,12 +1668,13 @@ module Aws::WorkMail
1484
1668
  # * {Types::DescribeGroupResponse#state #state} => String
1485
1669
  # * {Types::DescribeGroupResponse#enabled_date #enabled_date} => Time
1486
1670
  # * {Types::DescribeGroupResponse#disabled_date #disabled_date} => Time
1671
+ # * {Types::DescribeGroupResponse#hidden_from_global_address_list #hidden_from_global_address_list} => Boolean
1487
1672
  #
1488
1673
  # @example Request syntax with placeholder values
1489
1674
  #
1490
1675
  # resp = client.describe_group({
1491
1676
  # organization_id: "OrganizationId", # required
1492
- # group_id: "WorkMailIdentifier", # required
1677
+ # group_id: "EntityIdentifier", # required
1493
1678
  # })
1494
1679
  #
1495
1680
  # @example Response structure
@@ -1500,6 +1685,7 @@ module Aws::WorkMail
1500
1685
  # resp.state #=> String, one of "ENABLED", "DISABLED", "DELETED"
1501
1686
  # resp.enabled_date #=> Time
1502
1687
  # resp.disabled_date #=> Time
1688
+ # resp.hidden_from_global_address_list #=> Boolean
1503
1689
  #
1504
1690
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DescribeGroup AWS API Documentation
1505
1691
  #
@@ -1609,6 +1795,8 @@ module Aws::WorkMail
1609
1795
  # * {Types::DescribeOrganizationResponse#completed_date #completed_date} => Time
1610
1796
  # * {Types::DescribeOrganizationResponse#error_message #error_message} => String
1611
1797
  # * {Types::DescribeOrganizationResponse#arn #arn} => String
1798
+ # * {Types::DescribeOrganizationResponse#migration_admin #migration_admin} => String
1799
+ # * {Types::DescribeOrganizationResponse#interoperability_enabled #interoperability_enabled} => Boolean
1612
1800
  #
1613
1801
  # @example Request syntax with placeholder values
1614
1802
  #
@@ -1627,6 +1815,8 @@ module Aws::WorkMail
1627
1815
  # resp.completed_date #=> Time
1628
1816
  # resp.error_message #=> String
1629
1817
  # resp.arn #=> String
1818
+ # resp.migration_admin #=> String
1819
+ # resp.interoperability_enabled #=> Boolean
1630
1820
  #
1631
1821
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DescribeOrganization AWS API Documentation
1632
1822
  #
@@ -1646,6 +1836,15 @@ module Aws::WorkMail
1646
1836
  # @option params [required, String] :resource_id
1647
1837
  # The identifier of the resource to be described.
1648
1838
  #
1839
+ # The identifier can accept *ResourceId*, *Resourcename*, or *email*.
1840
+ # The following identity formats are available:
1841
+ #
1842
+ # * Resource ID: r-0123456789a0123456789b0123456789
1843
+ #
1844
+ # * Email address: resource@domain.tld
1845
+ #
1846
+ # * Resource name: resource
1847
+ #
1649
1848
  # @return [Types::DescribeResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1650
1849
  #
1651
1850
  # * {Types::DescribeResourceResponse#resource_id #resource_id} => String
@@ -1656,12 +1855,14 @@ module Aws::WorkMail
1656
1855
  # * {Types::DescribeResourceResponse#state #state} => String
1657
1856
  # * {Types::DescribeResourceResponse#enabled_date #enabled_date} => Time
1658
1857
  # * {Types::DescribeResourceResponse#disabled_date #disabled_date} => Time
1858
+ # * {Types::DescribeResourceResponse#description #description} => String
1859
+ # * {Types::DescribeResourceResponse#hidden_from_global_address_list #hidden_from_global_address_list} => Boolean
1659
1860
  #
1660
1861
  # @example Request syntax with placeholder values
1661
1862
  #
1662
1863
  # resp = client.describe_resource({
1663
1864
  # organization_id: "OrganizationId", # required
1664
- # resource_id: "ResourceId", # required
1865
+ # resource_id: "EntityIdentifier", # required
1665
1866
  # })
1666
1867
  #
1667
1868
  # @example Response structure
@@ -1676,6 +1877,8 @@ module Aws::WorkMail
1676
1877
  # resp.state #=> String, one of "ENABLED", "DISABLED", "DELETED"
1677
1878
  # resp.enabled_date #=> Time
1678
1879
  # resp.disabled_date #=> Time
1880
+ # resp.description #=> String
1881
+ # resp.hidden_from_global_address_list #=> Boolean
1679
1882
  #
1680
1883
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DescribeResource AWS API Documentation
1681
1884
  #
@@ -1694,6 +1897,16 @@ module Aws::WorkMail
1694
1897
  # @option params [required, String] :user_id
1695
1898
  # The identifier for the user to be described.
1696
1899
  #
1900
+ # The identifier can be the *UserId*, *Username*, or *email*. The
1901
+ # following identity formats are available:
1902
+ #
1903
+ # * User ID: 12345678-1234-1234-1234-123456789012 or
1904
+ # S-1-1-12-1234567890-123456789-123456789-1234
1905
+ #
1906
+ # * Email address: user@domain.tld
1907
+ #
1908
+ # * User name: user
1909
+ #
1697
1910
  # @return [Types::DescribeUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1698
1911
  #
1699
1912
  # * {Types::DescribeUserResponse#user_id #user_id} => String
@@ -1704,12 +1917,27 @@ module Aws::WorkMail
1704
1917
  # * {Types::DescribeUserResponse#user_role #user_role} => String
1705
1918
  # * {Types::DescribeUserResponse#enabled_date #enabled_date} => Time
1706
1919
  # * {Types::DescribeUserResponse#disabled_date #disabled_date} => Time
1920
+ # * {Types::DescribeUserResponse#mailbox_provisioned_date #mailbox_provisioned_date} => Time
1921
+ # * {Types::DescribeUserResponse#mailbox_deprovisioned_date #mailbox_deprovisioned_date} => Time
1922
+ # * {Types::DescribeUserResponse#first_name #first_name} => String
1923
+ # * {Types::DescribeUserResponse#last_name #last_name} => String
1924
+ # * {Types::DescribeUserResponse#hidden_from_global_address_list #hidden_from_global_address_list} => Boolean
1925
+ # * {Types::DescribeUserResponse#initials #initials} => String
1926
+ # * {Types::DescribeUserResponse#telephone #telephone} => String
1927
+ # * {Types::DescribeUserResponse#street #street} => String
1928
+ # * {Types::DescribeUserResponse#job_title #job_title} => String
1929
+ # * {Types::DescribeUserResponse#city #city} => String
1930
+ # * {Types::DescribeUserResponse#company #company} => String
1931
+ # * {Types::DescribeUserResponse#zip_code #zip_code} => String
1932
+ # * {Types::DescribeUserResponse#department #department} => String
1933
+ # * {Types::DescribeUserResponse#country #country} => String
1934
+ # * {Types::DescribeUserResponse#office #office} => String
1707
1935
  #
1708
1936
  # @example Request syntax with placeholder values
1709
1937
  #
1710
1938
  # resp = client.describe_user({
1711
1939
  # organization_id: "OrganizationId", # required
1712
- # user_id: "WorkMailIdentifier", # required
1940
+ # user_id: "EntityIdentifier", # required
1713
1941
  # })
1714
1942
  #
1715
1943
  # @example Response structure
@@ -1719,9 +1947,24 @@ module Aws::WorkMail
1719
1947
  # resp.email #=> String
1720
1948
  # resp.display_name #=> String
1721
1949
  # resp.state #=> String, one of "ENABLED", "DISABLED", "DELETED"
1722
- # resp.user_role #=> String, one of "USER", "RESOURCE", "SYSTEM_USER"
1950
+ # resp.user_role #=> String, one of "USER", "RESOURCE", "SYSTEM_USER", "REMOTE_USER"
1723
1951
  # resp.enabled_date #=> Time
1724
1952
  # resp.disabled_date #=> Time
1953
+ # resp.mailbox_provisioned_date #=> Time
1954
+ # resp.mailbox_deprovisioned_date #=> Time
1955
+ # resp.first_name #=> String
1956
+ # resp.last_name #=> String
1957
+ # resp.hidden_from_global_address_list #=> Boolean
1958
+ # resp.initials #=> String
1959
+ # resp.telephone #=> String
1960
+ # resp.street #=> String
1961
+ # resp.job_title #=> String
1962
+ # resp.city #=> String
1963
+ # resp.company #=> String
1964
+ # resp.zip_code #=> String
1965
+ # resp.department #=> String
1966
+ # resp.country #=> String
1967
+ # resp.office #=> String
1725
1968
  #
1726
1969
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DescribeUser AWS API Documentation
1727
1970
  #
@@ -1741,18 +1984,37 @@ module Aws::WorkMail
1741
1984
  # The identifier of the resource from which delegates' set members are
1742
1985
  # removed.
1743
1986
  #
1987
+ # The identifier can accept *ResourceId*, *Resourcename*, or *email*.
1988
+ # The following identity formats are available:
1989
+ #
1990
+ # * Resource ID: r-0123456789a0123456789b0123456789
1991
+ #
1992
+ # * Email address: resource@domain.tld
1993
+ #
1994
+ # * Resource name: resource
1995
+ #
1744
1996
  # @option params [required, String] :entity_id
1745
1997
  # The identifier for the member (user, group) to be removed from the
1746
1998
  # resource's delegates.
1747
1999
  #
2000
+ # The entity ID can accept *UserId or GroupID*, *Username or Groupname*,
2001
+ # or *email*.
2002
+ #
2003
+ # * Entity: 12345678-1234-1234-1234-123456789012 or
2004
+ # S-1-1-12-1234567890-123456789-123456789-1234
2005
+ #
2006
+ # * Email address: entity@domain.tld
2007
+ #
2008
+ # * Entity: entity
2009
+ #
1748
2010
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1749
2011
  #
1750
2012
  # @example Request syntax with placeholder values
1751
2013
  #
1752
2014
  # resp = client.disassociate_delegate_from_resource({
1753
2015
  # organization_id: "OrganizationId", # required
1754
- # resource_id: "ResourceId", # required
1755
- # entity_id: "WorkMailIdentifier", # required
2016
+ # resource_id: "EntityIdentifier", # required
2017
+ # entity_id: "EntityIdentifier", # required
1756
2018
  # })
1757
2019
  #
1758
2020
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DisassociateDelegateFromResource AWS API Documentation
@@ -1772,8 +2034,28 @@ module Aws::WorkMail
1772
2034
  # @option params [required, String] :group_id
1773
2035
  # The identifier for the group from which members are removed.
1774
2036
  #
2037
+ # The identifier can accept *GroupId*, *Groupname*, or *email*. The
2038
+ # following identity formats are available:
2039
+ #
2040
+ # * Group ID: 12345678-1234-1234-1234-123456789012 or
2041
+ # S-1-1-12-1234567890-123456789-123456789-1234
2042
+ #
2043
+ # * Email address: group@domain.tld
2044
+ #
2045
+ # * Group name: group
2046
+ #
1775
2047
  # @option params [required, String] :member_id
1776
- # The identifier for the member to be removed to the group.
2048
+ # The identifier for the member to be removed from the group.
2049
+ #
2050
+ # The member ID can accept *UserID or GroupId*, *Username or Groupname*,
2051
+ # or *email*.
2052
+ #
2053
+ # * Member ID: 12345678-1234-1234-1234-123456789012 or
2054
+ # S-1-1-12-1234567890-123456789-123456789-1234
2055
+ #
2056
+ # * Email address: member@domain.tld
2057
+ #
2058
+ # * Member name: member
1777
2059
  #
1778
2060
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1779
2061
  #
@@ -1781,8 +2063,8 @@ module Aws::WorkMail
1781
2063
  #
1782
2064
  # resp = client.disassociate_member_from_group({
1783
2065
  # organization_id: "OrganizationId", # required
1784
- # group_id: "WorkMailIdentifier", # required
1785
- # member_id: "WorkMailIdentifier", # required
2066
+ # group_id: "EntityIdentifier", # required
2067
+ # member_id: "EntityIdentifier", # required
1786
2068
  # })
1787
2069
  #
1788
2070
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DisassociateMemberFromGroup AWS API Documentation
@@ -2044,6 +2326,16 @@ module Aws::WorkMail
2044
2326
  # @option params [required, String] :user_id
2045
2327
  # The identifier for the user whose mailbox details are being requested.
2046
2328
  #
2329
+ # The identifier can be the *UserId*, *Username*, or *email*. The
2330
+ # following identity formats are available:
2331
+ #
2332
+ # * User ID: 12345678-1234-1234-1234-123456789012 or
2333
+ # S-1-1-12-1234567890-123456789-123456789-1234
2334
+ #
2335
+ # * Email address: user@domain.tld
2336
+ #
2337
+ # * User name: user
2338
+ #
2047
2339
  # @return [Types::GetMailboxDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2048
2340
  #
2049
2341
  # * {Types::GetMailboxDetailsResponse#mailbox_quota #mailbox_quota} => Integer
@@ -2053,7 +2345,7 @@ module Aws::WorkMail
2053
2345
  #
2054
2346
  # resp = client.get_mailbox_details({
2055
2347
  # organization_id: "OrganizationId", # required
2056
- # user_id: "WorkMailIdentifier", # required
2348
+ # user_id: "EntityIdentifier", # required
2057
2349
  # })
2058
2350
  #
2059
2351
  # @example Response structure
@@ -2333,6 +2625,16 @@ module Aws::WorkMail
2333
2625
  # The identifier for the group to which the members (users or groups)
2334
2626
  # are associated.
2335
2627
  #
2628
+ # The identifier can accept *GroupId*, *Groupname*, or *email*. The
2629
+ # following identity formats are available:
2630
+ #
2631
+ # * Group ID: 12345678-1234-1234-1234-123456789012 or
2632
+ # S-1-1-12-1234567890-123456789-123456789-1234
2633
+ #
2634
+ # * Email address: group@domain.tld
2635
+ #
2636
+ # * Group name: group
2637
+ #
2336
2638
  # @option params [String] :next_token
2337
2639
  # The token to use to retrieve the next page of results. The first call
2338
2640
  # does not contain any tokens.
@@ -2351,7 +2653,7 @@ module Aws::WorkMail
2351
2653
  #
2352
2654
  # resp = client.list_group_members({
2353
2655
  # organization_id: "OrganizationId", # required
2354
- # group_id: "WorkMailIdentifier", # required
2656
+ # group_id: "EntityIdentifier", # required
2355
2657
  # next_token: "NextToken",
2356
2658
  # max_results: 1,
2357
2659
  # })
@@ -2388,6 +2690,10 @@ module Aws::WorkMail
2388
2690
  # @option params [Integer] :max_results
2389
2691
  # The maximum number of results to return in a single call.
2390
2692
  #
2693
+ # @option params [Types::ListGroupsFilters] :filters
2694
+ # Limit the search results based on the filter criteria. Only one filter
2695
+ # per request is supported.
2696
+ #
2391
2697
  # @return [Types::ListGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2392
2698
  #
2393
2699
  # * {Types::ListGroupsResponse#groups #groups} => Array<Types::Group>
@@ -2401,6 +2707,11 @@ module Aws::WorkMail
2401
2707
  # organization_id: "OrganizationId", # required
2402
2708
  # next_token: "NextToken",
2403
2709
  # max_results: 1,
2710
+ # filters: {
2711
+ # name_prefix: "String",
2712
+ # primary_email_prefix: "String",
2713
+ # state: "ENABLED", # accepts ENABLED, DISABLED, DELETED
2714
+ # },
2404
2715
  # })
2405
2716
  #
2406
2717
  # @example Response structure
@@ -2423,6 +2734,69 @@ module Aws::WorkMail
2423
2734
  req.send_request(options)
2424
2735
  end
2425
2736
 
2737
+ # Returns all the groups to which an entity belongs.
2738
+ #
2739
+ # @option params [required, String] :organization_id
2740
+ # The identifier for the organization under which the entity exists.
2741
+ #
2742
+ # @option params [required, String] :entity_id
2743
+ # The identifier for the entity.
2744
+ #
2745
+ # The entity ID can accept *UserId or GroupID*, *Username or Groupname*,
2746
+ # or *email*.
2747
+ #
2748
+ # * Entity ID: 12345678-1234-1234-1234-123456789012 or
2749
+ # S-1-1-12-1234567890-123456789-123456789-1234
2750
+ #
2751
+ # * Email address: entity@domain.tld
2752
+ #
2753
+ # * Entity name: entity
2754
+ #
2755
+ # @option params [Types::ListGroupsForEntityFilters] :filters
2756
+ # Limit the search results based on the filter criteria.
2757
+ #
2758
+ # @option params [String] :next_token
2759
+ # The token to use to retrieve the next page of results. The first call
2760
+ # does not contain any tokens.
2761
+ #
2762
+ # @option params [Integer] :max_results
2763
+ # The maximum number of results to return in a single call.
2764
+ #
2765
+ # @return [Types::ListGroupsForEntityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2766
+ #
2767
+ # * {Types::ListGroupsForEntityResponse#groups #groups} => Array<Types::GroupIdentifier>
2768
+ # * {Types::ListGroupsForEntityResponse#next_token #next_token} => String
2769
+ #
2770
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2771
+ #
2772
+ # @example Request syntax with placeholder values
2773
+ #
2774
+ # resp = client.list_groups_for_entity({
2775
+ # organization_id: "OrganizationId", # required
2776
+ # entity_id: "EntityIdentifier", # required
2777
+ # filters: {
2778
+ # group_name_prefix: "String",
2779
+ # },
2780
+ # next_token: "NextToken",
2781
+ # max_results: 1,
2782
+ # })
2783
+ #
2784
+ # @example Response structure
2785
+ #
2786
+ # resp.groups #=> Array
2787
+ # resp.groups[0].group_id #=> String
2788
+ # resp.groups[0].group_name #=> String
2789
+ # resp.next_token #=> String
2790
+ #
2791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListGroupsForEntity AWS API Documentation
2792
+ #
2793
+ # @overload list_groups_for_entity(params = {})
2794
+ # @param [Hash] params ({})
2795
+ def list_groups_for_entity(params = {}, options = {})
2796
+ req = build_request(:list_groups_for_entity, params)
2797
+ req.send_request(options)
2798
+ end
2799
+
2426
2800
  # Lists all the impersonation roles for the given WorkMail organization.
2427
2801
  #
2428
2802
  # @option params [required, String] :organization_id
@@ -2571,8 +2945,18 @@ module Aws::WorkMail
2571
2945
  # resource exists.
2572
2946
  #
2573
2947
  # @option params [required, String] :entity_id
2574
- # The identifier of the user, group, or resource for which to list
2575
- # mailbox permissions.
2948
+ # The identifier of the user, or resource for which to list mailbox
2949
+ # permissions.
2950
+ #
2951
+ # The entity ID can accept *UserId or ResourceId*, *Username or
2952
+ # Resourcename*, or *email*.
2953
+ #
2954
+ # * Entity ID: 12345678-1234-1234-1234-123456789012, or
2955
+ # r-0123456789a0123456789b0123456789
2956
+ #
2957
+ # * Email address: entity@domain.tld
2958
+ #
2959
+ # * Entity name: entity
2576
2960
  #
2577
2961
  # @option params [String] :next_token
2578
2962
  # The token to use to retrieve the next page of results. The first call
@@ -2592,7 +2976,7 @@ module Aws::WorkMail
2592
2976
  #
2593
2977
  # resp = client.list_mailbox_permissions({
2594
2978
  # organization_id: "OrganizationId", # required
2595
- # entity_id: "WorkMailIdentifier", # required
2979
+ # entity_id: "EntityIdentifier", # required
2596
2980
  # next_token: "NextToken",
2597
2981
  # max_results: 1,
2598
2982
  # })
@@ -2783,6 +3167,15 @@ module Aws::WorkMail
2783
3167
  # @option params [required, String] :resource_id
2784
3168
  # The identifier for the resource whose delegates are listed.
2785
3169
  #
3170
+ # The identifier can accept *ResourceId*, *Resourcename*, or *email*.
3171
+ # The following identity formats are available:
3172
+ #
3173
+ # * Resource ID: r-0123456789a0123456789b0123456789
3174
+ #
3175
+ # * Email address: resource@domain.tld
3176
+ #
3177
+ # * Resource name: resource
3178
+ #
2786
3179
  # @option params [String] :next_token
2787
3180
  # The token used to paginate through the delegates associated with a
2788
3181
  # resource.
@@ -2801,7 +3194,7 @@ module Aws::WorkMail
2801
3194
  #
2802
3195
  # resp = client.list_resource_delegates({
2803
3196
  # organization_id: "OrganizationId", # required
2804
- # resource_id: "WorkMailIdentifier", # required
3197
+ # resource_id: "EntityIdentifier", # required
2805
3198
  # next_token: "NextToken",
2806
3199
  # max_results: 1,
2807
3200
  # })
@@ -2834,6 +3227,10 @@ module Aws::WorkMail
2834
3227
  # @option params [Integer] :max_results
2835
3228
  # The maximum number of results to return in a single call.
2836
3229
  #
3230
+ # @option params [Types::ListResourcesFilters] :filters
3231
+ # Limit the resource search results based on the filter criteria. You
3232
+ # can only use one filter per request.
3233
+ #
2837
3234
  # @return [Types::ListResourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2838
3235
  #
2839
3236
  # * {Types::ListResourcesResponse#resources #resources} => Array<Types::Resource>
@@ -2847,6 +3244,11 @@ module Aws::WorkMail
2847
3244
  # organization_id: "OrganizationId", # required
2848
3245
  # next_token: "NextToken",
2849
3246
  # max_results: 1,
3247
+ # filters: {
3248
+ # name_prefix: "String",
3249
+ # primary_email_prefix: "String",
3250
+ # state: "ENABLED", # accepts ENABLED, DISABLED, DELETED
3251
+ # },
2850
3252
  # })
2851
3253
  #
2852
3254
  # @example Response structure
@@ -2859,6 +3261,7 @@ module Aws::WorkMail
2859
3261
  # resp.resources[0].state #=> String, one of "ENABLED", "DISABLED", "DELETED"
2860
3262
  # resp.resources[0].enabled_date #=> Time
2861
3263
  # resp.resources[0].disabled_date #=> Time
3264
+ # resp.resources[0].description #=> String
2862
3265
  # resp.next_token #=> String
2863
3266
  #
2864
3267
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListResources AWS API Documentation
@@ -2912,6 +3315,10 @@ module Aws::WorkMail
2912
3315
  # @option params [Integer] :max_results
2913
3316
  # The maximum number of results to return in a single call.
2914
3317
  #
3318
+ # @option params [Types::ListUsersFilters] :filters
3319
+ # Limit the user search results based on the filter criteria. You can
3320
+ # only use one filter per request.
3321
+ #
2915
3322
  # @return [Types::ListUsersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2916
3323
  #
2917
3324
  # * {Types::ListUsersResponse#users #users} => Array<Types::User>
@@ -2925,6 +3332,12 @@ module Aws::WorkMail
2925
3332
  # organization_id: "OrganizationId", # required
2926
3333
  # next_token: "NextToken",
2927
3334
  # max_results: 1,
3335
+ # filters: {
3336
+ # username_prefix: "String",
3337
+ # display_name_prefix: "UserAttribute",
3338
+ # primary_email_prefix: "String",
3339
+ # state: "ENABLED", # accepts ENABLED, DISABLED, DELETED
3340
+ # },
2928
3341
  # })
2929
3342
  #
2930
3343
  # @example Response structure
@@ -2935,7 +3348,7 @@ module Aws::WorkMail
2935
3348
  # resp.users[0].name #=> String
2936
3349
  # resp.users[0].display_name #=> String
2937
3350
  # resp.users[0].state #=> String, one of "ENABLED", "DISABLED", "DELETED"
2938
- # resp.users[0].user_role #=> String, one of "USER", "RESOURCE", "SYSTEM_USER"
3351
+ # resp.users[0].user_role #=> String, one of "USER", "RESOURCE", "SYSTEM_USER", "REMOTE_USER"
2939
3352
  # resp.users[0].enabled_date #=> Time
2940
3353
  # resp.users[0].disabled_date #=> Time
2941
3354
  # resp.next_token #=> String
@@ -3091,13 +3504,35 @@ module Aws::WorkMail
3091
3504
  # resource exists.
3092
3505
  #
3093
3506
  # @option params [required, String] :entity_id
3094
- # The identifier of the user, group, or resource for which to update
3095
- # mailbox permissions.
3507
+ # The identifier of the user or resource for which to update mailbox
3508
+ # permissions.
3509
+ #
3510
+ # The identifier can be *UserId, ResourceID, or Group Id*, *Username,
3511
+ # Resourcename, or Groupname*, or *email*.
3512
+ #
3513
+ # * Entity ID: 12345678-1234-1234-1234-123456789012,
3514
+ # r-0123456789a0123456789b0123456789, or
3515
+ # S-1-1-12-1234567890-123456789-123456789-1234
3516
+ #
3517
+ # * Email address: entity@domain.tld
3518
+ #
3519
+ # * Entity name: entity
3096
3520
  #
3097
3521
  # @option params [required, String] :grantee_id
3098
3522
  # The identifier of the user, group, or resource to which to grant the
3099
3523
  # permissions.
3100
3524
  #
3525
+ # The identifier can be *UserId, ResourceID, or Group Id*, *Username,
3526
+ # Resourcename, or Groupname*, or *email*.
3527
+ #
3528
+ # * Grantee ID: 12345678-1234-1234-1234-123456789012,
3529
+ # r-0123456789a0123456789b0123456789, or
3530
+ # S-1-1-12-1234567890-123456789-123456789-1234
3531
+ #
3532
+ # * Email address: grantee@domain.tld
3533
+ #
3534
+ # * Grantee name: grantee
3535
+ #
3101
3536
  # @option params [required, Array<String>] :permission_values
3102
3537
  # The permissions granted to the grantee. SEND\_AS allows the grantee to
3103
3538
  # send email as the owner of the mailbox (the grantee is not mentioned
@@ -3113,8 +3548,8 @@ module Aws::WorkMail
3113
3548
  #
3114
3549
  # resp = client.put_mailbox_permissions({
3115
3550
  # organization_id: "OrganizationId", # required
3116
- # entity_id: "WorkMailIdentifier", # required
3117
- # grantee_id: "WorkMailIdentifier", # required
3551
+ # entity_id: "EntityIdentifier", # required
3552
+ # grantee_id: "EntityIdentifier", # required
3118
3553
  # permission_values: ["FULL_ACCESS"], # required, accepts FULL_ACCESS, SEND_AS, SEND_ON_BEHALF
3119
3554
  # })
3120
3555
  #
@@ -3279,6 +3714,16 @@ module Aws::WorkMail
3279
3714
  # @option params [required, String] :entity_id
3280
3715
  # The identifier for the user, group, or resource to be updated.
3281
3716
  #
3717
+ # The identifier can accept *UserId, ResourceId, or GroupId*, or
3718
+ # *Username, Resourcename, or Groupname*. The following identity formats
3719
+ # are available:
3720
+ #
3721
+ # * Entity ID: 12345678-1234-1234-1234-123456789012,
3722
+ # r-0123456789a0123456789b0123456789, or
3723
+ # S-1-1-12-1234567890-123456789-123456789-1234
3724
+ #
3725
+ # * Entity name: entity
3726
+ #
3282
3727
  # @option params [required, String] :email
3283
3728
  # The email for the user, group, or resource to be updated.
3284
3729
  #
@@ -3288,7 +3733,7 @@ module Aws::WorkMail
3288
3733
  #
3289
3734
  # resp = client.register_to_work_mail({
3290
3735
  # organization_id: "OrganizationId", # required
3291
- # entity_id: "WorkMailIdentifier", # required
3736
+ # entity_id: "EntityIdentifier", # required
3292
3737
  # email: "EmailAddress", # required
3293
3738
  # })
3294
3739
  #
@@ -3353,6 +3798,18 @@ module Aws::WorkMail
3353
3798
  # @option params [required, String] :entity_id
3354
3799
  # The identifier of the user or resource associated with the mailbox.
3355
3800
  #
3801
+ # The identifier can accept *UserId or ResourceId*, *Username or
3802
+ # Resourcename*, or *email*. The following identity formats are
3803
+ # available:
3804
+ #
3805
+ # * Entity ID: 12345678-1234-1234-1234-123456789012,
3806
+ # r-0123456789a0123456789b0123456789 , or
3807
+ # S-1-1-12-1234567890-123456789-123456789-1234
3808
+ #
3809
+ # * Email address: entity@domain.tld
3810
+ #
3811
+ # * Entity name: entity
3812
+ #
3356
3813
  # @option params [String] :description
3357
3814
  # The mailbox export job description.
3358
3815
  #
@@ -3379,7 +3836,7 @@ module Aws::WorkMail
3379
3836
  # resp = client.start_mailbox_export_job({
3380
3837
  # client_token: "IdempotencyClientToken", # required
3381
3838
  # organization_id: "OrganizationId", # required
3382
- # entity_id: "WorkMailIdentifier", # required
3839
+ # entity_id: "EntityIdentifier", # required
3383
3840
  # description: "Description",
3384
3841
  # role_arn: "RoleArn", # required
3385
3842
  # kms_key_arn: "KmsKeyArn", # required
@@ -3600,6 +4057,46 @@ module Aws::WorkMail
3600
4057
  req.send_request(options)
3601
4058
  end
3602
4059
 
4060
+ # Updates attibutes in a group.
4061
+ #
4062
+ # @option params [required, String] :organization_id
4063
+ # The identifier for the organization under which the group exists.
4064
+ #
4065
+ # @option params [required, String] :group_id
4066
+ # The identifier for the group to be updated.
4067
+ #
4068
+ # The identifier can accept *GroupId*, *Groupname*, or *email*. The
4069
+ # following identity formats are available:
4070
+ #
4071
+ # * Group ID: 12345678-1234-1234-1234-123456789012 or
4072
+ # S-1-1-12-1234567890-123456789-123456789-1234
4073
+ #
4074
+ # * Email address: group@domain.tld
4075
+ #
4076
+ # * Group name: group
4077
+ #
4078
+ # @option params [Boolean] :hidden_from_global_address_list
4079
+ # If enabled, the group is hidden from the global address list.
4080
+ #
4081
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4082
+ #
4083
+ # @example Request syntax with placeholder values
4084
+ #
4085
+ # resp = client.update_group({
4086
+ # organization_id: "OrganizationId", # required
4087
+ # group_id: "EntityIdentifier", # required
4088
+ # hidden_from_global_address_list: false,
4089
+ # })
4090
+ #
4091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateGroup AWS API Documentation
4092
+ #
4093
+ # @overload update_group(params = {})
4094
+ # @param [Hash] params ({})
4095
+ def update_group(params = {}, options = {})
4096
+ req = build_request(:update_group, params)
4097
+ req.send_request(options)
4098
+ end
4099
+
3603
4100
  # Updates an impersonation role for the given WorkMail organization.
3604
4101
  #
3605
4102
  # @option params [required, String] :organization_id
@@ -3662,6 +4159,16 @@ module Aws::WorkMail
3662
4159
  # @option params [required, String] :user_id
3663
4160
  # The identifer for the user for whom to update the mailbox quota.
3664
4161
  #
4162
+ # The identifier can be the *UserId*, *Username*, or *email*. The
4163
+ # following identity formats are available:
4164
+ #
4165
+ # * User ID: 12345678-1234-1234-1234-123456789012 or
4166
+ # S-1-1-12-1234567890-123456789-123456789-1234
4167
+ #
4168
+ # * Email address: user@domain.tld
4169
+ #
4170
+ # * User name: user
4171
+ #
3665
4172
  # @option params [required, Integer] :mailbox_quota
3666
4173
  # The updated mailbox quota, in MB, for the specified user.
3667
4174
  #
@@ -3671,7 +4178,7 @@ module Aws::WorkMail
3671
4178
  #
3672
4179
  # resp = client.update_mailbox_quota({
3673
4180
  # organization_id: "OrganizationId", # required
3674
- # user_id: "WorkMailIdentifier", # required
4181
+ # user_id: "EntityIdentifier", # required
3675
4182
  # mailbox_quota: 1, # required
3676
4183
  # })
3677
4184
  #
@@ -3771,6 +4278,18 @@ module Aws::WorkMail
3771
4278
  # @option params [required, String] :entity_id
3772
4279
  # The user, group, or resource to update.
3773
4280
  #
4281
+ # The identifier can accept *UseriD, ResourceId, or GroupId*, *Username,
4282
+ # Resourcename, or Groupname*, or *email*. The following identity
4283
+ # formats are available:
4284
+ #
4285
+ # * Entity ID: 12345678-1234-1234-1234-123456789012,
4286
+ # r-0123456789a0123456789b0123456789, or
4287
+ # S-1-1-12-1234567890-123456789-123456789-1234
4288
+ #
4289
+ # * Email address: entity@domain.tld
4290
+ #
4291
+ # * Entity name: entity
4292
+ #
3774
4293
  # @option params [required, String] :email
3775
4294
  # The value of the email to be updated as primary.
3776
4295
  #
@@ -3780,7 +4299,7 @@ module Aws::WorkMail
3780
4299
  #
3781
4300
  # resp = client.update_primary_email_address({
3782
4301
  # organization_id: "OrganizationId", # required
3783
- # entity_id: "WorkMailIdentifier", # required
4302
+ # entity_id: "EntityIdentifier", # required
3784
4303
  # email: "EmailAddress", # required
3785
4304
  # })
3786
4305
  #
@@ -3805,25 +4324,46 @@ module Aws::WorkMail
3805
4324
  # @option params [required, String] :resource_id
3806
4325
  # The identifier of the resource to be updated.
3807
4326
  #
4327
+ # The identifier can accept *ResourceId*, *Resourcename*, or *email*.
4328
+ # The following identity formats are available:
4329
+ #
4330
+ # * Resource ID: r-0123456789a0123456789b0123456789
4331
+ #
4332
+ # * Email address: resource@domain.tld
4333
+ #
4334
+ # * Resource name: resource
4335
+ #
3808
4336
  # @option params [String] :name
3809
4337
  # The name of the resource to be updated.
3810
4338
  #
3811
4339
  # @option params [Types::BookingOptions] :booking_options
3812
4340
  # The resource's booking options to be updated.
3813
4341
  #
4342
+ # @option params [String] :description
4343
+ # Updates the resource description.
4344
+ #
4345
+ # @option params [String] :type
4346
+ # Updates the resource type.
4347
+ #
4348
+ # @option params [Boolean] :hidden_from_global_address_list
4349
+ # If enabled, the resource is hidden from the global address list.
4350
+ #
3814
4351
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3815
4352
  #
3816
4353
  # @example Request syntax with placeholder values
3817
4354
  #
3818
4355
  # resp = client.update_resource({
3819
4356
  # organization_id: "OrganizationId", # required
3820
- # resource_id: "ResourceId", # required
4357
+ # resource_id: "EntityIdentifier", # required
3821
4358
  # name: "ResourceName",
3822
4359
  # booking_options: {
3823
4360
  # auto_accept_requests: false,
3824
4361
  # auto_decline_recurring_requests: false,
3825
4362
  # auto_decline_conflicting_requests: false,
3826
4363
  # },
4364
+ # description: "NewResourceDescription",
4365
+ # type: "ROOM", # accepts ROOM, EQUIPMENT
4366
+ # hidden_from_global_address_list: false,
3827
4367
  # })
3828
4368
  #
3829
4369
  # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateResource AWS API Documentation
@@ -3835,6 +4375,106 @@ module Aws::WorkMail
3835
4375
  req.send_request(options)
3836
4376
  end
3837
4377
 
4378
+ # Updates data for the user. To have the latest information, it must be
4379
+ # preceded by a DescribeUser call. The dataset in the request should be
4380
+ # the one expected when performing another `DescribeUser` call.
4381
+ #
4382
+ # @option params [required, String] :organization_id
4383
+ # The identifier for the organization under which the user exists.
4384
+ #
4385
+ # @option params [required, String] :user_id
4386
+ # The identifier for the user to be updated.
4387
+ #
4388
+ # The identifier can be the *UserId*, *Username*, or *email*. The
4389
+ # following identity formats are available:
4390
+ #
4391
+ # * User ID: 12345678-1234-1234-1234-123456789012 or
4392
+ # S-1-1-12-1234567890-123456789-123456789-1234
4393
+ #
4394
+ # * Email address: user@domain.tld
4395
+ #
4396
+ # * User name: user
4397
+ #
4398
+ # @option params [String] :role
4399
+ # Updates the user role.
4400
+ #
4401
+ # You cannot pass *SYSTEM\_USER* or *RESOURCE*.
4402
+ #
4403
+ # @option params [String] :display_name
4404
+ # Updates the display name of the user.
4405
+ #
4406
+ # @option params [String] :first_name
4407
+ # Updates the user's first name.
4408
+ #
4409
+ # @option params [String] :last_name
4410
+ # Updates the user's last name.
4411
+ #
4412
+ # @option params [Boolean] :hidden_from_global_address_list
4413
+ # If enabled, the user is hidden from the global address list.
4414
+ #
4415
+ # @option params [String] :initials
4416
+ # Updates the user's initials.
4417
+ #
4418
+ # @option params [String] :telephone
4419
+ # Updates the user's contact details.
4420
+ #
4421
+ # @option params [String] :street
4422
+ # Updates the user's street address.
4423
+ #
4424
+ # @option params [String] :job_title
4425
+ # Updates the user's job title.
4426
+ #
4427
+ # @option params [String] :city
4428
+ # Updates the user's city.
4429
+ #
4430
+ # @option params [String] :company
4431
+ # Updates the user's company.
4432
+ #
4433
+ # @option params [String] :zip_code
4434
+ # Updates the user's zipcode.
4435
+ #
4436
+ # @option params [String] :department
4437
+ # Updates the user's department.
4438
+ #
4439
+ # @option params [String] :country
4440
+ # Updates the user's country.
4441
+ #
4442
+ # @option params [String] :office
4443
+ # Updates the user's office.
4444
+ #
4445
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4446
+ #
4447
+ # @example Request syntax with placeholder values
4448
+ #
4449
+ # resp = client.update_user({
4450
+ # organization_id: "OrganizationId", # required
4451
+ # user_id: "EntityIdentifier", # required
4452
+ # role: "USER", # accepts USER, RESOURCE, SYSTEM_USER, REMOTE_USER
4453
+ # display_name: "UserAttribute",
4454
+ # first_name: "UserAttribute",
4455
+ # last_name: "UserAttribute",
4456
+ # hidden_from_global_address_list: false,
4457
+ # initials: "UserAttribute",
4458
+ # telephone: "UserAttribute",
4459
+ # street: "UserAttribute",
4460
+ # job_title: "UserAttribute",
4461
+ # city: "UserAttribute",
4462
+ # company: "UserAttribute",
4463
+ # zip_code: "UserAttribute",
4464
+ # department: "UserAttribute",
4465
+ # country: "UserAttribute",
4466
+ # office: "UserAttribute",
4467
+ # })
4468
+ #
4469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateUser AWS API Documentation
4470
+ #
4471
+ # @overload update_user(params = {})
4472
+ # @param [Hash] params ({})
4473
+ def update_user(params = {}, options = {})
4474
+ req = build_request(:update_user, params)
4475
+ req.send_request(options)
4476
+ end
4477
+
3838
4478
  # @!endgroup
3839
4479
 
3840
4480
  # @param params ({})
@@ -3848,7 +4488,7 @@ module Aws::WorkMail
3848
4488
  params: params,
3849
4489
  config: config)
3850
4490
  context[:gem_name] = 'aws-sdk-workmail'
3851
- context[:gem_version] = '1.57.0'
4491
+ context[:gem_version] = '1.59.0'
3852
4492
  Seahorse::Client::Request.new(handlers, context)
3853
4493
  end
3854
4494