Exchange (CMIS Connection Type)

From Grooper Wiki

This article is about the current version of Grooper.

Note that some content may still need to be updated.

2025 20232.72

Exchange is a CMIS Connection Type that connects Grooper to Microsoft Exchange email servers (including Outlook servers) for import and export operations.

The Exchange Connection Type allows you to access Outlook files and folders. You can access mail messages, calendar appointments, contact cards, and tasks all using this binding. Once connected, you can import full mail message threads and attached files into Grooper.

Version Differences

Prior to version 2.72, connections to Exchange servers were made using the Mail Import and Mail Export providers. The Exchange binding replaces the old Mail Import provider and provides increased functionality. Mail Import is still available as a "legacy" provider. While these providers still exists in Grooper as legacy import and export providers, they are deprecated components and no longer recommended for use.

For increased functionality in 2.72, create a CMIS Connection using the Exchange Connection Type and utilize the new CMIS Import and CMIS Export capabilities.

How To: Create a New Exchange Connection

Click here for an interactive walkthrough


  1. Expand your Projects Folder.
  2. Right-click the Project.
  3. Select "Add", then "CMIS Connection".
  4. Name your CMIS Connection.
  5. Then click "Execute."
  6. On the CMIS Connection tab, select "Exchange" from the "Connection Settings" drop-down menu.
  7. Enter the host name or IP address of the Microsoft exchange server.
    • For example, outlook.office365.com is the hostname for exchange online.
  8. Choose your Authentication Method.
    • Auto Authentication - Authenticates automatically using the current Windows user's credentials.
    • Basic Authentication - Implements Basic HTTP Authentication as defined in RFC-7617. If you choose this option, you will need to enter your user name and password
    • NTLM Authentication - Implements NTLM Authentication as defined in MS-NLMP. If you choose this method, you will need to enter the Windows Active Directory domain name and user name and password.
    • OAuth Authentication - Implements OAuth 2.0 for connections to Exchange. If you choose this method, you will click a nested button to log in using a Microsoft account.
  9. Under "Mailbox Llist", press the ellipses button to bring up a List Editor.
  10. Here you can enter a list of email addresses you want to access as repositories.
    • This means you can access multiple emails using one "super-user" account.
  11. Select "Import Repository" to bring in these repositories for Grooper to import and export to the corresponding folders in the connecting file system.
  12. This False icon will turn to True once the repositories have been imported.
  13. Selecting the imported repository, you see you can have access to all email folders from messages to contacts.
  14. You can bring in any email message, including attached files into Grooper.

Exchange Binding Content Types

The Exchange Binding has five "content types": Item, Messages, Appointments, Contacts and Tasks. Each one has its own set of properties you can query using CMISQL queries (Either using a CMIS Repository's "Search Tab" or using Import Query Results to import files from an inbox). The "Item" content type is a base type from which all four content types inherit. It defines a common set of properties to the other four content types. All five content types are full text searchable using the CONTAINS() predicate.

Content Type Description Properties
Item The base type item, which all content types inherit.

Users should only query using this content type if they want to return files of all types (Messages, Appointments, Contacts and Tasks).

  • Subject
  • Size
  • Has Attachments
Message Represents an email message.

This is the most commonly used Exchange content type. Most typically users want to query/import email messages.

  • MIME Type: message/rfc822
  • File Extension: .eml
  • Subject
  • Sender
  • To Recipients
  • Cc Recipients
  • Bcc Recipients
  • Date Time Recieved
  • Date Time Sent
  • Is Read
  • Size
  • Has Attachments
Appointment Represents a calendar appointment
  • MIME Type: text/calendar
  • File Extension: .ics
  • Subject
  • Organizer
  • Size
  • Has Attachments
Contact Represents a contact card.
  • MIME Type: text/x-vcard
  • File Extension: .vcf
  • Display Name
  • Subject
  • Size
  • Has Attachments
Task Represents a task
  • MIME Type: text/plain
  • File Extension: .txt
  • Subject
  • Size
  • Has Attachments

Exchange CMISQL Query Examples

You can search across all item types, including searching for e-mail messages. A use for this could be using Import Query Results to narrow down what you want to import across one or more mailboxes based on sender and/or words in the subject line.

Query 1

SELECT * FROM Message WHERE HasAttachments=True AND Subject LIKE '%Sales Order%' AND Subject LIKE '%grooper%' AND DateTime Received>='1/1/2018'


This query would search the Message content type for certain property values. Namely, that the messages have attachment, contain the words "Sales Order" and "grooper" in the title and were received after Jan 01, 2018.

Note you cannot search for "identity" in a subject line.

  • You cannot use the = operator to search for something in a subject.
  • Instead, use the LIKE operator. Search using grammar like this: Subject LIKE '%put what you're searching for here%'

Query 2

SELECT * FROM Item WHERE CONTAINS ('grooper AND 2023 AND beta')

You can also search across all content types. This query would return any Messages, Contacts, Appointments or Tasks that have the words "grooper" "2023" and "beta" in their text (including subject lines). You also have access to OR and NOT operators.

Known Issues & Limitations

Exchange CMISQL Query Limitations

When configuring a WHERE clause (using a Comparison Predicate), the "Subject", "Sender", "To Recipients", "Cc Recipients", and "Bcc Recipients" cannot use the = operator.

  • Use the LIKE operator instead.
    • Incorrect syntax: Sender = '%user@example.com%'
    • Correct syntax: Sender LIKE '%user@example.com%'
  • BE AWARE: EWS only supports substring matching for these properties. You must use the % wildcard on either side of the search term when using the LIKE operator.
    • Incorrect syntax: Sender LIKE 'user@example.com'
    • Correct syntax: Sender LIKE '%user@example.com%'