aws-sdk-workmail 1.49.0 → 1.51.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.
@@ -20,6 +20,7 @@ module Aws::WorkMail
20
20
  AccessControlRuleName = Shapes::StringShape.new(name: 'AccessControlRuleName')
21
21
  AccessControlRuleNameList = Shapes::ListShape.new(name: 'AccessControlRuleNameList')
22
22
  AccessControlRulesList = Shapes::ListShape.new(name: 'AccessControlRulesList')
23
+ AccessEffect = Shapes::StringShape.new(name: 'AccessEffect')
23
24
  ActionsList = Shapes::ListShape.new(name: 'ActionsList')
24
25
  Aliases = Shapes::ListShape.new(name: 'Aliases')
25
26
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
@@ -27,6 +28,11 @@ module Aws::WorkMail
27
28
  AssociateDelegateToResourceResponse = Shapes::StructureShape.new(name: 'AssociateDelegateToResourceResponse')
28
29
  AssociateMemberToGroupRequest = Shapes::StructureShape.new(name: 'AssociateMemberToGroupRequest')
29
30
  AssociateMemberToGroupResponse = Shapes::StructureShape.new(name: 'AssociateMemberToGroupResponse')
31
+ AssumeImpersonationRoleRequest = Shapes::StructureShape.new(name: 'AssumeImpersonationRoleRequest')
32
+ AssumeImpersonationRoleResponse = Shapes::StructureShape.new(name: 'AssumeImpersonationRoleResponse')
33
+ AvailabilityConfiguration = Shapes::StructureShape.new(name: 'AvailabilityConfiguration')
34
+ AvailabilityConfigurationList = Shapes::ListShape.new(name: 'AvailabilityConfigurationList')
35
+ AvailabilityProviderType = Shapes::StringShape.new(name: 'AvailabilityProviderType')
30
36
  BookingOptions = Shapes::StructureShape.new(name: 'BookingOptions')
31
37
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
32
38
  BooleanObject = Shapes::BooleanShape.new(name: 'BooleanObject')
@@ -34,8 +40,12 @@ module Aws::WorkMail
34
40
  CancelMailboxExportJobResponse = Shapes::StructureShape.new(name: 'CancelMailboxExportJobResponse')
35
41
  CreateAliasRequest = Shapes::StructureShape.new(name: 'CreateAliasRequest')
36
42
  CreateAliasResponse = Shapes::StructureShape.new(name: 'CreateAliasResponse')
43
+ CreateAvailabilityConfigurationRequest = Shapes::StructureShape.new(name: 'CreateAvailabilityConfigurationRequest')
44
+ CreateAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'CreateAvailabilityConfigurationResponse')
37
45
  CreateGroupRequest = Shapes::StructureShape.new(name: 'CreateGroupRequest')
38
46
  CreateGroupResponse = Shapes::StructureShape.new(name: 'CreateGroupResponse')
47
+ CreateImpersonationRoleRequest = Shapes::StructureShape.new(name: 'CreateImpersonationRoleRequest')
48
+ CreateImpersonationRoleResponse = Shapes::StructureShape.new(name: 'CreateImpersonationRoleResponse')
39
49
  CreateMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleRequest')
40
50
  CreateMobileDeviceAccessRuleResponse = Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleResponse')
41
51
  CreateOrganizationRequest = Shapes::StructureShape.new(name: 'CreateOrganizationRequest')
@@ -49,10 +59,14 @@ module Aws::WorkMail
49
59
  DeleteAccessControlRuleResponse = Shapes::StructureShape.new(name: 'DeleteAccessControlRuleResponse')
50
60
  DeleteAliasRequest = Shapes::StructureShape.new(name: 'DeleteAliasRequest')
51
61
  DeleteAliasResponse = Shapes::StructureShape.new(name: 'DeleteAliasResponse')
62
+ DeleteAvailabilityConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteAvailabilityConfigurationRequest')
63
+ DeleteAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteAvailabilityConfigurationResponse')
52
64
  DeleteEmailMonitoringConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteEmailMonitoringConfigurationRequest')
53
65
  DeleteEmailMonitoringConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteEmailMonitoringConfigurationResponse')
54
66
  DeleteGroupRequest = Shapes::StructureShape.new(name: 'DeleteGroupRequest')
55
67
  DeleteGroupResponse = Shapes::StructureShape.new(name: 'DeleteGroupResponse')
68
+ DeleteImpersonationRoleRequest = Shapes::StructureShape.new(name: 'DeleteImpersonationRoleRequest')
69
+ DeleteImpersonationRoleResponse = Shapes::StructureShape.new(name: 'DeleteImpersonationRoleResponse')
56
70
  DeleteMailboxPermissionsRequest = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsRequest')
57
71
  DeleteMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsResponse')
58
72
  DeleteMobileDeviceAccessOverrideRequest = Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessOverrideRequest')
@@ -116,6 +130,9 @@ module Aws::WorkMail
116
130
  EntityNotFoundException = Shapes::StructureShape.new(name: 'EntityNotFoundException')
117
131
  EntityState = Shapes::StringShape.new(name: 'EntityState')
118
132
  EntityStateException = Shapes::StructureShape.new(name: 'EntityStateException')
133
+ EwsAvailabilityProvider = Shapes::StructureShape.new(name: 'EwsAvailabilityProvider')
134
+ ExpiresIn = Shapes::IntegerShape.new(name: 'ExpiresIn')
135
+ ExternalUserName = Shapes::StringShape.new(name: 'ExternalUserName')
119
136
  FolderConfiguration = Shapes::StructureShape.new(name: 'FolderConfiguration')
120
137
  FolderConfigurations = Shapes::ListShape.new(name: 'FolderConfigurations')
121
138
  FolderName = Shapes::StringShape.new(name: 'FolderName')
@@ -123,6 +140,10 @@ module Aws::WorkMail
123
140
  GetAccessControlEffectResponse = Shapes::StructureShape.new(name: 'GetAccessControlEffectResponse')
