NAME
Paws::WorkMail - Perl Interface to AWS Amazon WorkMail
SYNOPSIS
use Paws;
my $obj = Paws->service('WorkMail');
my $res = $obj->Method(
Arg1 => $val1,
Arg2 => [ 'V1', 'V2' ],
# if Arg3 is an object, the HashRef will be used as arguments to the constructor
# of the arguments type
Arg3 => { Att1 => 'Val1' },
# if Arg4 is an array of objects, the HashRefs will be passed as arguments to
# the constructor of the arguments type
Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
);
DESCRIPTION
Amazon WorkMail is a secure, managed business email and calendaring service with support for existing desktop and mobile email clients. You can access your email, contacts, and calendars using Microsoft Outlook, your browser, or other native iOS and Android email applications. You can integrate WorkMail with your existing corporate directory and control both the keys that encrypt your data and the location in which your data is stored.
The WorkMail API is designed for the following scenarios:
Listing and describing organizations
Managing users
Managing groups
Managing resources
All WorkMail API operations are Amazon-authenticated and certificate-signed. They not only require the use of the AWS SDK, but also allow for the exclusive use of AWS Identity and Access Management users and roles to help facilitate access, trust, and permission policies. By creating a role and allowing an IAM user to access the WorkMail site, the IAM user gains full administrative visibility into the entire WorkMail organization (or as set in the IAM policy). This includes, but is not limited to, the ability to create, update, and delete users, groups, and resources. This allows developers to perform the scenarios listed above, as well as give users the ability to grant access on a selective basis using the IAM model.
For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01
METHODS
AssociateDelegateToResource
Each argument is described in detail in: Paws::WorkMail::AssociateDelegateToResource
Returns: a Paws::WorkMail::AssociateDelegateToResourceResponse instance
Adds a member (user or group) to the resource's set of delegates.
AssociateMemberToGroup
Each argument is described in detail in: Paws::WorkMail::AssociateMemberToGroup
Returns: a Paws::WorkMail::AssociateMemberToGroupResponse instance
Adds a member (user or group) to the group's set.
CancelMailboxExportJob
Each argument is described in detail in: Paws::WorkMail::CancelMailboxExportJob
Returns: a Paws::WorkMail::CancelMailboxExportJobResponse instance
Cancels a mailbox export job.
If the mailbox export job is near completion, it might not be possible to cancel it.
CreateAlias
Each argument is described in detail in: Paws::WorkMail::CreateAlias
Returns: a Paws::WorkMail::CreateAliasResponse instance
Adds an alias to the set of a given member (user or group) of Amazon WorkMail.
CreateGroup
Each argument is described in detail in: Paws::WorkMail::CreateGroup
Returns: a Paws::WorkMail::CreateGroupResponse instance
Creates a group that can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.
CreateMobileDeviceAccessRule
- Effect => Str
- Name => Str
- OrganizationId => Str
- [ClientToken => Str]
- [Description => Str]
- [DeviceModels => ArrayRef[Str|Undef]]
- [DeviceOperatingSystems => ArrayRef[Str|Undef]]
- [DeviceTypes => ArrayRef[Str|Undef]]
- [DeviceUserAgents => ArrayRef[Str|Undef]]
- [NotDeviceModels => ArrayRef[Str|Undef]]
- [NotDeviceOperatingSystems => ArrayRef[Str|Undef]]
- [NotDeviceTypes => ArrayRef[Str|Undef]]
- [NotDeviceUserAgents => ArrayRef[Str|Undef]]
Each argument is described in detail in: Paws::WorkMail::CreateMobileDeviceAccessRule
Returns: a Paws::WorkMail::CreateMobileDeviceAccessRuleResponse instance
Creates a new mobile device access rule for the specified Amazon WorkMail organization.
CreateOrganization
- Alias => Str
- [ClientToken => Str]
- [DirectoryId => Str]
- [Domains => ArrayRef[Paws::WorkMail::Domain]]
- [EnableInteroperability => Bool]
- [KmsKeyArn => Str]
Each argument is described in detail in: Paws::WorkMail::CreateOrganization
Returns: a Paws::WorkMail::CreateOrganizationResponse instance
Creates a new Amazon WorkMail organization. Optionally, you can choose to associate an existing AWS Directory Service directory with your organization. If an AWS Directory Service directory ID is specified, the organization alias must match the directory alias. If you choose not to associate an existing directory with your organization, then we create a new Amazon WorkMail directory for you. For more information, see Adding an organization (https://docs.aws.amazon.com/workmail/latest/adminguide/add_new_organization.html) in the Amazon WorkMail Administrator Guide.
You can associate multiple email domains with an organization, then set your default email domain from the Amazon WorkMail console. You can also associate a domain that is managed in an Amazon Route 53 public hosted zone. For more information, see Adding a domain (https://docs.aws.amazon.com/workmail/latest/adminguide/add_domain.html) and Choosing the default domain (https://docs.aws.amazon.com/workmail/latest/adminguide/default_domain.html) in the Amazon WorkMail Administrator Guide.
Optionally, you can use a customer managed master key from AWS Key Management Service (AWS KMS) to encrypt email for your organization. If you don't associate an AWS KMS key, Amazon WorkMail creates a default AWS managed master key for you.
CreateResource
Each argument is described in detail in: Paws::WorkMail::CreateResource
Returns: a Paws::WorkMail::CreateResourceResponse instance
Creates a new Amazon WorkMail resource.
CreateUser
Each argument is described in detail in: Paws::WorkMail::CreateUser
Returns: a Paws::WorkMail::CreateUserResponse instance
Creates a user who can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.
DeleteAccessControlRule
Each argument is described in detail in: Paws::WorkMail::DeleteAccessControlRule
Returns: a Paws::WorkMail::DeleteAccessControlRuleResponse instance
Deletes an access control rule for the specified WorkMail organization.
DeleteAlias
Each argument is described in detail in: Paws::WorkMail::DeleteAlias
Returns: a Paws::WorkMail::DeleteAliasResponse instance
Remove one or more specified aliases from a set of aliases for a given user.
DeleteGroup
Each argument is described in detail in: Paws::WorkMail::DeleteGroup
Returns: a Paws::WorkMail::DeleteGroupResponse instance
Deletes a group from Amazon WorkMail.
DeleteMailboxPermissions
Each argument is described in detail in: Paws::WorkMail::DeleteMailboxPermissions
Returns: a Paws::WorkMail::DeleteMailboxPermissionsResponse instance
Deletes permissions granted to a member (user or group).
DeleteMobileDeviceAccessRule
Each argument is described in detail in: Paws::WorkMail::DeleteMobileDeviceAccessRule
Returns: a Paws::WorkMail::DeleteMobileDeviceAccessRuleResponse instance
Deletes a mobile device access rule for the specified Amazon WorkMail organization.
DeleteOrganization
Each argument is described in detail in: Paws::WorkMail::DeleteOrganization
Returns: a Paws::WorkMail::DeleteOrganizationResponse instance
Deletes an Amazon WorkMail organization and all underlying AWS resources managed by Amazon WorkMail as part of the organization. You can choose whether to delete the associated directory. For more information, see Removing an organization (https://docs.aws.amazon.com/workmail/latest/adminguide/remove_organization.html) in the Amazon WorkMail Administrator Guide.
DeleteResource
Each argument is described in detail in: Paws::WorkMail::DeleteResource
Returns: a Paws::WorkMail::DeleteResourceResponse instance
Deletes the specified resource.
DeleteRetentionPolicy
Each argument is described in detail in: Paws::WorkMail::DeleteRetentionPolicy
Returns: a Paws::WorkMail::DeleteRetentionPolicyResponse instance
Deletes the specified retention policy from the specified organization.
DeleteUser
Each argument is described in detail in: Paws::WorkMail::DeleteUser
Returns: a Paws::WorkMail::DeleteUserResponse instance
Deletes a user from Amazon WorkMail and all subsequent systems. Before you can delete a user, the user state must be DISABLED
. Use the DescribeUser action to confirm the user state.
Deleting a user is permanent and cannot be undone. WorkMail archives user mailboxes for 30 days before they are permanently removed.
DeregisterFromWorkMail
Each argument is described in detail in: Paws::WorkMail::DeregisterFromWorkMail
Returns: a Paws::WorkMail::DeregisterFromWorkMailResponse instance
Mark a user, group, or resource as no longer used in Amazon WorkMail. This action disassociates the mailbox and schedules it for clean-up. WorkMail keeps mailboxes for 30 days before they are permanently removed. The functionality in the console is Disable.
DescribeGroup
Each argument is described in detail in: Paws::WorkMail::DescribeGroup
Returns: a Paws::WorkMail::DescribeGroupResponse instance
Returns the data available for the group.
DescribeMailboxExportJob
Each argument is described in detail in: Paws::WorkMail::DescribeMailboxExportJob
Returns: a Paws::WorkMail::DescribeMailboxExportJobResponse instance
Describes the current status of a mailbox export job.
DescribeOrganization
Each argument is described in detail in: Paws::WorkMail::DescribeOrganization
Returns: a Paws::WorkMail::DescribeOrganizationResponse instance
Provides more information regarding a given organization based on its identifier.
DescribeResource
Each argument is described in detail in: Paws::WorkMail::DescribeResource
Returns: a Paws::WorkMail::DescribeResourceResponse instance
Returns the data available for the resource.
DescribeUser
Each argument is described in detail in: Paws::WorkMail::DescribeUser
Returns: a Paws::WorkMail::DescribeUserResponse instance
Provides information regarding the user.
DisassociateDelegateFromResource
Each argument is described in detail in: Paws::WorkMail::DisassociateDelegateFromResource
Returns: a Paws::WorkMail::DisassociateDelegateFromResourceResponse instance
Removes a member from the resource's set of delegates.
DisassociateMemberFromGroup
Each argument is described in detail in: Paws::WorkMail::DisassociateMemberFromGroup
Returns: a Paws::WorkMail::DisassociateMemberFromGroupResponse instance
Removes a member from a group.
GetAccessControlEffect
Each argument is described in detail in: Paws::WorkMail::GetAccessControlEffect
Returns: a Paws::WorkMail::GetAccessControlEffectResponse instance
Gets the effects of an organization's access control rules as they apply to a specified IPv4 address, access protocol action, or user ID.
GetDefaultRetentionPolicy
Each argument is described in detail in: Paws::WorkMail::GetDefaultRetentionPolicy
Returns: a Paws::WorkMail::GetDefaultRetentionPolicyResponse instance
Gets the default retention policy details for the specified organization.
GetMailboxDetails
Each argument is described in detail in: Paws::WorkMail::GetMailboxDetails
Returns: a Paws::WorkMail::GetMailboxDetailsResponse instance
Requests a user's mailbox details for a specified organization and user.
GetMobileDeviceAccessEffect
- OrganizationId => Str
- [DeviceModel => Str]
- [DeviceOperatingSystem => Str]
- [DeviceType => Str]
- [DeviceUserAgent => Str]
Each argument is described in detail in: Paws::WorkMail::GetMobileDeviceAccessEffect
Returns: a Paws::WorkMail::GetMobileDeviceAccessEffectResponse instance
Simulates the effect of the mobile device access rules for the given attributes of a sample access event. Use this method to test the effects of the current set of mobile device access rules for the Amazon WorkMail organization for a particular user's attributes.
ListAccessControlRules
Each argument is described in detail in: Paws::WorkMail::ListAccessControlRules
Returns: a Paws::WorkMail::ListAccessControlRulesResponse instance
Lists the access control rules for the specified organization.
ListAliases
Each argument is described in detail in: Paws::WorkMail::ListAliases
Returns: a Paws::WorkMail::ListAliasesResponse instance
Creates a paginated call to list the aliases associated with a given entity.
ListGroupMembers
Each argument is described in detail in: Paws::WorkMail::ListGroupMembers
Returns: a Paws::WorkMail::ListGroupMembersResponse instance
Returns an overview of the members of a group. Users and groups can be members of a group.
ListGroups
Each argument is described in detail in: Paws::WorkMail::ListGroups
Returns: a Paws::WorkMail::ListGroupsResponse instance
Returns summaries of the organization's groups.
ListMailboxExportJobs
Each argument is described in detail in: Paws::WorkMail::ListMailboxExportJobs
Returns: a Paws::WorkMail::ListMailboxExportJobsResponse instance
Lists the mailbox export jobs started for the specified organization within the last seven days.
ListMailboxPermissions
Each argument is described in detail in: Paws::WorkMail::ListMailboxPermissions
Returns: a Paws::WorkMail::ListMailboxPermissionsResponse instance
Lists the mailbox permissions associated with a user, group, or resource mailbox.
ListMobileDeviceAccessRules
Each argument is described in detail in: Paws::WorkMail::ListMobileDeviceAccessRules
Returns: a Paws::WorkMail::ListMobileDeviceAccessRulesResponse instance
Lists the mobile device access rules for the specified Amazon WorkMail organization.
ListOrganizations
Each argument is described in detail in: Paws::WorkMail::ListOrganizations
Returns: a Paws::WorkMail::ListOrganizationsResponse instance
Returns summaries of the customer's organizations.
ListResourceDelegates
Each argument is described in detail in: Paws::WorkMail::ListResourceDelegates
Returns: a Paws::WorkMail::ListResourceDelegatesResponse instance
Lists the delegates associated with a resource. Users and groups can be resource delegates and answer requests on behalf of the resource.
ListResources
Each argument is described in detail in: Paws::WorkMail::ListResources
Returns: a Paws::WorkMail::ListResourcesResponse instance
Returns summaries of the organization's resources.
ListTagsForResource
Each argument is described in detail in: Paws::WorkMail::ListTagsForResource
Returns: a Paws::WorkMail::ListTagsForResourceResponse instance
Lists the tags applied to an Amazon WorkMail organization resource.
ListUsers
Each argument is described in detail in: Paws::WorkMail::ListUsers
Returns: a Paws::WorkMail::ListUsersResponse instance
Returns summaries of the organization's users.
PutAccessControlRule
- Description => Str
- Effect => Str
- Name => Str
- OrganizationId => Str
- [Actions => ArrayRef[Str|Undef]]
- [IpRanges => ArrayRef[Str|Undef]]
- [NotActions => ArrayRef[Str|Undef]]
- [NotIpRanges => ArrayRef[Str|Undef]]
- [NotUserIds => ArrayRef[Str|Undef]]
- [UserIds => ArrayRef[Str|Undef]]
Each argument is described in detail in: Paws::WorkMail::PutAccessControlRule
Returns: a Paws::WorkMail::PutAccessControlRuleResponse instance
Adds a new access control rule for the specified organization. The rule allows or denies access to the organization for the specified IPv4 addresses, access protocol actions, and user IDs. Adding a new rule with the same name as an existing rule replaces the older rule.
PutMailboxPermissions
Each argument is described in detail in: Paws::WorkMail::PutMailboxPermissions
Returns: a Paws::WorkMail::PutMailboxPermissionsResponse instance
Sets permissions for a user, group, or resource. This replaces any pre-existing permissions.
PutRetentionPolicy
- FolderConfigurations => ArrayRef[Paws::WorkMail::FolderConfiguration]
- Name => Str
- OrganizationId => Str
- [Description => Str]
- [Id => Str]
Each argument is described in detail in: Paws::WorkMail::PutRetentionPolicy
Returns: a Paws::WorkMail::PutRetentionPolicyResponse instance
Puts a retention policy to the specified organization.
RegisterToWorkMail
Each argument is described in detail in: Paws::WorkMail::RegisterToWorkMail
Returns: a Paws::WorkMail::RegisterToWorkMailResponse instance
Registers an existing and disabled user, group, or resource for Amazon WorkMail use by associating a mailbox and calendaring capabilities. It performs no change if the user, group, or resource is enabled and fails if the user, group, or resource is deleted. This operation results in the accumulation of costs. For more information, see Pricing (https://aws.amazon.com/workmail/pricing). The equivalent console functionality for this operation is Enable.
Users can either be created by calling the CreateUser API operation or they can be synchronized from your directory. For more information, see DeregisterFromWorkMail.
ResetPassword
Each argument is described in detail in: Paws::WorkMail::ResetPassword
Returns: a Paws::WorkMail::ResetPasswordResponse instance
Allows the administrator to reset the password for a user.
StartMailboxExportJob
- ClientToken => Str
- EntityId => Str
- KmsKeyArn => Str
- OrganizationId => Str
- RoleArn => Str
- S3BucketName => Str
- S3Prefix => Str
- [Description => Str]
Each argument is described in detail in: Paws::WorkMail::StartMailboxExportJob
Returns: a Paws::WorkMail::StartMailboxExportJobResponse instance
Starts a mailbox export job to export MIME-format email messages and calendar items from the specified mailbox to the specified Amazon Simple Storage Service (Amazon S3) bucket. For more information, see Exporting mailbox content (https://docs.aws.amazon.com/workmail/latest/adminguide/mail-export.html) in the Amazon WorkMail Administrator Guide.
TagResource
- ResourceARN => Str
- Tags => ArrayRef[Paws::WorkMail::Tag]
Each argument is described in detail in: Paws::WorkMail::TagResource
Returns: a Paws::WorkMail::TagResourceResponse instance
Applies the specified tags to the specified Amazon WorkMail organization resource.
UntagResource
Each argument is described in detail in: Paws::WorkMail::UntagResource
Returns: a Paws::WorkMail::UntagResourceResponse instance
Untags the specified tags from the specified Amazon WorkMail organization resource.
UpdateMailboxQuota
Each argument is described in detail in: Paws::WorkMail::UpdateMailboxQuota
Returns: a Paws::WorkMail::UpdateMailboxQuotaResponse instance
Updates a user's current mailbox quota for a specified organization and user.
UpdateMobileDeviceAccessRule
- Effect => Str
- MobileDeviceAccessRuleId => Str
- Name => Str
- OrganizationId => Str
- [Description => Str]
- [DeviceModels => ArrayRef[Str|Undef]]
- [DeviceOperatingSystems => ArrayRef[Str|Undef]]
- [DeviceTypes => ArrayRef[Str|Undef]]
- [DeviceUserAgents => ArrayRef[Str|Undef]]
- [NotDeviceModels => ArrayRef[Str|Undef]]
- [NotDeviceOperatingSystems => ArrayRef[Str|Undef]]
- [NotDeviceTypes => ArrayRef[Str|Undef]]
- [NotDeviceUserAgents => ArrayRef[Str|Undef]]
Each argument is described in detail in: Paws::WorkMail::UpdateMobileDeviceAccessRule
Returns: a Paws::WorkMail::UpdateMobileDeviceAccessRuleResponse instance
Updates a mobile device access rule for the specified Amazon WorkMail organization.
UpdatePrimaryEmailAddress
Each argument is described in detail in: Paws::WorkMail::UpdatePrimaryEmailAddress
Returns: a Paws::WorkMail::UpdatePrimaryEmailAddressResponse instance
Updates the primary email for a user, group, or resource. The current email is moved into the list of aliases (or swapped between an existing alias and the current primary email), and the email provided in the input is promoted as the primary.
UpdateResource
- OrganizationId => Str
- ResourceId => Str
- [BookingOptions => Paws::WorkMail::BookingOptions]
- [Name => Str]
Each argument is described in detail in: Paws::WorkMail::UpdateResource
Returns: a Paws::WorkMail::UpdateResourceResponse instance
Updates data for the resource. To have the latest information, it must be preceded by a DescribeResource call. The dataset in the request should be the one expected when performing another DescribeResource
call.
PAGINATORS
Paginator methods are helpers that repetively call methods that return partial results
ListAllAliases(sub { },EntityId => Str, OrganizationId => Str, [MaxResults => Int, NextToken => Str])
ListAllAliases(EntityId => Str, OrganizationId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Aliases, passing the object as the first parameter, and the string 'Aliases' as the second parameter
If not, it will return a a Paws::WorkMail::ListAliasesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllGroupMembers(sub { },GroupId => Str, OrganizationId => Str, [MaxResults => Int, NextToken => Str])
ListAllGroupMembers(GroupId => Str, OrganizationId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Members, passing the object as the first parameter, and the string 'Members' as the second parameter
If not, it will return a a Paws::WorkMail::ListGroupMembersResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllGroups(sub { },OrganizationId => Str, [MaxResults => Int, NextToken => Str])
ListAllGroups(OrganizationId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Groups, passing the object as the first parameter, and the string 'Groups' as the second parameter
If not, it will return a a Paws::WorkMail::ListGroupsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllMailboxPermissions(sub { },EntityId => Str, OrganizationId => Str, [MaxResults => Int, NextToken => Str])
ListAllMailboxPermissions(EntityId => Str, OrganizationId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Permissions, passing the object as the first parameter, and the string 'Permissions' as the second parameter
If not, it will return a a Paws::WorkMail::ListMailboxPermissionsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllOrganizations(sub { },[MaxResults => Int, NextToken => Str])
ListAllOrganizations([MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- OrganizationSummaries, passing the object as the first parameter, and the string 'OrganizationSummaries' as the second parameter
If not, it will return a a Paws::WorkMail::ListOrganizationsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllResourceDelegates(sub { },OrganizationId => Str, ResourceId => Str, [MaxResults => Int, NextToken => Str])
ListAllResourceDelegates(OrganizationId => Str, ResourceId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Delegates, passing the object as the first parameter, and the string 'Delegates' as the second parameter
If not, it will return a a Paws::WorkMail::ListResourceDelegatesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllResources(sub { },OrganizationId => Str, [MaxResults => Int, NextToken => Str])
ListAllResources(OrganizationId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Resources, passing the object as the first parameter, and the string 'Resources' as the second parameter
If not, it will return a a Paws::WorkMail::ListResourcesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllUsers(sub { },OrganizationId => Str, [MaxResults => Int, NextToken => Str])
ListAllUsers(OrganizationId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Users, passing the object as the first parameter, and the string 'Users' as the second parameter
If not, it will return a a Paws::WorkMail::ListUsersResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SEE ALSO
This service class forms part of Paws
BUGS and CONTRIBUTIONS
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues