- Introduction
- Setting up your account
- Balance
- Clusters
- Concept drift
- Coverage
- Datasets
- General fields
- Labels (predictions, confidence levels, label hierarchy, and label sentiment)
- Models
- Streams
- Model Rating
- Projects
- Precision
- Recall
- Annotated and unannotated messages
- Extraction Fields
- Sources
- Taxonomies
- Training
- True and false positive and negative predictions
- Validation
- Messages
- Access control and administration
- Manage sources and datasets
- Understanding the data structure and permissions
- Creating or deleting a data source in the GUI
- Preparing data for .CSV upload
- Uploading a CSV file into a source
- Uploading a PST file
- Creating a dataset
- Multilingual sources and datasets
- Enabling sentiment on a dataset
- Amending dataset settings
- Deleting a message
- Deleting a dataset
- Exporting a dataset
- Using Exchange integrations
- Email transform tags
- Model training and maintenance
- Understanding labels, general fields, and metadata
- Label hierarchy and best practices
- Comparing analytics and automation use cases
- Turning your objectives into labels
- Overview of the model training process
- Generative Annotation
- Dastaset status
- Model training and annotating best practice
- Training with label sentiment analysis enabled
- Understanding data requirements
- Train
- Introduction to Refine
- Precision and recall explained
- Precision and Recall
- How validation works
- Understanding and improving model performance
- Reasons for label low average precision
- Training using Check label and Missed label
- Training using Teach label (Refine)
- Training using Search (Refine)
- Understanding and increasing coverage
- Improving Balance and using Rebalance
- When to stop training your model
- Using general fields
- Generative extraction
- Using analytics and monitoring
- Automations and Communications Mining™
- Developer
- Uploading data
- Downloading data
- Exchange Integration with Azure service user
- Exchange Integration with Azure Application Authentication
- Exchange Integration with Azure Application Authentication and Graph
- Migration Guide: Exchange Web Services (EWS) to Microsoft Graph API
- Fetching data for Tableau with Python
- Elasticsearch integration
- General field extraction
- Self-hosted Exchange integration
- UiPath® Automation Framework
- UiPath® official activities
- How machines learn to understand words: a guide to embeddings in NLP
- Prompt-based learning with Transformers
- Efficient Transformers II: knowledge distillation & fine-tuning
- Efficient Transformers I: attention mechanisms
- Deep hierarchical unsupervised intent modelling: getting value without training data
- Fixing annotating bias with Communications Mining™
- Active learning: better ML models in less time
- It's all in the numbers - assessing model performance with metrics
- Why model validation is important
- Comparing Communications Mining™ and Google AutoML for conversational data intelligence
- Licensing
- FAQs and more
Configure a Microsoft Exchange integration using Azure Application Authentication and Microsoft Graph for IXP on Automation Cloud.
Microsoft will retire Exchange Web Services (EWS) for Exchange Online on October 1, 2026 (Microsoft announcement). This guide covers the recommended Microsoft Graph API integration method. If you are migrating an existing EWS integration, refer to the EWS to Microsoft Graph API migration guide.
Introduction
This step-by-step guide will show you a popular method for creating a Microsoft Exchange application for Communications Mining™ in your Azure Cloud Platform. You'll learn how to create an Application (client) with an ID and Client Secret, and find your existing Directory (tenant) ID. This will allow users to access Exchange mailbox integrations in Communications Mining.
Why a successful integration is important
Failure to create an Exchange-Communications Mining™ application in Azure can lead to permissions errors that prevent users from accessing their mailbox integrations. To gain the full benefits of Communications Mining, follow these steps and complete the process in its entirety.
The step-by-step integration process
1. Register a new Communications Mining application
-
Sign into your Azure portal.
-
Go to the App Registrations menu and select New Registration.
-
Fill in and configure the required fields:
- Name: for example,
uipath-exchange-integration. - Supported account types: select the single tenant option.
- Name: for example,
-
Select Register, which redirects you to a page with details of the registered application, such as Application (client) ID, Directory (tenant) ID.
2. Create a client secret for a Communications Mining application
To keep your application secure, create a client secret as follows. Alternatively, you can authenticate with a certificate: skip this step, and select With private key & thumbprint when you create the integration in step 5, providing the PEM-encoded certificate with its private key and the certificate thumbprint. You can change the authentication method later.
-
Select Certificates and secrets under the Manage drop-down list.
-
Select New client secret under the Client secrets tab.
-
This opens the Add a client secret sidepanel.
-
Fill in the required fields:
- Description: enter a description for the client secret.
- Expires: select an expiry date. The recommended option is 12 months. Note the expiry date somewhere you will see it: when the secret expires, email ingestion stops until you rotate it.
-
Select Add.
-
The client secret is displayed under the Value column.
Azure displays the secret value only once. Therefore, make sure you copy and store it in a safe place. If you ever lose your secret value, create a new one.
3. Set API permissions
When using the Microsoft Graph API
-
Go to API permissions under the Manage drop-down list.
-
Select Add a permission.
-
Select Microsoft Graph under the Microsoft APIs tab.
Figure 1. The Microsoft APIs tab
-
Select Application permissions.
Figure 2. The permission options of Microsoft Graph
-
Expand the Mail drop-down list and select the Mail.Read permission.
Figure 3. Selecting a permission
-
Select Add permissions.
-
Select the MailboxFolder.Read.All permission.
Figure 4. Selecting a permission
-
Select Add permissions.
-
Back in the API permissions menu, select Grant admin consent for [Your Organization].
-
Select Yes in the Grant admin consent confirmation pop-up.
4. Restrict mailbox access with an application access policy
By default, the application permissions you granted apply to every mailbox in your organization. To limit the application to only the mailboxes Communications Mining needs, ask your Exchange administrator to create an application access policy. For the steps, check Limiting application permissions to specific Exchange Online mailboxes in the official Microsoft documentation.
Verify that the policy covers every mailbox you intend to sync before you add it to the integration. A mailbox the policy does not cover is disabled with an ErrorAccessDenied error the first time the sync attempts to read it. For details, check Troubleshooting Exchange integrations.
5. Create a new integration in Communications Mining
-
Go to Communications Mining™ by accessing IXP in Automation Cloud and selecting Communication Data.
-
Select the Integrations tab under the settings option.
-
Select New integration.
-
Select an existing project, enter a name for your integration, and, optionally, a title.
-
Select Continue.
-
Under Connect with your application, select Graph API.
-
Select the option With application access.
-
Fill in and configure the required fields as follows:
- Oauth Authority: enter the previously generated tenant ID in the following format:
https://login.microsoftonline.com/{tenant_id}. - Oauth Client Id: enter the previously generated client ID.
- Client Secret: enter the previously generated client secret.
- Oauth Authority: enter the previously generated tenant ID in the following format:
-
Select Validate & save credentials to check that your credentials are valid.
Note:Validate & save credentials confirms that your tenant ID, client ID, and secret can authenticate. It does not check access to any mailbox: a mailbox outside your application access policy only surfaces an error after you add it and the sync attempts to read it.
-
Select Continue.
Figure 5. The create a new integration configuration page
-
Select Add Mailbox to open the mailbox form.
-
Enter the email address for which you want to copy emails into Communications Mining™.
-
Select Add Mailbox again to save the mailbox.
-
Select Create Integration.
- Introduction
- Why a successful integration is important
- The step-by-step integration process
- 1. Register a new Communications Mining application
- 2. Create a client secret for a Communications Mining application
- 3. Set API permissions
- 4. Restrict mailbox access with an application access policy
- 5. Create a new integration in Communications Mining