124
141
  GetDefaultRetentionPolicyRequest = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyRequest')
125
142
  GetDefaultRetentionPolicyResponse = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyResponse')
143
+ GetImpersonationRoleEffectRequest = Shapes::StructureShape.new(name: 'GetImpersonationRoleEffectRequest')
144
+ GetImpersonationRoleEffectResponse = Shapes::StructureShape.new(name: 'GetImpersonationRoleEffectResponse')
145
+ GetImpersonationRoleRequest = Shapes::StructureShape.new(name: 'GetImpersonationRoleRequest')
146
+ GetImpersonationRoleResponse = Shapes::StructureShape.new(name: 'GetImpersonationRoleResponse')
126
147
  GetMailDomainRequest = Shapes::StructureShape.new(name: 'GetMailDomainRequest')
127
148
  GetMailDomainResponse = Shapes::StructureShape.new(name: 'GetMailDomainResponse')
128
149
  GetMailboxDetailsRequest = Shapes::StructureShape.new(name: 'GetMailboxDetailsRequest')
@@ -136,6 +157,21 @@ module Aws::WorkMail
136
157
  Groups = Shapes::ListShape.new(name: 'Groups')
137
158
  HostedZoneId = Shapes::StringShape.new(name: 'HostedZoneId')
138
159
  IdempotencyClientToken = Shapes::StringShape.new(name: 'IdempotencyClientToken')
160
+ ImpersonationMatchedRule = Shapes::StructureShape.new(name: 'ImpersonationMatchedRule')
161
+ ImpersonationMatchedRuleList = Shapes::ListShape.new(name: 'ImpersonationMatchedRuleList')
162
+ ImpersonationRole = Shapes::StructureShape.new(name: 'ImpersonationRole')
163
+ ImpersonationRoleDescription = Shapes::StringShape.new(name: 'ImpersonationRoleDescription')
164
+ ImpersonationRoleId = Shapes::StringShape.new(name: 'ImpersonationRoleId')
165
+ ImpersonationRoleIdList = Shapes::ListShape.new(name: 'ImpersonationRoleIdList')
166
+ ImpersonationRoleList = Shapes::ListShape.new(name: 'ImpersonationRoleList')
167
+ ImpersonationRoleName = Shapes::StringShape.new(name: 'ImpersonationRoleName')
168
+ ImpersonationRoleType = Shapes::StringShape.new(name: 'ImpersonationRoleType')
169
+ ImpersonationRule = Shapes::StructureShape.new(name: 'ImpersonationRule')
170
+ ImpersonationRuleDescription = Shapes::StringShape.new(name: 'ImpersonationRuleDescription')
171
+ ImpersonationRuleId = Shapes::StringShape.new(name: 'ImpersonationRuleId')
172
+ ImpersonationRuleList = Shapes::ListShape.new(name: 'ImpersonationRuleList')
173
+ ImpersonationRuleName = Shapes::StringShape.new(name: 'ImpersonationRuleName')
174
+ ImpersonationToken = Shapes::StringShape.new(name: 'ImpersonationToken')
139
175
  InvalidConfigurationException = Shapes::StructureShape.new(name: 'InvalidConfigurationException')
140
176
  InvalidCustomSesConfigurationException = Shapes::StructureShape.new(name: 'InvalidCustomSesConfigurationException')
141
177
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
@@ -145,15 +181,21 @@ module Aws::WorkMail
145
181
  IpRangeList = Shapes::ListShape.new(name: 'IpRangeList')
146
182
  Jobs = Shapes::ListShape.new(name: 'Jobs')
147
183
  KmsKeyArn = Shapes::StringShape.new(name: 'KmsKeyArn')
184
+ LambdaArn = Shapes::StringShape.new(name: 'LambdaArn')
185
+ LambdaAvailabilityProvider = Shapes::StructureShape.new(name: 'LambdaAvailabilityProvider')
148
186
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
149
187
  ListAccessControlRulesRequest = Shapes::StructureShape.new(name: 'ListAccessControlRulesRequest')
150
188
  ListAccessControlRulesResponse = Shapes::StructureShape.new(name: 'ListAccessControlRulesResponse')
151
189
  ListAliasesRequest = Shapes::StructureShape.new(name: 'ListAliasesRequest')
152
190
  ListAliasesResponse = Shapes::StructureShape.new(name: 'ListAliasesResponse')
191
+ ListAvailabilityConfigurationsRequest = Shapes::StructureShape.new(name: 'ListAvailabilityConfigurationsRequest')
192
+ ListAvailabilityConfigurationsResponse = Shapes::StructureShape.new(name: 'ListAvailabilityConfigurationsResponse')
153
193
  ListGroupMembersRequest = Shapes::StructureShape.new(name: 'ListGroupMembersRequest')
154
194
  ListGroupMembersResponse = Shapes::StructureShape.new(name: 'ListGroupMembersResponse')
155
195
  ListGroupsRequest = Shapes::StructureShape.new(name: 'ListGroupsRequest')
156
196
  ListGroupsResponse = Shapes::StructureShape.new(name: 'ListGroupsResponse')
197
+ ListImpersonationRolesRequest = Shapes::StructureShape.new(name: 'ListImpersonationRolesRequest')
198
+ ListImpersonationRolesResponse = Shapes::StructureShape.new(name: 'ListImpersonationRolesResponse')
157
199
  ListMailDomainsRequest = Shapes::StructureShape.new(name: 'ListMailDomainsRequest')
158
200
  ListMailDomainsResponse = Shapes::StructureShape.new(name: 'ListMailDomainsResponse')
159
201
  ListMailboxExportJobsRequest = Shapes::StructureShape.new(name: 'ListMailboxExportJobsRequest')
@@ -227,6 +269,7 @@ module Aws::WorkMail
227
269
  PutMobileDeviceAccessOverrideResponse = Shapes::StructureShape.new(name: 'PutMobileDeviceAccessOverrideResponse')
228
270
  PutRetentionPolicyRequest = Shapes::StructureShape.new(name: 'PutRetentionPolicyRequest')
