aws-sdk-workmail 1.49.0 → 1.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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"