What's new in EWS and other web services in Exchange

Find out what's new in EWS and web services in Exchange and the EWS Managed API.

Web services in Exchange have been updated to include new features.

Table 1. New web service features in Exchange Online, Exchange 2013, and the EWS Managed API

Feature Implemented in Exchange Online Implemented in Exchange 2013 Implemented in the EWS Managed API
eDiscovery
Yes
Yes
Yes
Archiving
Yes
Yes
Yes
Personas
Yes
Yes
No
Unified Contact Store
Yes
Yes
No
Retention policies
Yes
Yes
Yes
User photos
Yes
Yes
No
Mail apps for Outlook management
Yes
Yes
Yes
Propose new meeting time
Yes
No
No

eDiscovery in EWS

eDiscovery is a federated query web service that enables external applications, such as SharePoint 2013, to perform queries of Exchange data. Discovery consists of several phases, including identifying and preserving key data, culling down and reviewing the data, and producing data in court. eDiscovery queries facilitate the discovery process by providing a single discovery workflow across Exchange and SharePoint.

Table 2. EWS operations and EWS Managed API methods for working with eDiscovery

Operation name EWS Managed API method Description
GetDiscoverySearchConfiguration operation
ExchangeService.GetDiscoverySearchConfiguration()
Gets configuration information for in-place holds, saved discovery searches, and the mailboxes that are enabled for discovery search.
GetHoldOnMailboxes operation
ExchangeService.GetHoldOnMailboxes()
Gets the status of a query-based hold, which is set by using the SetHoldOnMailboxes operation.
GetNonIndexableItemDetails operation
ExchangeService.GetNonIndexableItemDetails()
Gets details about items that cannot be indexed. This includes, but is not limited to, the item identifier, an error code, an error description, when an attempt was made to index the item, and additional information about the item.
GetNonIndexableItemStatistics operation
ExchangeService.GetNonIndexableItemStatistics()
Gets the count of items that cannot be indexed in a mailbox.
GetSearchableMailboxes operation
ExchangeService.GetSearchableMailboxes()
Gets a list of mailboxes that the client has permission to search or perform eDiscovery on.
SearchMailboxes operation
ExchangeService.SearchMailboxes()
Searches for items in specific mailboxes that match query keywords.
SetHoldOnMailboxes operation
ExchangeService.SetHoldOnMailboxes()
Sets a query-based hold on items.

Archiving in EWS

Archive mailboxes are secondary mailboxes that are associated with a user. Archive mailboxes are typically used to manage email storage limits. For example, older email items might periodically be moved from the Inbox to the archive mailbox.

Exchange introduces two new EWS operations that you can use to archive a set of mail items from a primary mailbox. Archiving Inbox items in this way preserves the folder hierarchy of the items. In addition, archive mailboxes can now be stored either locally on a client, or remotely, in a way that is mostly opaque to a user, by using a folder path to point to the contents of the archive.

Table 3. EWS operations and EWS Managed API methods for working with archiving

Operation name EWS Managed API method Description
ArchiveItem operation
ExchangeService.ArchiveItems()
Moves an item from the primary mailbox to the archive mailbox.
CreateFolderPath operation
Not implemented.
Creates a folder hierarchy in a primary or archive mailbox.

Personas in EWS

A persona is a collection of data that is associated with an individual. The data can come from one or more sources and is associated with the persona by means of a common link ID. Personas in EWS enable you to link, search, browse, and retrieve information about a person from multiple sources and organize that information into a single logical entity. Personas differ from contacts in that a contact is a collection of data from a single source that is associated with an individual; for example, a personal Outlook contact or an entry in a global address list (GAL).

The EWS Managed API does not implement this functionality.

Note

The Unified Contact Store also exposes persona functionality by means of the operations that support that feature.

Table 4. EWS operations for working with personas

Operation name Description
FindPeople operation
Returns all persona objects from a specified contact folder or retrieves all contacts that match a specified query string.
GetPersona operation
Retrieves a persona.

Unified Contact Store in EWS