229
271
  PutRetentionPolicyResponse = Shapes::StructureShape.new(name: 'PutRetentionPolicyResponse')
272
+ RedactedEwsAvailabilityProvider = Shapes::StructureShape.new(name: 'RedactedEwsAvailabilityProvider')
230
273
  RegisterMailDomainRequest = Shapes::StructureShape.new(name: 'RegisterMailDomainRequest')
231
274
  RegisterMailDomainResponse = Shapes::StructureShape.new(name: 'RegisterMailDomainResponse')
232
275
  RegisterToWorkMailRequest = Shapes::StructureShape.new(name: 'RegisterToWorkMailRequest')
@@ -257,13 +300,20 @@ module Aws::WorkMail
257
300
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
258
301
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
259
302
  TagValue = Shapes::StringShape.new(name: 'TagValue')
303
+ TargetUsers = Shapes::ListShape.new(name: 'TargetUsers')
304
+ TestAvailabilityConfigurationRequest = Shapes::StructureShape.new(name: 'TestAvailabilityConfigurationRequest')
305
+ TestAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'TestAvailabilityConfigurationResponse')
260
306
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
261
307
  TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
262
308
  UnsupportedOperationException = Shapes::StructureShape.new(name: 'UnsupportedOperationException')
263
309
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
264
310
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
311
+ UpdateAvailabilityConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateAvailabilityConfigurationRequest')
312
+ UpdateAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateAvailabilityConfigurationResponse')
265
313
  UpdateDefaultMailDomainRequest = Shapes::StructureShape.new(name: 'UpdateDefaultMailDomainRequest')
266
314
  UpdateDefaultMailDomainResponse = Shapes::StructureShape.new(name: 'UpdateDefaultMailDomainResponse')
315
+ UpdateImpersonationRoleRequest = Shapes::StructureShape.new(name: 'UpdateImpersonationRoleRequest')
316
+ UpdateImpersonationRoleResponse = Shapes::StructureShape.new(name: 'UpdateImpersonationRoleResponse')
267
317
  UpdateMailboxQuotaRequest = Shapes::StructureShape.new(name: 'UpdateMailboxQuotaRequest')
268
318
  UpdateMailboxQuotaResponse = Shapes::StructureShape.new(name: 'UpdateMailboxQuotaResponse')
269
319
  UpdateMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'UpdateMobileDeviceAccessRuleRequest')
@@ -272,6 +322,7 @@ module Aws::WorkMail
272
322
  UpdatePrimaryEmailAddressResponse = Shapes::StructureShape.new(name: 'UpdatePrimaryEmailAddressResponse')
273
323
  UpdateResourceRequest = Shapes::StructureShape.new(name: 'UpdateResourceRequest')
274
324
  UpdateResourceResponse = Shapes::StructureShape.new(name: 'UpdateResourceResponse')
325
+ Url = Shapes::StringShape.new(name: 'Url')
275
326
  User = Shapes::StructureShape.new(name: 'User')
276
327
  UserIdList = Shapes::ListShape.new(name: 'UserIdList')
277
328
  UserName = Shapes::StringShape.new(name: 'UserName')
@@ -291,6 +342,8 @@ module Aws::WorkMail
291
342
  AccessControlRule.add_member(:not_user_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "NotUserIds"))
292
343
  AccessControlRule.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
293
344
  AccessControlRule.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
345
+ AccessControlRule.add_member(:impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "ImpersonationRoleIds"))
346
+ AccessControlRule.add_member(:not_impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "NotImpersonationRoleIds"))
294
347
  AccessControlRule.struct_class = Types::AccessControlRule
295
348
 
296
349
  AccessControlRuleNameList.member = Shapes::ShapeRef.new(shape: AccessControlRuleName)
@@ -315,6 +368,24 @@ module Aws::WorkMail
315
368
 
316
369
  AssociateMemberToGroupResponse.struct_class = Types::AssociateMemberToGroupResponse
317
370
 
371
+ AssumeImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
372
+ AssumeImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
373
+ AssumeImpersonationRoleRequest.struct_class = Types::AssumeImpersonationRoleRequest
374
+
375
+ AssumeImpersonationRoleResponse.add_member(:token, Shapes::ShapeRef.new(shape: ImpersonationToken, location_name: "Token"))
376
+ AssumeImpersonationRoleResponse.add_member(:expires_in, Shapes::ShapeRef.new(shape: ExpiresIn, location_name: "ExpiresIn"))
377
+ AssumeImpersonationRoleResponse.struct_class = Types::AssumeImpersonationRoleResponse
378
+
379
+ AvailabilityConfiguration.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, location_name: "DomainName"))
380
+ AvailabilityConfiguration.add_member(:provider_type, Shapes::ShapeRef.new(shape: AvailabilityProviderType, location_name: "ProviderType"))
381
+ AvailabilityConfiguration.add_member(:ews_provider, Shapes::ShapeRef.new(shape: RedactedEwsAvailabilityProvider, location_name: "EwsProvider"))
382
+ AvailabilityConfiguration.add_member(:lambda_provider, Shapes::ShapeRef.new(shape: LambdaAvailabilityProvider, location_name: "LambdaProvider"))
383
+ AvailabilityConfiguration.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
384
+ AvailabilityConfiguration.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
385
+ AvailabilityConfiguration.struct_class = Types::AvailabilityConfiguration
386
+
387
+ AvailabilityConfigurationList.member = Shapes::ShapeRef.new(shape: AvailabilityConfiguration)
388
+
318
389
  BookingOptions.add_member(:auto_accept_requests, Shapes::ShapeRef.new(shape: Boolean, location_name: "AutoAcceptRequests"))
319
390
  BookingOptions.add_member(:auto_decline_recurring_requests, Shapes::ShapeRef.new(shape: Boolean, location_name: "AutoDeclineRecurringRequests"))
320
391
  BookingOptions.add_member(:auto_decline_conflicting_requests, Shapes::ShapeRef.new(shape: Boolean, location_name: "AutoDeclineConflictingRequests"))
@@ -334,6 +405,15 @@ module Aws::WorkMail
334
405
 
335
406
  CreateAliasResponse.struct_class = Types::CreateAliasResponse
336
407
 
408
+ CreateAvailabilityConfigurationRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
409
+ CreateAvailabilityConfigurationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
410
+ CreateAvailabilityConfigurationRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, required: true, location_name: "DomainName"))
411
+ CreateAvailabilityConfigurationRequest.add_member(:ews_provider, Shapes::ShapeRef.new(shape: EwsAvailabilityProvider, location_name: "EwsProvider"))
412
+ CreateAvailabilityConfigurationRequest.add_member(:lambda_provider, Shapes::ShapeRef.new(shape: LambdaAvailabilityProvider, location_name: "LambdaProvider"))
413
+ CreateAvailabilityConfigurationRequest.struct_class = Types::CreateAvailabilityConfigurationRequest
414
+
415
+ CreateAvailabilityConfigurationResponse.struct_class = Types::CreateAvailabilityConfigurationResponse
416
+
337
417
  CreateGroupRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
338
418
  CreateGroupRequest.add_member(:name, Shapes::ShapeRef.new(shape: GroupName, required: true, location_name: "Name"))
339
419
  CreateGroupRequest.struct_class = Types::CreateGroupRequest
@@ -341,6 +421,17 @@ module Aws::WorkMail
341
421
  CreateGroupResponse.add_member(:group_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, location_name: "GroupId"))
342
422
  CreateGroupResponse.struct_class = Types::CreateGroupResponse
343
423
 
424
+ CreateImpersonationRoleRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
425
+ CreateImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
426
+ CreateImpersonationRoleRequest.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, required: true, location_name: "Name"))
427
+ CreateImpersonationRoleRequest.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, required: true, location_name: "Type"))
428
+ CreateImpersonationRoleRequest.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRoleDescription, location_name: "Description"))
429
+ CreateImpersonationRoleRequest.add_member(:rules, Shapes::ShapeRef.new(shape: ImpersonationRuleList, required: true, location_name: "Rules"))
430
+ CreateImpersonationRoleRequest.struct_class = Types::CreateImpersonationRoleRequest
431
+
432
+ CreateImpersonationRoleResponse.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
433
+ CreateImpersonationRoleResponse.struct_class = Types::CreateImpersonationRoleResponse
434
+
344
435
  CreateMobileDeviceAccessRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
345
436
  CreateMobileDeviceAccessRuleRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
346
437
  CreateMobileDeviceAccessRuleRequest.add_member(:name, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleName, required: true, location_name: "Name"))
@@ -404,6 +495,12 @@ module Aws::WorkMail
404
495
 
405
496
  DeleteAliasResponse.struct_class = Types::DeleteAliasResponse
406
497
 
498
+ DeleteAvailabilityConfigurationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
499
+ DeleteAvailabilityConfigurationRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, required: true, location_name: "DomainName"))
500
+ DeleteAvailabilityConfigurationRequest.struct_class = Types::DeleteAvailabilityConfigurationRequest
501
+
502
+ DeleteAvailabilityConfigurationResponse.struct_class = Types::DeleteAvailabilityConfigurationResponse
503
+
407
504
  DeleteEmailMonitoringConfigurationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
408
505
  DeleteEmailMonitoringConfigurationRequest.struct_class = Types::DeleteEmailMonitoringConfigurationRequest
409
506
 
@@ -415,6 +512,12 @@ module Aws::WorkMail
415
512
 
416
513
  DeleteGroupResponse.struct_class = Types::DeleteGroupResponse
417
514
 
515
+ DeleteImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
516
+ DeleteImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
517
+ DeleteImpersonationRoleRequest.struct_class = Types::DeleteImpersonationRoleRequest
518
+
519
+ DeleteImpersonationRoleResponse.struct_class = Types::DeleteImpersonationRoleResponse
520
+
418
521
  DeleteMailboxPermissionsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
419
522
  DeleteMailboxPermissionsRequest.add_member(:entity_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "EntityId"))
420
523
  DeleteMailboxPermissionsRequest.add_member(:grantee_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "GranteeId"))
@@ -615,6 +718,11 @@ module Aws::WorkMail
615
718
  EntityStateException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
616
719
  EntityStateException.struct_class = Types::EntityStateException
617
720
 
721
+ EwsAvailabilityProvider.add_member(:ews_endpoint, Shapes::ShapeRef.new(shape: Url, required: true, location_name: "EwsEndpoint"))
722
+ EwsAvailabilityProvider.add_member(:ews_username, Shapes::ShapeRef.new(shape: ExternalUserName, required: true, location_name: "EwsUsername"))
723
+ EwsAvailabilityProvider.add_member(:ews_password, Shapes::ShapeRef.new(shape: Password, required: true, location_name: "EwsPassword"))
724
+ EwsAvailabilityProvider.struct_class = Types::EwsAvailabilityProvider
725
+
618
726
  FolderConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: FolderName, required: true, location_name: "Name"))
619
727
  FolderConfiguration.add_member(:action, Shapes::ShapeRef.new(shape: RetentionAction, required: true, location_name: "Action"))
620
728
  FolderConfiguration.add_member(:period, Shapes::ShapeRef.new(shape: RetentionPeriod, location_name: "Period"))
@@ -625,7 +733,8 @@ module Aws::WorkMail
625
733
  GetAccessControlEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
626
734
  GetAccessControlEffectRequest.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, required: true, location_name: "IpAddress"))
627
735
  GetAccessControlEffectRequest.add_member(:action, Shapes::ShapeRef.new(shape: AccessControlRuleAction, required: true, location_name: "Action"))
628
- GetAccessControlEffectRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
736
+ GetAccessControlEffectRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, location_name: "UserId"))
737
+ GetAccessControlEffectRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
629
738
  GetAccessControlEffectRequest.struct_class = Types::GetAccessControlEffectRequest
