Module: Aws::WorkMail::ClientApi Private

Includes:
Seahorse::Model
Defined in:
lib/aws-sdk-workmail/client_api.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Constant Summary collapse

AccessControlRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AccessControlRule')
AccessControlRuleAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AccessControlRuleAction')
AccessControlRuleDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AccessControlRuleDescription')
AccessControlRuleEffect =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AccessControlRuleEffect')
AccessControlRuleName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AccessControlRuleName')
AccessControlRuleNameList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AccessControlRuleNameList')
AccessControlRulesList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AccessControlRulesList')
AccessEffect =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AccessEffect')
ActionsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ActionsList')
Aliases =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Aliases')
AmazonResourceName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AmazonResourceName')
AssociateDelegateToResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociateDelegateToResourceRequest')
AssociateDelegateToResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociateDelegateToResourceResponse')
AssociateMemberToGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociateMemberToGroupRequest')
AssociateMemberToGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociateMemberToGroupResponse')
AssumeImpersonationRoleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssumeImpersonationRoleRequest')
AssumeImpersonationRoleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssumeImpersonationRoleResponse')
AvailabilityConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AvailabilityConfiguration')
AvailabilityConfigurationList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AvailabilityConfigurationList')
AvailabilityProviderType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AvailabilityProviderType')
BookingOptions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BookingOptions')
Boolean =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'Boolean')
BooleanObject =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'BooleanObject')
CancelMailboxExportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CancelMailboxExportJobRequest')
CancelMailboxExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CancelMailboxExportJobResponse')
CreateAliasRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAliasRequest')
CreateAliasResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAliasResponse')
CreateAvailabilityConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAvailabilityConfigurationRequest')
CreateAvailabilityConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAvailabilityConfigurationResponse')
CreateGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateGroupRequest')
CreateGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateGroupResponse')
CreateImpersonationRoleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateImpersonationRoleRequest')
CreateImpersonationRoleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateImpersonationRoleResponse')
CreateMobileDeviceAccessRuleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleRequest')
CreateMobileDeviceAccessRuleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleResponse')
CreateOrganizationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateOrganizationRequest')
CreateOrganizationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateOrganizationResponse')
CreateResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateResourceRequest')
CreateResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateResourceResponse')
CreateUserRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateUserRequest')
CreateUserResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateUserResponse')
Delegate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Delegate')
DeleteAccessControlRuleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAccessControlRuleRequest')
DeleteAccessControlRuleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAccessControlRuleResponse')
DeleteAliasRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAliasRequest')
DeleteAliasResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAliasResponse')
DeleteAvailabilityConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAvailabilityConfigurationRequest')
DeleteAvailabilityConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAvailabilityConfigurationResponse')
DeleteEmailMonitoringConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEmailMonitoringConfigurationRequest')
DeleteEmailMonitoringConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEmailMonitoringConfigurationResponse')
DeleteGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteGroupRequest')
DeleteGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteGroupResponse')
DeleteImpersonationRoleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteImpersonationRoleRequest')
DeleteImpersonationRoleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteImpersonationRoleResponse')
DeleteMailboxPermissionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsRequest')
DeleteMailboxPermissionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsResponse')
DeleteMobileDeviceAccessOverrideRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessOverrideRequest')
DeleteMobileDeviceAccessOverrideResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessOverrideResponse')
DeleteMobileDeviceAccessRuleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessRuleRequest')
DeleteMobileDeviceAccessRuleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessRuleResponse')
DeleteOrganizationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteOrganizationRequest')
DeleteOrganizationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteOrganizationResponse')
DeleteResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteResourceRequest')
DeleteResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteResourceResponse')
DeleteRetentionPolicyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRetentionPolicyRequest')
DeleteRetentionPolicyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRetentionPolicyResponse')
DeleteUserRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteUserRequest')
DeleteUserResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteUserResponse')
DeregisterFromWorkMailRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeregisterFromWorkMailRequest')
DeregisterFromWorkMailResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeregisterFromWorkMailResponse')
DeregisterMailDomainRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeregisterMailDomainRequest')
DeregisterMailDomainResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeregisterMailDomainResponse')
DescribeEmailMonitoringConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeEmailMonitoringConfigurationRequest')
DescribeEmailMonitoringConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeEmailMonitoringConfigurationResponse')
DescribeEntityRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeEntityRequest')
DescribeEntityResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeEntityResponse')
DescribeGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeGroupRequest')
DescribeGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeGroupResponse')
DescribeInboundDmarcSettingsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeInboundDmarcSettingsRequest')
DescribeInboundDmarcSettingsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeInboundDmarcSettingsResponse')
DescribeMailboxExportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeMailboxExportJobRequest')
DescribeMailboxExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeMailboxExportJobResponse')
DescribeOrganizationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeOrganizationRequest')
DescribeOrganizationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeOrganizationResponse')
DescribeResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeResourceRequest')
DescribeResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeResourceResponse')
DescribeUserRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeUserRequest')
DescribeUserResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeUserResponse')
Description =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Description')
DeviceId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DeviceId')
DeviceModel =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DeviceModel')
DeviceModelList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DeviceModelList')
DeviceOperatingSystem =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DeviceOperatingSystem')
DeviceOperatingSystemList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DeviceOperatingSystemList')
DeviceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DeviceType')
DeviceTypeList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DeviceTypeList')
DeviceUserAgent =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DeviceUserAgent')
DeviceUserAgentList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DeviceUserAgentList')
DirectoryId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DirectoryId')
DirectoryInUseException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DirectoryInUseException')
DirectoryServiceAuthenticationFailedException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DirectoryServiceAuthenticationFailedException')
DirectoryUnavailableException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DirectoryUnavailableException')
DisassociateDelegateFromResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateDelegateFromResourceRequest')
DisassociateDelegateFromResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateDelegateFromResourceResponse')
DisassociateMemberFromGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateMemberFromGroupRequest')
DisassociateMemberFromGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateMemberFromGroupResponse')
DnsRecord =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DnsRecord')
DnsRecordVerificationStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DnsRecordVerificationStatus')
DnsRecords =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DnsRecords')
Domain =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Domain')
DomainName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DomainName')
Domains =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Domains')
EmailAddress =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EmailAddress')
EmailAddressInUseException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailAddressInUseException')
EntityAlreadyRegisteredException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EntityAlreadyRegisteredException')
EntityIdentifier =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EntityIdentifier')
EntityNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EntityNotFoundException')
EntityState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EntityState')
EntityStateException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EntityStateException')
EntityType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EntityType')
EwsAvailabilityProvider =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EwsAvailabilityProvider')
ExpiresIn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ExpiresIn')
ExternalUserName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ExternalUserName')
FolderConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'FolderConfiguration')
FolderConfigurations =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'FolderConfigurations')
FolderName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FolderName')
GetAccessControlEffectRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAccessControlEffectRequest')
GetAccessControlEffectResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAccessControlEffectResponse')
GetDefaultRetentionPolicyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyRequest')
GetDefaultRetentionPolicyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyResponse')
GetImpersonationRoleEffectRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImpersonationRoleEffectRequest')
GetImpersonationRoleEffectResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImpersonationRoleEffectResponse')
GetImpersonationRoleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImpersonationRoleRequest')
GetImpersonationRoleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImpersonationRoleResponse')
GetMailDomainRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMailDomainRequest')
GetMailDomainResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMailDomainResponse')
GetMailboxDetailsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMailboxDetailsRequest')
GetMailboxDetailsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMailboxDetailsResponse')
GetMobileDeviceAccessEffectRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMobileDeviceAccessEffectRequest')
GetMobileDeviceAccessEffectResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMobileDeviceAccessEffectResponse')
GetMobileDeviceAccessOverrideRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMobileDeviceAccessOverrideRequest')
GetMobileDeviceAccessOverrideResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMobileDeviceAccessOverrideResponse')
Group =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Group')
GroupIdentifier =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GroupIdentifier')
GroupIdentifiers =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'GroupIdentifiers')
GroupName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'GroupName')
Groups =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Groups')
HostedZoneId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'HostedZoneId')
IdempotencyClientToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IdempotencyClientToken')
ImpersonationMatchedRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImpersonationMatchedRule')
ImpersonationMatchedRuleList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ImpersonationMatchedRuleList')
ImpersonationRole =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImpersonationRole')
ImpersonationRoleDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRoleDescription')
ImpersonationRoleId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRoleId')
ImpersonationRoleIdList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ImpersonationRoleIdList')
ImpersonationRoleList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ImpersonationRoleList')
ImpersonationRoleName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRoleName')
ImpersonationRoleType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRoleType')
ImpersonationRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImpersonationRule')
ImpersonationRuleDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRuleDescription')
ImpersonationRuleId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRuleId')
ImpersonationRuleList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ImpersonationRuleList')
ImpersonationRuleName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationRuleName')
ImpersonationToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ImpersonationToken')
InvalidConfigurationException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidConfigurationException')
InvalidCustomSesConfigurationException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidCustomSesConfigurationException')
InvalidParameterException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidParameterException')
InvalidPasswordException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidPasswordException')
IpAddress =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IpAddress')
IpRange =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IpRange')
IpRangeList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'IpRangeList')
Jobs =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Jobs')
KmsKeyArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'KmsKeyArn')
LambdaArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LambdaArn')
LambdaAvailabilityProvider =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LambdaAvailabilityProvider')
LimitExceededException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LimitExceededException')
ListAccessControlRulesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAccessControlRulesRequest')
ListAccessControlRulesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAccessControlRulesResponse')
ListAliasesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAliasesRequest')
ListAliasesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAliasesResponse')
ListAvailabilityConfigurationsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailabilityConfigurationsRequest')
ListAvailabilityConfigurationsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailabilityConfigurationsResponse')
ListGroupMembersRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupMembersRequest')
ListGroupMembersResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupMembersResponse')
ListGroupsFilters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupsFilters')
ListGroupsForEntityFilters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupsForEntityFilters')
ListGroupsForEntityRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupsForEntityRequest')
ListGroupsForEntityResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupsForEntityResponse')
ListGroupsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupsRequest')
ListGroupsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListGroupsResponse')
ListImpersonationRolesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListImpersonationRolesRequest')
ListImpersonationRolesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListImpersonationRolesResponse')
ListMailDomainsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMailDomainsRequest')
ListMailDomainsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMailDomainsResponse')
ListMailboxExportJobsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMailboxExportJobsRequest')
ListMailboxExportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMailboxExportJobsResponse')
ListMailboxPermissionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMailboxPermissionsRequest')
ListMailboxPermissionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMailboxPermissionsResponse')
ListMobileDeviceAccessOverridesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMobileDeviceAccessOverridesRequest')
ListMobileDeviceAccessOverridesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMobileDeviceAccessOverridesResponse')
ListMobileDeviceAccessRulesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMobileDeviceAccessRulesRequest')
ListMobileDeviceAccessRulesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMobileDeviceAccessRulesResponse')
ListOrganizationsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListOrganizationsRequest')
ListOrganizationsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListOrganizationsResponse')
ListResourceDelegatesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourceDelegatesRequest')
ListResourceDelegatesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourceDelegatesResponse')
ListResourcesFilters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourcesFilters')
ListResourcesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourcesRequest')
ListResourcesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourcesResponse')
ListTagsForResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
ListTagsForResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
ListUsersFilters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListUsersFilters')
ListUsersRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListUsersRequest')
ListUsersResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListUsersResponse')
LogGroupArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LogGroupArn')
MailDomainInUseException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MailDomainInUseException')
MailDomainNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MailDomainNotFoundException')
MailDomainStateException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MailDomainStateException')
MailDomainSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MailDomainSummary')
MailDomains =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MailDomains')
MailboxExportErrorInfo =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MailboxExportErrorInfo')
MailboxExportJob =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MailboxExportJob')
MailboxExportJobId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MailboxExportJobId')
MailboxExportJobState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MailboxExportJobState')
MailboxQuota =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'MailboxQuota')
MailboxSize =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::FloatShape.new(name: 'MailboxSize')
MaxResults =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'MaxResults')
Member =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Member')
MemberType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MemberType')
Members =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Members')
MobileDeviceAccessMatchedRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MobileDeviceAccessMatchedRule')
MobileDeviceAccessMatchedRuleList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MobileDeviceAccessMatchedRuleList')
MobileDeviceAccessOverride =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MobileDeviceAccessOverride')
MobileDeviceAccessOverridesList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MobileDeviceAccessOverridesList')
MobileDeviceAccessRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MobileDeviceAccessRule')
MobileDeviceAccessRuleDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MobileDeviceAccessRuleDescription')
MobileDeviceAccessRuleEffect =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MobileDeviceAccessRuleEffect')
MobileDeviceAccessRuleId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MobileDeviceAccessRuleId')
MobileDeviceAccessRuleName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MobileDeviceAccessRuleName')
MobileDeviceAccessRulesList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MobileDeviceAccessRulesList')
NameAvailabilityException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NameAvailabilityException')
NewResourceDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'NewResourceDescription')
NextToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'NextToken')
OrganizationId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'OrganizationId')
OrganizationName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'OrganizationName')
OrganizationNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OrganizationNotFoundException')
OrganizationStateException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OrganizationStateException')
OrganizationSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'OrganizationSummaries')
OrganizationSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OrganizationSummary')
Password =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Password')
Percentage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'Percentage')
Permission =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Permission')
PermissionType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'PermissionType')
PermissionValues =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'PermissionValues')
Permissions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Permissions')
PolicyDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'PolicyDescription')
PutAccessControlRuleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutAccessControlRuleRequest')
PutAccessControlRuleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutAccessControlRuleResponse')
PutEmailMonitoringConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutEmailMonitoringConfigurationRequest')
PutEmailMonitoringConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutEmailMonitoringConfigurationResponse')
PutInboundDmarcSettingsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutInboundDmarcSettingsRequest')
PutInboundDmarcSettingsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutInboundDmarcSettingsResponse')
PutMailboxPermissionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutMailboxPermissionsRequest')
PutMailboxPermissionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutMailboxPermissionsResponse')
PutMobileDeviceAccessOverrideRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutMobileDeviceAccessOverrideRequest')
PutMobileDeviceAccessOverrideResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutMobileDeviceAccessOverrideResponse')
PutRetentionPolicyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutRetentionPolicyRequest')
PutRetentionPolicyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutRetentionPolicyResponse')
RedactedEwsAvailabilityProvider =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RedactedEwsAvailabilityProvider')
RegisterMailDomainRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegisterMailDomainRequest')
RegisterMailDomainResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegisterMailDomainResponse')
RegisterToWorkMailRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegisterToWorkMailRequest')
RegisterToWorkMailResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegisterToWorkMailResponse')
ReservedNameException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReservedNameException')
ResetPasswordRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResetPasswordRequest')
ResetPasswordResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResetPasswordResponse')
Resource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Resource')
ResourceDelegates =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResourceDelegates')
ResourceDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceDescription')
ResourceId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceId')
ResourceName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceName')
ResourceNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResourceNotFoundException')
ResourceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceType')
Resources =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Resources')
RetentionAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RetentionAction')
RetentionPeriod =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'RetentionPeriod')
RoleArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RoleArn')
S3BucketName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'S3BucketName')
S3ObjectKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'S3ObjectKey')
ShortString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ShortString')
StartMailboxExportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartMailboxExportJobRequest')
StartMailboxExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartMailboxExportJobResponse')
String =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'String')
Tag =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Tag')
TagKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagKey')
TagKeyList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagKeyList')
TagList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagList')
TagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceRequest')
TagResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceResponse')
TagValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagValue')
TargetUsers =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TargetUsers')
TestAvailabilityConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TestAvailabilityConfigurationRequest')
TestAvailabilityConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TestAvailabilityConfigurationResponse')
Timestamp =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::TimestampShape.new(name: 'Timestamp')
TooManyTagsException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TooManyTagsException')
UnsupportedOperationException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UnsupportedOperationException')
UntagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceRequest')
UntagResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceResponse')
UpdateAvailabilityConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateAvailabilityConfigurationRequest')
UpdateAvailabilityConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateAvailabilityConfigurationResponse')
UpdateDefaultMailDomainRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateDefaultMailDomainRequest')
UpdateDefaultMailDomainResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateDefaultMailDomainResponse')
UpdateGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateGroupRequest')
UpdateGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateGroupResponse')
UpdateImpersonationRoleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateImpersonationRoleRequest')
UpdateImpersonationRoleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateImpersonationRoleResponse')
UpdateMailboxQuotaRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateMailboxQuotaRequest')
UpdateMailboxQuotaResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateMailboxQuotaResponse')
UpdateMobileDeviceAccessRuleRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateMobileDeviceAccessRuleRequest')
UpdateMobileDeviceAccessRuleResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateMobileDeviceAccessRuleResponse')
UpdatePrimaryEmailAddressRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdatePrimaryEmailAddressRequest')
UpdatePrimaryEmailAddressResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdatePrimaryEmailAddressResponse')
UpdateResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateResourceRequest')
UpdateResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateResourceResponse')
UpdateUserRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateUserRequest')
UpdateUserResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateUserResponse')
Url =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Url')
User =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'User')
UserAttribute =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'UserAttribute')
UserIdList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'UserIdList')
UserName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'UserName')
UserRole =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'UserRole')
Users =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Users')
WorkMailDomainName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'WorkMailDomainName')
WorkMailIdentifier =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'WorkMailIdentifier')
API =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Seahorse::Model::Api.new.tap do |api|

  api.version = "2017-10-01"

  api. = {
    "apiVersion" => "2017-10-01",
    "auth" => ["aws.auth#sigv4"],
    "endpointPrefix" => "workmail",
    "jsonVersion" => "1.1",
    "protocol" => "json",
    "protocols" => ["json"],
    "serviceFullName" => "Amazon WorkMail",
    "serviceId" => "WorkMail",
    "signatureVersion" => "v4",
    "targetPrefix" => "WorkMailService",
    "uid" => "workmail-2017-10-01",
  }

  api.add_operation(:associate_delegate_to_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "AssociateDelegateToResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: AssociateDelegateToResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: AssociateDelegateToResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:associate_member_to_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "AssociateMemberToGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: AssociateMemberToGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: AssociateMemberToGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:assume_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
    o.name = "AssumeImpersonationRole"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: AssumeImpersonationRoleRequest)
    o.output = Shapes::ShapeRef.new(shape: AssumeImpersonationRoleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:cancel_mailbox_export_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CancelMailboxExportJob"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CancelMailboxExportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: CancelMailboxExportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
  end)

  api.add_operation(:create_alias, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateAlias"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateAliasRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateAliasResponse)
    o.errors << Shapes::ShapeRef.new(shape: EmailAddressInUseException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainStateException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:create_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateAvailabilityConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateAvailabilityConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateAvailabilityConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:create_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ReservedNameException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:create_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateImpersonationRole"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateImpersonationRoleRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateImpersonationRoleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:create_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateMobileDeviceAccessRule"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateMobileDeviceAccessRuleRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateMobileDeviceAccessRuleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:create_organization, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateOrganization"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateOrganizationRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateOrganizationResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryInUseException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
  end)

  api.add_operation(:create_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ReservedNameException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:create_user, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateUser"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateUserRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateUserResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidPasswordException)
    o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ReservedNameException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:delete_access_control_rule, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteAccessControlRule"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteAccessControlRuleRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteAccessControlRuleResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_alias, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteAlias"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteAliasRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteAliasResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteAvailabilityConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteAvailabilityConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteAvailabilityConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_email_monitoring_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteEmailMonitoringConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteEmailMonitoringConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteEmailMonitoringConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:delete_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteImpersonationRole"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteImpersonationRoleRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteImpersonationRoleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_mailbox_permissions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteMailboxPermissions"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteMailboxPermissionsRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteMailboxPermissionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_mobile_device_access_override, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteMobileDeviceAccessOverride"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteMobileDeviceAccessOverrideRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteMobileDeviceAccessOverrideResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
  end)

  api.add_operation(:delete_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteMobileDeviceAccessRule"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteMobileDeviceAccessRuleRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteMobileDeviceAccessRuleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_organization, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteOrganization"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteOrganizationRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteOrganizationResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:delete_retention_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRetentionPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteRetentionPolicyRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteRetentionPolicyResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:delete_user, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteUser"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteUserRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteUserResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:deregister_from_work_mail, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeregisterFromWorkMail"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeregisterFromWorkMailRequest)
    o.output = Shapes::ShapeRef.new(shape: DeregisterFromWorkMailResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:deregister_mail_domain, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeregisterMailDomain"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeregisterMailDomainRequest)
    o.output = Shapes::ShapeRef.new(shape: DeregisterMailDomainResponse)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainInUseException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidCustomSesConfigurationException)
  end)

  api.add_operation(:describe_email_monitoring_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeEmailMonitoringConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeEmailMonitoringConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeEmailMonitoringConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:describe_entity, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeEntity"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeEntityRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeEntityResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:describe_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:describe_inbound_dmarc_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeInboundDmarcSettings"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeInboundDmarcSettingsRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeInboundDmarcSettingsResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:describe_mailbox_export_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeMailboxExportJob"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeMailboxExportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeMailboxExportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
  end)

  api.add_operation(:describe_organization, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeOrganization"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeOrganizationRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeOrganizationResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
  end)

  api.add_operation(:describe_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:describe_user, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeUser"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeUserRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeUserResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:disassociate_delegate_from_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DisassociateDelegateFromResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DisassociateDelegateFromResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: DisassociateDelegateFromResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:disassociate_member_from_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DisassociateMemberFromGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DisassociateMemberFromGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: DisassociateMemberFromGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:get_access_control_effect, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetAccessControlEffect"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetAccessControlEffectRequest)
    o.output = Shapes::ShapeRef.new(shape: GetAccessControlEffectResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:get_default_retention_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetDefaultRetentionPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetDefaultRetentionPolicyRequest)
    o.output = Shapes::ShapeRef.new(shape: GetDefaultRetentionPolicyResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
  end)

  api.add_operation(:get_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetImpersonationRole"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetImpersonationRoleRequest)
    o.output = Shapes::ShapeRef.new(shape: GetImpersonationRoleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:get_impersonation_role_effect, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetImpersonationRoleEffect"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetImpersonationRoleEffectRequest)
    o.output = Shapes::ShapeRef.new(shape: GetImpersonationRoleEffectResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
  end)

  api.add_operation(:get_mail_domain, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetMailDomain"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetMailDomainRequest)
    o.output = Shapes::ShapeRef.new(shape: GetMailDomainResponse)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:get_mailbox_details, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetMailboxDetails"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetMailboxDetailsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetMailboxDetailsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
  end)

  api.add_operation(:get_mobile_device_access_effect, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetMobileDeviceAccessEffect"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetMobileDeviceAccessEffectRequest)
    o.output = Shapes::ShapeRef.new(shape: GetMobileDeviceAccessEffectResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:get_mobile_device_access_override, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetMobileDeviceAccessOverride"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetMobileDeviceAccessOverrideRequest)
    o.output = Shapes::ShapeRef.new(shape: GetMobileDeviceAccessOverrideResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:list_access_control_rules, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAccessControlRules"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAccessControlRulesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAccessControlRulesResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:list_aliases, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAliases"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAliasesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAliasesResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_availability_configurations, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAvailabilityConfigurations"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAvailabilityConfigurationsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAvailabilityConfigurationsResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_group_members, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListGroupMembers"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListGroupMembersRequest)
    o.output = Shapes::ShapeRef.new(shape: ListGroupMembersResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_groups, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListGroups"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListGroupsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListGroupsResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_groups_for_entity, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListGroupsForEntity"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListGroupsForEntityRequest)
    o.output = Shapes::ShapeRef.new(shape: ListGroupsForEntityResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_impersonation_roles, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListImpersonationRoles"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListImpersonationRolesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListImpersonationRolesResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_mail_domains, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListMailDomains"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListMailDomainsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListMailDomainsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_mailbox_export_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListMailboxExportJobs"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListMailboxExportJobsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListMailboxExportJobsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_mailbox_permissions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListMailboxPermissions"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListMailboxPermissionsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListMailboxPermissionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_mobile_device_access_overrides, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListMobileDeviceAccessOverrides"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListMobileDeviceAccessOverridesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListMobileDeviceAccessOverridesResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_mobile_device_access_rules, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListMobileDeviceAccessRules"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListMobileDeviceAccessRulesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListMobileDeviceAccessRulesResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:list_organizations, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListOrganizations"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListOrganizationsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListOrganizationsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_resource_delegates, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListResourceDelegates"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListResourceDelegatesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListResourceDelegatesResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_resources, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListResources"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListResourcesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListResourcesResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTagsForResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:list_users, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListUsers"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListUsersRequest)
    o.output = Shapes::ShapeRef.new(shape: ListUsersResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:put_access_control_rule, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutAccessControlRule"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutAccessControlRuleRequest)
    o.output = Shapes::ShapeRef.new(shape: PutAccessControlRuleResponse)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:put_email_monitoring_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutEmailMonitoringConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutEmailMonitoringConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: PutEmailMonitoringConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:put_inbound_dmarc_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutInboundDmarcSettings"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutInboundDmarcSettingsRequest)
    o.output = Shapes::ShapeRef.new(shape: PutInboundDmarcSettingsResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:put_mailbox_permissions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutMailboxPermissions"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutMailboxPermissionsRequest)
    o.output = Shapes::ShapeRef.new(shape: PutMailboxPermissionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:put_mobile_device_access_override, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutMobileDeviceAccessOverride"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutMobileDeviceAccessOverrideRequest)
    o.output = Shapes::ShapeRef.new(shape: PutMobileDeviceAccessOverrideResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
  end)

  api.add_operation(:put_retention_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutRetentionPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutRetentionPolicyRequest)
    o.output = Shapes::ShapeRef.new(shape: PutRetentionPolicyResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:register_mail_domain, Seahorse::Model::Operation.new.tap do |o|
    o.name = "RegisterMailDomain"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: RegisterMailDomainRequest)
    o.output = Shapes::ShapeRef.new(shape: RegisterMailDomainResponse)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainInUseException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:register_to_work_mail, Seahorse::Model::Operation.new.tap do |o|
    o.name = "RegisterToWorkMail"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: RegisterToWorkMailRequest)
    o.output = Shapes::ShapeRef.new(shape: RegisterToWorkMailResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EmailAddressInUseException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityAlreadyRegisteredException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainStateException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:reset_password, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ResetPassword"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ResetPasswordRequest)
    o.output = Shapes::ShapeRef.new(shape: ResetPasswordResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidPasswordException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:start_mailbox_export_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "StartMailboxExportJob"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: StartMailboxExportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: StartMailboxExportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TagResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:test_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TestAvailabilityConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: TestAvailabilityConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: TestAvailabilityConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UntagResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:update_availability_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateAvailabilityConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateAvailabilityConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateAvailabilityConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:update_default_mail_domain, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateDefaultMailDomain"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateDefaultMailDomainRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateDefaultMailDomainResponse)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainStateException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:update_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:update_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateImpersonationRole"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateImpersonationRoleRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateImpersonationRoleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:update_mailbox_quota, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateMailboxQuota"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateMailboxQuotaRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateMailboxQuotaResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
  end)

  api.add_operation(:update_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateMobileDeviceAccessRule"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateMobileDeviceAccessRuleRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateMobileDeviceAccessRuleResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
  end)

  api.add_operation(:update_primary_email_address, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdatePrimaryEmailAddress"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdatePrimaryEmailAddressRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdatePrimaryEmailAddressResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EmailAddressInUseException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
  end)

  api.add_operation(:update_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationException)
    o.errors << Shapes::ShapeRef.new(shape: EmailAddressInUseException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MailDomainStateException)
    o.errors << Shapes::ShapeRef.new(shape: NameAvailabilityException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
  end)

  api.add_operation(:update_user, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateUser"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateUserRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateUserResponse)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryServiceAuthenticationFailedException)
    o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
    o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
    o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
  end)
end