The Unified Contact Store is a feature that provides a consistent contact experience across Office products and acts as an integration point for third-party applications to use the same contact store. It allows users and applications to store, manage, and access contact information and make it available globally among Lync, Exchange 2013, Outlook, Outlook Web App and any other application that implements access to the Unified Contact Store. Exchange is the contact store for the Unified Contact Store experience.

The EWS Managed API does not implement this functionality.

Table 5. EWS operations for working with the Unified Contact Store

Operation name Description
AddNewImContactToGroup operation
Adds a new IM contact to a group. The Unified Contact Store can contain a maximum of 1000 contacts.
AddImContactToGroup operation
Adds an existing IM contact to a group. The Unified Contact Store can contain a maximum of 1000 contacts.
AddImGroup operation
Adds a new IM group. The Unified Contact Store can contain a maximum of 64 groups.
AddNewTelUriContactToGroup operation
Adds a new contact to a group based on a contact's phone number.
AddDistributionGroupToImList operation
Adds a new distribution list group. The Unified Contact Store can contain a maximum of 64 groups.
GetImItemList operation
Retrieves a list of IM groups and IM contact personas.
GetImItems operation
Retrieves information about the specified IM groups and IM contact personas.
RemoveContactFromImList operation
Removes the specified contact from all IM groups.
RemoveImContactFromGroup operation
Removes an IM contact from a group.
RemoveDistributionGroupFromImList operation
Removes the specified IM distribution list group.
RemoveImGroup operation
Removes the specified IM group.
SetImGroup operation
Changes the display name of a group.

Retention policies in EWS

Retention policies are policies that are used in Exchange to group one or more retention tags, to apply retention settings to folders or individual items such as email and voice mail messages, and to apply retention settings to a mailbox.

Exchange includes three types of retention tags:

  • Default policy tags that apply to mailbox items that have no other type of retention tag applied.

  • System folder policy tags that are applied to default folders such as the Inbox.

  • Personal tags that a user can apply to folders they create or to individual items.

Only one retention policy can be assigned to a mailbox, but the policy can have one or more retention tags of various types linked to it. Retention tags can be linked to or unlinked from a retention policy at any time. EWS in Exchange exposes a new operation, GetUserRetentionPolicyTags, and the EWS Managed API implements a new method, ExchangeService.GetUserRetentionPolicyTags(), that provides a list of all the tags that are linked to a retention policy. You can set and retrieve retention policy tags for items and folders by using the CreateItem, CreateFolder, UpdateItem, UpdateFolder, GetItem, and GetFolder operations.

Requesting user photos

You can request user photos from the Exchange server by using one of the two implementations of the GetUserPhoto operation: REST or SOAP. The REST endpoint uses a standard HTTPS GET request to get the user photo. The service will either return a user photo stored in Exchange or a photo from Active Directory Domain Services (AD DS).

The EWS Managed API does not implement this functionality. You can, however, use the EWS Managed API to return user photos that are stored in a mailbox by getting the photo that is attached to a contact.

Block senders and mark email as junk in EWS

You can now block senders and mark email as junk by using the new MarkAsJunk operation in EWS or the ExchangeService.MarkAsJunk() method in the EWS Managed API.

Mail apps for Outlook

EWS now includes support for managing mail apps for Outlook.

Table 6. EWS operations and EWS Managed API methods for working with mail apps for Outlook

Operation name EWS Managed API method Description
DisableApp operation
ExchangeService.DisableApp()
Disables an installed app.
GetAppManifests operation
ExchangeService.GetAppManifests()
Gets the app manifests for a mailbox.
GetAppMarketplaceUrl operation
ExchangeService.GetAppMarketplaceUrl()
Gets the app marketplace URL.
GetClientAccessToken operation
ExchangeService.GetClientAccessToken()
Gets client access tokens.
InstallApp operation
ExchangeService.InstallApp()
Installs an app for a mailbox.
UninstallApp operation
ExchangeService.UninstallApp
Uninstalls an app from a mailbox.

Propose new meeting time

The propose new time feature was introduced in version 15.00.0800.007 of Exchange. This allows meeting attendees to propose new meeting times to the meeting organizer.

The EWS Managed API does not implement this functionality.

See also