630
739
 
631
740
  GetAccessControlEffectResponse.add_member(:effect, Shapes::ShapeRef.new(shape: AccessControlRuleEffect, location_name: "Effect"))
@@ -641,6 +750,29 @@ module Aws::WorkMail
641
750
  GetDefaultRetentionPolicyResponse.add_member(:folder_configurations, Shapes::ShapeRef.new(shape: FolderConfigurations, location_name: "FolderConfigurations"))
642
751
  GetDefaultRetentionPolicyResponse.struct_class = Types::GetDefaultRetentionPolicyResponse
643
752
 
753
+ GetImpersonationRoleEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
754
+ GetImpersonationRoleEffectRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
755
+ GetImpersonationRoleEffectRequest.add_member(:target_user, Shapes::ShapeRef.new(shape: EntityIdentifier, required: true, location_name: "TargetUser"))
756
+ GetImpersonationRoleEffectRequest.struct_class = Types::GetImpersonationRoleEffectRequest
757
+
758
+ GetImpersonationRoleEffectResponse.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, location_name: "Type"))
759
+ GetImpersonationRoleEffectResponse.add_member(:effect, Shapes::ShapeRef.new(shape: AccessEffect, location_name: "Effect"))
760
+ GetImpersonationRoleEffectResponse.add_member(:matched_rules, Shapes::ShapeRef.new(shape: ImpersonationMatchedRuleList, location_name: "MatchedRules"))
761
+ GetImpersonationRoleEffectResponse.struct_class = Types::GetImpersonationRoleEffectResponse
762
+
763
+ GetImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
764
+ GetImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
765
+ GetImpersonationRoleRequest.struct_class = Types::GetImpersonationRoleRequest
766
+
767
+ GetImpersonationRoleResponse.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
768
+ GetImpersonationRoleResponse.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, location_name: "Name"))
769
+ GetImpersonationRoleResponse.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, location_name: "Type"))
770
+ GetImpersonationRoleResponse.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRoleDescription, location_name: "Description"))
771
+ GetImpersonationRoleResponse.add_member(:rules, Shapes::ShapeRef.new(shape: ImpersonationRuleList, location_name: "Rules"))
772
+ GetImpersonationRoleResponse.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
773
+ GetImpersonationRoleResponse.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
774
+ GetImpersonationRoleResponse.struct_class = Types::GetImpersonationRoleResponse
775
+
644
776
  GetMailDomainRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
645
777
  GetMailDomainRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: WorkMailDomainName, required: true, location_name: "DomainName"))
646
778
  GetMailDomainRequest.struct_class = Types::GetMailDomainRequest
@@ -694,6 +826,33 @@ module Aws::WorkMail
694
826
 
695
827
  Groups.member = Shapes::ShapeRef.new(shape: Group)
696
828
 
829
+ ImpersonationMatchedRule.add_member(:impersonation_rule_id, Shapes::ShapeRef.new(shape: ImpersonationRuleId, location_name: "ImpersonationRuleId"))
830
+ ImpersonationMatchedRule.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRuleName, location_name: "Name"))
831
+ ImpersonationMatchedRule.struct_class = Types::ImpersonationMatchedRule
832
+
833
+ ImpersonationMatchedRuleList.member = Shapes::ShapeRef.new(shape: ImpersonationMatchedRule)
834
+
835
+ ImpersonationRole.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
836
+ ImpersonationRole.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, location_name: "Name"))
837
+ ImpersonationRole.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, location_name: "Type"))
838
+ ImpersonationRole.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
839
+ ImpersonationRole.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
840
+ ImpersonationRole.struct_class = Types::ImpersonationRole
841
+
842
+ ImpersonationRoleIdList.member = Shapes::ShapeRef.new(shape: ImpersonationRoleId)
843
+
844
+ ImpersonationRoleList.member = Shapes::ShapeRef.new(shape: ImpersonationRole)
845
+
846
+ ImpersonationRule.add_member(:impersonation_rule_id, Shapes::ShapeRef.new(shape: ImpersonationRuleId, required: true, location_name: "ImpersonationRuleId"))
847
+ ImpersonationRule.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRuleName, location_name: "Name"))
848
+ ImpersonationRule.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRuleDescription, location_name: "Description"))
849
+ ImpersonationRule.add_member(:effect, Shapes::ShapeRef.new(shape: AccessEffect, required: true, location_name: "Effect"))
850
+ ImpersonationRule.add_member(:target_users, Shapes::ShapeRef.new(shape: TargetUsers, location_name: "TargetUsers"))
851
+ ImpersonationRule.add_member(:not_target_users, Shapes::ShapeRef.new(shape: TargetUsers, location_name: "NotTargetUsers"))
852
+ ImpersonationRule.struct_class = Types::ImpersonationRule
853
+
854
+ ImpersonationRuleList.member = Shapes::ShapeRef.new(shape: ImpersonationRule)
855
+
697
856
  InvalidConfigurationException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
698
857
  InvalidConfigurationException.struct_class = Types::InvalidConfigurationException
699
858
 
@@ -710,6 +869,9 @@ module Aws::WorkMail
710
869
 
711
870
  Jobs.member = Shapes::ShapeRef.new(shape: MailboxExportJob)
712
871
 
872
+ LambdaAvailabilityProvider.add_member(:lambda_arn, Shapes::ShapeRef.new(shape: LambdaArn, required: true, location_name: "LambdaArn"))
873
+ LambdaAvailabilityProvider.struct_class = Types::LambdaAvailabilityProvider
874
+
713
875
  LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
714
876
  LimitExceededException.struct_class = Types::LimitExceededException
715
877
 
@@ -729,6 +891,15 @@ module Aws::WorkMail
729
891
  ListAliasesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
730
892
  ListAliasesResponse.struct_class = Types::ListAliasesResponse
731
893
 
