I'm working with Exchange search results in eDiscovery Center on Office 365 and trying to find the best way to programmatically retrieve the search result of an eDiscovery query. For SharePoint search, I found I can work with the FAST query API (KeywordQuery, SearchExecutor) via CSOM in my case, and the query constructed in eDiscovery Center. For Exchange, it looks like I'll have to authenticate and perform my search of mail data via the Exchange Web Services API (EWS-Api-2.0).

My questions are:

  1. Is there some other more consolidated way to achive my goal of retrieving the search results rather than having to work with two different APIs when programmatically querying eDiscovery Center? It sure would be nice if the search results were exposed in the eDiscovery Center.
  2. I see that the latest version of EWS includes the Microsoft.Exchange.WebServices.Auth.Validation.AuthToken namespace. Therefore, if my only option is to work with EWS can I reuse the token I've obtained from connecting to eDiscovery Center?

1 Answer 1


Up front to answer your question from 2013....

  1. Yes there is - see below and
  2. No, you wont need to

In your first paragraph you seem to imply that from the eDiscovery Center in SharePoint, you will need to query out separately from SharePoint to Exchange (via EWS). After researching this, I found that you should be able to do a single search within your SharePoint eDiscovery Center if you have the administrative settings correct to bring Exchange into SharePoint's Onines eDiscovery Center.

From Office 365 eDiscovery documentation:

In the eDiscovery Center in Office 365, you can search all Exchange Online mailboxes, SharePoint Online sites, and OneDrive for Business sites in a single eDiscovery search. To search all content sources in the organization, an eDiscovery manager must be assigned the appropriate eDiscovery permissions for each content source.

To allow your Exchange to be queried via the eDiscovery Center you need to set it up as a result source. This is Step 2 of Set Up an eDiscovery Center in SharePoint Online.

To search Exchange Online mailboxes from an eDiscovery Center, you have to configure Search to include Exchange Online as a result source for the eDiscovery Center site collection. For more information, see Manage result sources.

Follow these steps to configure Exchange Online as a result source for the eDiscovery Center that you’re setting up.

Go to the new eDiscovery Center that you created in Step 1. Use the Web site address that you specified; for example, https://contoso.com/sites/eDiscovery.

Go to Settings > Site settings.

On the Site Settings page, under Site Collection Administration, click Search Result Sources.

On the Manage Result Sources page, click New Result Source.

In the General Information section, in the Name box, type Exchange Online and, optionally, type a description.

In the Protocol section, select Exchange.

In the Exchange Source URL section, click the Use AutoDiscovercheckbox.

Click Save.

Also - refer to the FAQ for more deatils on setup, case search flow and typical search scenarios. This is a very deep setup topic to broad to cover here. But YES it can be done, and no you dont need authentication in your search - that is setup as part of the admin of SharePoints eDiscovery Center.

Lastly - there is a link here updated Feb2016 on the latest CSOM-eDiscovery protocol - the html is blank now - but if contains a link at the top to a PDF which has detils of how to do CSOM eDiscovery Center query/holds.

Hope this helps...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.