894
+ ListAvailabilityConfigurationsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
895
+ ListAvailabilityConfigurationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
896
+ ListAvailabilityConfigurationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
897
+ ListAvailabilityConfigurationsRequest.struct_class = Types::ListAvailabilityConfigurationsRequest
898
+
899
+ ListAvailabilityConfigurationsResponse.add_member(:availability_configurations, Shapes::ShapeRef.new(shape: AvailabilityConfigurationList, location_name: "AvailabilityConfigurations"))
900
+ ListAvailabilityConfigurationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
901
+ ListAvailabilityConfigurationsResponse.struct_class = Types::ListAvailabilityConfigurationsResponse
902
+
732
903
  ListGroupMembersRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
733
904
  ListGroupMembersRequest.add_member(:group_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "GroupId"))
734
905
  ListGroupMembersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -748,6 +919,15 @@ module Aws::WorkMail
748
919
  ListGroupsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
749
920
  ListGroupsResponse.struct_class = Types::ListGroupsResponse
750
921
 
922
+ ListImpersonationRolesRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
923
+ ListImpersonationRolesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
924
+ ListImpersonationRolesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
925
+ ListImpersonationRolesRequest.struct_class = Types::ListImpersonationRolesRequest
926
+
927
+ ListImpersonationRolesResponse.add_member(:roles, Shapes::ShapeRef.new(shape: ImpersonationRoleList, location_name: "Roles"))
928
+ ListImpersonationRolesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
929
+ ListImpersonationRolesResponse.struct_class = Types::ListImpersonationRolesResponse
930
+
751
931
  ListMailDomainsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
752
932
  ListMailDomainsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
753
933
  ListMailDomainsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -942,6 +1122,8 @@ module Aws::WorkMail
942
1122
  PutAccessControlRuleRequest.add_member(:user_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "UserIds"))
943
1123
  PutAccessControlRuleRequest.add_member(:not_user_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "NotUserIds"))
944
1124
  PutAccessControlRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1125
+ PutAccessControlRuleRequest.add_member(:impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "ImpersonationRoleIds"))
1126
+ PutAccessControlRuleRequest.add_member(:not_impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "NotImpersonationRoleIds"))
945
1127
  PutAccessControlRuleRequest.struct_class = Types::PutAccessControlRuleRequest
946
1128
 
947
1129
  PutAccessControlRuleResponse.struct_class = Types::PutAccessControlRuleResponse
@@ -985,6 +1167,10 @@ module Aws::WorkMail
985
1167
 
986
1168
  PutRetentionPolicyResponse.struct_class = Types::PutRetentionPolicyResponse
987
1169
 
1170
+ RedactedEwsAvailabilityProvider.add_member(:ews_endpoint, Shapes::ShapeRef.new(shape: Url, location_name: "EwsEndpoint"))
1171
+ RedactedEwsAvailabilityProvider.add_member(:ews_username, Shapes::ShapeRef.new(shape: ExternalUserName, location_name: "EwsUsername"))
1172
+ RedactedEwsAvailabilityProvider.struct_class = Types::RedactedEwsAvailabilityProvider
1173
+
988
1174
  RegisterMailDomainRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
989
1175
  RegisterMailDomainRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
990
1176
  RegisterMailDomainRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: WorkMailDomainName, required: true, location_name: "DomainName"))
@@ -1052,6 +1238,18 @@ module Aws::WorkMail
1052
1238
 
1053
1239
  TagResourceResponse.struct_class = Types::TagResourceResponse
1054
1240
 
1241
+ TargetUsers.member = Shapes::ShapeRef.new(shape: EntityIdentifier)
1242
+
1243
+ TestAvailabilityConfigurationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1244
+ TestAvailabilityConfigurationRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, location_name: "DomainName"))
1245
+ TestAvailabilityConfigurationRequest.add_member(:ews_provider, Shapes::ShapeRef.new(shape: EwsAvailabilityProvider, location_name: "EwsProvider"))
1246
+ TestAvailabilityConfigurationRequest.add_member(:lambda_provider, Shapes::ShapeRef.new(shape: LambdaAvailabilityProvider, location_name: "LambdaProvider"))
1247
+ TestAvailabilityConfigurationRequest.struct_class = Types::TestAvailabilityConfigurationRequest
1248
+
1249
+ TestAvailabilityConfigurationResponse.add_member(:test_passed, Shapes::ShapeRef.new(shape: Boolean, location_name: "TestPassed"))
1250
+ TestAvailabilityConfigurationResponse.add_member(:failure_reason, Shapes::ShapeRef.new(shape: String, location_name: "FailureReason"))
1251
+ TestAvailabilityConfigurationResponse.struct_class = Types::TestAvailabilityConfigurationResponse
1252
+
1055
1253
  TooManyTagsException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
1056
1254
  TooManyTagsException.struct_class = Types::TooManyTagsException
1057
1255
 
@@ -1064,12 +1262,30 @@ module Aws::WorkMail
1064
1262
 
1065
1263
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
1066
1264
 
1265
+ UpdateAvailabilityConfigurationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1266
+ UpdateAvailabilityConfigurationRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, required: true, location_name: "DomainName"))
1267
+ UpdateAvailabilityConfigurationRequest.add_member(:ews_provider, Shapes::ShapeRef.new(shape: EwsAvailabilityProvider, location_name: "EwsProvider"))
1268
+ UpdateAvailabilityConfigurationRequest.add_member(:lambda_provider, Shapes::ShapeRef.new(shape: LambdaAvailabilityProvider, location_name: "LambdaProvider"))
1269
+ UpdateAvailabilityConfigurationRequest.struct_class = Types::UpdateAvailabilityConfigurationRequest
1270
+
1271
+ UpdateAvailabilityConfigurationResponse.struct_class = Types::UpdateAvailabilityConfigurationResponse
1272
+
1067
1273
  UpdateDefaultMailDomainRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1068
1274
  UpdateDefaultMailDomainRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: WorkMailDomainName, required: true, location_name: "DomainName"))
1069
1275
  UpdateDefaultMailDomainRequest.struct_class = Types::UpdateDefaultMailDomainRequest
1070
1276
 
1071
1277
  UpdateDefaultMailDomainResponse.struct_class = Types::UpdateDefaultMailDomainResponse
1072
1278
 
1279
+ UpdateImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1280
+ UpdateImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
1281
+ UpdateImpersonationRoleRequest.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, required: true, location_name: "Name"))
1282
+ UpdateImpersonationRoleRequest.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, required: true, location_name: "Type"))
1283
+ UpdateImpersonationRoleRequest.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRoleDescription, location_name: "Description"))
1284
+ UpdateImpersonationRoleRequest.add_member(:rules, Shapes::ShapeRef.new(shape: ImpersonationRuleList, required: true, location_name: "Rules"))
1285
+ UpdateImpersonationRoleRequest.struct_class = Types::UpdateImpersonationRoleRequest
1286
+
1287
+ UpdateImpersonationRoleResponse.struct_class = Types::UpdateImpersonationRoleResponse
1288
+
1073
1289
  UpdateMailboxQuotaRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1074
1290
  UpdateMailboxQuotaRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
1075
1291
  UpdateMailboxQuotaRequest.add_member(:mailbox_quota, Shapes::ShapeRef.new(shape: MailboxQuota, required: true, location_name: "MailboxQuota"))
@@ -1170,6 +1386,18 @@ module Aws::WorkMail
1170
1386
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1171
1387
  end)
1172
1388
 
1389
+ api.add_operation(:assume_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1390
+ o.name = "AssumeImpersonationRole"
1391
+ o.http_method = "POST"
1392
+ o.http_request_uri = "/"
1393
+ o.input = Shapes::ShapeRef.new(shape: AssumeImpersonationRoleRequest)
1394
+ o.output = Shapes::ShapeRef.new(shape: AssumeImpersonationRoleResponse)
1395
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1396
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1397
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1398
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1399
+ end)
1400
+
1173
1401
  api.add_operation(:cancel_mailbox_export_job, Seahorse::Model::Operation.new.tap do |o|
1174
1402
  o.name = "CancelMailboxExportJob"
1175
1403
  o.http_method = "POST"
@@ -1199,6 +1427,19 @@ module Aws::WorkMail
1199
1427
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1200
1428
  end)
1201
1429
 
1430
+ api.add_operation(:create_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
1431
+ o.name = "CreateAvailabilityConfiguration"
1432
+ o.http_method = "POST"
1433
+ o.http_request_uri = "/"
1434
+ o.input = Shapes::ShapeRef.new(shape: CreateAvailabilityConfigurationRequest)
1435
+ o.output = Shapes::ShapeRef.new(shape: CreateAvailabilityConfigurationResponse)
1436
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1437
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1438
+ o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
1439
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1440
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1441
+ end)
1442
+
1202
1443
  api.add_operation(:create_group, Seahorse::Model::Operation.new.tap do |o|
1203
1444
  o.name = "CreateGroup"
1204
1445
  o.http_method = "POST"
@@ -1215,6 +1456,20 @@ module Aws::WorkMail
1215
1456
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1216
1457
  end)
1217
1458
 
1459
+ api.add_operation(:create_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1460
+ o.name = "CreateImpersonationRole"
1461
+ o.http_method = "POST"
1462
+ o.http_request_uri = "/"
1463
+ o.input = Shapes::ShapeRef.new(shape: CreateImpersonationRoleRequest)
1464
+ o.output = Shapes::ShapeRef.new(shape: CreateImpersonationRoleResponse)
1465
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1466
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1467
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1468
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1469
+ o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
1470
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1471
+ end)
1472
+
1218
1473
  api.add_operation(:create_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
1219
1474
  o.name = "CreateMobileDeviceAccessRule"
1220
1475
  o.http_method = "POST"
@@ -1295,6 +1550,16 @@ module Aws::WorkMail
1295
1550
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1296
1551
  end)
1297
1552
 
1553
+ api.add_operation(:delete_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
1554
+ o.name = "DeleteAvailabilityConfiguration"
1555
+ o.http_method = "POST"
1556
+ o.http_request_uri = "/"
1557
+ o.input = Shapes::ShapeRef.new(shape: DeleteAvailabilityConfigurationRequest)
1558
+ o.output = Shapes::ShapeRef.new(shape: DeleteAvailabilityConfigurationResponse)
1559
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1560
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1561
+ end)
1562
+
1298
1563
  api.add_operation(:delete_email_monitoring_configuration, Seahorse::Model::Operation.new.tap do |o|
1299
1564
  o.name = "DeleteEmailMonitoringConfiguration"
1300
1565
  o.http_method = "POST"
@@ -1321,6 +1586,17 @@ module Aws::WorkMail
1321
1586
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1322
1587
  end)
1323
1588
 
1589
+ api.add_operation(:delete_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1590
+ o.name = "DeleteImpersonationRole"
1591
+ o.http_method = "POST"
1592
+ o.http_request_uri = "/"
1593
+ o.input = Shapes::ShapeRef.new(shape: DeleteImpersonationRoleRequest)
1594
+ o.output = Shapes::ShapeRef.new(shape: DeleteImpersonationRoleResponse)
1595
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1596
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1597
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1598
+ end)
1599
+
1324
1600
  api.add_operation(:delete_mailbox_permissions, Seahorse::Model::Operation.new.tap do |o|
1325
1601
  o.name = "DeleteMailboxPermissions"
1326
1602
  o.http_method = "POST"
@@ -1548,6 +1824,7 @@ module Aws::WorkMail
1548
1824
  o.input = Shapes::ShapeRef.new(shape: GetAccessControlEffectRequest)
1549
1825
  o.output = Shapes::ShapeRef.new(shape: GetAccessControlEffectResponse)
1550
1826
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1827
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1551
1828
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1552
1829
  o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1553
1830
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
@@ -1565,6 +1842,32 @@ module Aws::WorkMail
1565
1842
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1566
1843
  end)
1567
1844
 
1845
+ api.add_operation(:get_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1846
+ o.name = "GetImpersonationRole"
1847
+ o.http_method = "POST"
1848
+ o.http_request_uri = "/"
1849
+ o.input = Shapes::ShapeRef.new(shape: GetImpersonationRoleRequest)
1850
+ o.output = Shapes::ShapeRef.new(shape: GetImpersonationRoleResponse)
1851
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1852
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1853
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1854
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1855
+ end)
1856
+
1857
+ api.add_operation(:get_impersonation_role_effect, Seahorse::Model::Operation.new.tap do |o|
1858
+ o.name = "GetImpersonationRoleEffect"
1859
+ o.http_method = "POST"
1860
+ o.http_request_uri = "/"
1861
+ o.input = Shapes::ShapeRef.new(shape: GetImpersonationRoleEffectRequest)
1862
+ o.output = Shapes::ShapeRef.new(shape: GetImpersonationRoleEffectResponse)
1863
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1864
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1865
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1866
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1867
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1868
+ o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
1869
+ end)
1870
+
1568
1871
  api.add_operation(:get_mail_domain, Seahorse::Model::Operation.new.tap do |o|
1569
1872
  o.name = "GetMailDomain"
1570
1873
  o.http_method = "POST"
@@ -1641,6 +1944,22 @@ module Aws::WorkMail
1641
1944
  )
1642
1945
  end)
1643
1946
 
1947
+ api.add_operation(:list_availability_configurations, Seahorse::Model::Operation.new.tap do |o|
1948
+ o.name = "ListAvailabilityConfigurations"
1949
+ o.http_method = "POST"
1950
+ o.http_request_uri = "/"
1951
+ o.input = Shapes::ShapeRef.new(shape: ListAvailabilityConfigurationsRequest)
1952
+ o.output = Shapes::ShapeRef.new(shape: ListAvailabilityConfigurationsResponse)
1953
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1954
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1955
+ o[:pager] = Aws::Pager.new(
1956
+ limit_key: "max_results",
1957
+ tokens: {
1958
+ "next_token" => "next_token"
1959
+ }
1960
+ )
1961
+ end)
1962
+
1644
1963
  api.add_operation(:list_group_members, Seahorse::Model::Operation.new.tap do |o|
1645
1964
  o.name = "ListGroupMembers"
1646
1965
  o.http_method = "POST"
@@ -1678,6 +1997,23 @@ module Aws::WorkMail
1678
1997
  )
1679
1998
  end)
1680
1999
 
2000
+ api.add_operation(:list_impersonation_roles, Seahorse::Model::Operation.new.tap do |o|
2001
+ o.name = "ListImpersonationRoles"
2002
+ o.http_method = "POST"
2003
+ o.http_request_uri = "/"
2004
+ o.input = Shapes::ShapeRef.new(shape: ListImpersonationRolesRequest)
2005
+ o.output = Shapes::ShapeRef.new(shape: ListImpersonationRolesResponse)
2006
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2007
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
2008
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
2009
+ o[:pager] = Aws::Pager.new(
2010
+ limit_key: "max_results",
2011
+ tokens: {
2012
+ "next_token" => "next_token"
2013
+ }
2014
+ )
2015
+ end)
2016
+
1681
2017
  api.add_operation(:list_mail_domains, Seahorse::Model::Operation.new.tap do |o|
1682
2018
  o.name = "ListMailDomains"
1683
2019
  o.http_method = "POST"
@@ -1845,6 +2181,7 @@ module Aws::WorkMail
1845
2181
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1846
2182
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1847
2183
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
2184
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1848
2185
  o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1849
2186
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1850
2187
  end)
@@ -1982,6 +2319,18 @@ module Aws::WorkMail
1982
2319
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1983
2320
  end)
1984
2321
 
2322
+ api.add_operation(:test_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
2323
+ o.name = "TestAvailabilityConfiguration"
2324
+ o.http_method = "POST"
2325
+ o.http_request_uri = "/"
2326
+ o.input = Shapes::ShapeRef.new(shape: TestAvailabilityConfigurationRequest)
2327
+ o.output = Shapes::ShapeRef.new(shape: TestAvailabilityConfigurationResponse)
2328
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
2329
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
2330
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2331
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2332
+ end)
2333
+
1985
2334
  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
1986
2335
  o.name = "UntagResource"
1987
2336
  o.http_method = "POST"
@@ -1991,6 +2340,18 @@ module Aws::WorkMail
1991
2340
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1992
2341
  end)
1993
2342
 
2343
+ api.add_operation(:update_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
2344
+ o.name = "UpdateAvailabilityConfiguration"
2345
+ o.http_method = "POST"
2346
+ o.http_request_uri = "/"
2347
+ o.input = Shapes::ShapeRef.new(shape: UpdateAvailabilityConfigurationRequest)
2348
+ o.output = Shapes::ShapeRef.new(shape: UpdateAvailabilityConfigurationResponse)
2349
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
2350
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
2351
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2352
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2353
+ end)
2354
+
1994
2355
  api.add_operation(:update_default_mail_domain, Seahorse::Model::Operation.new.tap do |o|
1995
2356
  o.name = "UpdateDefaultMailDomain"
1996
2357
  o.http_method = "POST"
@@ -2004,6 +2365,21 @@ module Aws::WorkMail
2004
2365
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2005
2366
  end)
2006
2367
 
2368
+ api.add_operation(:update_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
2369
+ o.name = "UpdateImpersonationRole"
2370
+ o.http_method = "POST"
2371
+ o.http_request_uri = "/"
2372
+ o.input = Shapes::ShapeRef.new(shape: UpdateImpersonationRoleRequest)
2373
+ o.output = Shapes::ShapeRef.new(shape: UpdateImpersonationRoleResponse)
2374
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2375
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
2376
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
2377
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2378
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
2379
+ o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
2380
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2381
+ end)
2382
+
2007
2383
  api.add_operation(:update_mailbox_quota, Seahorse::Model::Operation.new.tap do |o|
2008
2384
  o.name = "UpdateMailboxQuota"
2009
2385
  o.http_method = "POST"