Microsoft Dynamics 365
This article outlines the integration with the Microsoft Dynamics 365 connector, enabling streamlined metadata management through features such as crawling, sample profiling, data preview, and manual lineage.
This connector connects to Microsoft Dynamics 365 using REST APIs and authenticates through Microsoft Entra ID (Azure AD) using OAuth 2.0 with an Azure AD application (Client ID, Client Secret, and Tenant ID). It obtains a valid OAuth access token to access Microsoft Dynamics 365 metadata and entity information, enabling metadata discovery, data preview, and sample profiling.

Overview
Connector Details
Connector Category
Application
OvalEdge Release Supported
Release8.0 and later
Connectivity
[How the connection is established with Microsoft Dynamics 365]
REST APIs
Connector Features
Crawling
✅
Delta Crawling
❌
Profiling
❌
Sample Profiling
✅
Query Sheet
❌
Data Preview
✅
Auto Lineage
❌
Manual Lineage
✅
Secure Authentication via Credential Manager
✅
Data Quality
❌
DAM (Data Access Management)
❌
Bridge
✅
Metadata Mapping
The following objects are crawled from Microsoft Dynamics 365 and mapped to the corresponding UI assets.
Schema
dynamics365
Schema
Databases
Schema
Schema
Schema comment
Source Description
Databases
Schema
Table
logicalname
Table
Tables
table
Table
Table Type
Type
Tables
table
Table
Table Comments
Source Description
Descriptions
table
Columns
Field keys from sampled entity row
Column
Table Columns
Columns
Columns
AttributeType
Column Type
Table Columns
Columns
Columns
Description.UserLocalizedLabel.Label
Source Description
Table Columns
Columns
Columns
ColumnNumber
Column Position
Table Columns
Columns
Columns
Length
Data Type Size
Table Columns
Columns
Columns
IsPrimaryId
Primary Key
Table Columns
Columns
Columns
RequiredLevel
Nullable
Table Columns
Columns
Column Relations
ReferencedEntity
Left Table
Relationships
-
Column Relations
ReferencedAttribute
Left Column
Relationships
-
Column Relations
ReferencingEntity
Right Table
Relationships
-
Column Relations
ReferencingAttribute
Right Column
Relationships
-
Views
View Name
View
Tables
view
Procedures
ROUTINE_NAME
Name
Procedures
-
Functions
ROUTINE_NAME
Name
Functions
-
Triggers
Trigger Name
Name
Triggers
-
Indexes
Index name
Index
Indexes
Index
Set up a Connection
Prerequisites
The following are the prerequisites to establish a connection:
Service Account User Permissions
It is recommended to use a dedicated service account to establish the connection to the data source, configured with the following minimum set of permissions.
👨💻 Who can provide these permissions? These permissions are typically granted by the Microsoft Dynamics 365 administrator, as users may not have the required access to assign them independently.
Connection Validation
-
POST /oauth2/v2.0/token
Valid Azure AD Application (Tenant ID, Client ID, Client Secret)
Crawling
Tables
GET /entities?$select=logicalname
Read
Crawling
Table Columns
GET /EntityDefinitions(LogicalName='{table}')?$select=EntitySetName
Read
Crawling
Table Columns
GET /{entitySetName}?$top=1
Read
Crawling
Table Columns
GET /EntityDefinitions(LogicalName='{table}')/Attributes(LogicalName='{column}')
Read
Crawling
Relationships
GET /RelationshipDefinitions
Read
Data Preview
Tables
GET /{entitySetName}?$top={limit}
Read
Sample Profiling
Tables / Table Columns
GET /{entitySetName}?$top={sampleSize}
Read
Profiling
Tables
GET /RetrieveTotalRecordCount(EntityNames=['{tableName}'])
Read / Execute Dataverse Action
A valid OAuth 2.0 access token must be obtained before performing metadata crawling, data preview, or sample profiling operations.
The Azure AD application (service principal) requires Read access to Microsoft Dataverse metadata and entities, along with permission to execute the RetrieveTotalRecordCount Dataverse action.
Connection Configuration Steps
Users are required to have the Connector Creator role in order to configure a new connection.
Log into OvalEdge, go to Administration > Connectors, click + (New Connector), search for Microsoft Dynamics 365, and complete the required parameters.
Fields marked with an asterisk (*) are mandatory for establishing a connection.
Connector Type
By default, "Microsoft Dynamics 365" is displayed as the selected connector type.
Credential Manager*
Select the desired credentials manager from the drop-down list. Relevant parameters will be displayed based on your selection.
Supported Credential Managers:
OE Credential Manager
AWS Secrets Manager
HashiCorp Vault
Azure Key Vault
For more details, click here.
Connector Name*
Enter a unique name for the Microsoft Dynamics 365 connection
(Example: "Microsoft Dynamics 365_Prod").
Connector Environment
Select the environment (Example: PROD, STG) configured for the connector.
For more details, click here.
Connector description
Enter a brief description of the connector.
Server*
Enter the Microsoft Dynamics 365 environment hostname (for example, orgname.xxxxxx.dynamics.com). The connector uses this hostname to construct the Microsoft Dataverse API endpoint and OAuth scope.
Client Id*
Enter the Azure AD Application (Client) ID of the registered application used to authenticate the connector with Microsoft Dynamics 365.
Client Secret*
Enter the client secret associated with the Azure AD application. This value is used together with the Client ID and Tenant ID to obtain the OAuth access token.
Tenant Id*
Enter the Azure AD Directory (Tenant) ID that identifies the Microsoft Entra tenant containing the registered application. The connector uses this value to authenticate through the Microsoft OAuth token endpoint.
Connection String
Configure the connection string for Microsoft Dynamics 365:
Automatic Mode: The system generates a connection string based on the provided credentials.
Manual Mode: Enter a valid connection string manually.
Proxy Enabled*
Select Yes to route API calls through a proxy server. Select No to bypass the proxy and connect directly.
Plugin Server
Enter the server’s name when running as a plugin server.
Plugin Port
Enter the port number on which the plugin is running.
Default Governance Roles
Default Governance Roles*
Select the appropriate users or teams for each governance role from the drop-down list. All users and teams configured in OvalEdge Security are displayed for selection.
Admin Roles
Admin Roles*
Select one or more users from the dropdown list for Integration Admin and Security & Governance Admin. All users configured in OvalEdge Security are available for selection.
No of Archive Objects
No Of Archive Objects*
This shows the number of recent metadata changes to a dataset at the source. By default, it is off. To enable it, toggle the Archive button and specify the number of objects to archive.
Example: Setting it to 4 retrieves the last four changes, displayed in the 'Version' column of the 'Metadata Changes' module.
Bridge
Select Bridge*
If applicable, select the bridge from the drop-down list.
The drop-down list displays all active bridges configured in OvalEdge. These bridges enable communication between data sources and OvalEdge without altering firewall rules.
After entering all connection details, the following actions can be performed:
Click Validate to verify the connection.
Click Save to store the connection for future use.
Click Save & Configure to apply additional settings before saving.
The saved connection will appear on the Connectors home page.
Manage Connector Operations
Crawl/Profile
To perform crawl and profile operations, users must be assigned the Integration Admin role.
The Crawl/Profile button allows users to select one or more schemas for crawling and profiling.
Navigate to the Connectors page and click Crawl/Profile.
Select the schemas to crawl.
The Crawl option is selected by default. Click the Crawl & Profile radio button to perform both crawling and profiling operations.
Click Run to collect metadata from the connected source and load it into the Data Catalog.
After a successful crawl, the information appears in the Data Catalog > Databases tab.
The Schedule checkbox allows automated crawling and profiling at defined intervals, from a minute to a year.
Click the Schedule checkbox to enable the Select Period drop-down.
Select a time period for the operation from the drop-down menu.
Click Schedule to initiate metadata collection from the connected source.
The system will automatically execute the selected operation (Crawl or Crawl & Profile) at the scheduled time.
Other Operations
The Connectors page in OvalEdge provides a centralized view of all configured connectors, including their health status.
Managing connectors includes:
Connectors Health: Displays the current status of each connector using a green icon for active connections and a red icon for inactive connections, helping to monitor the connectivity with data sources.
Viewing: Click the Eye icon next to the connector name to view connector details, including schema, tables, and columns.
Nine Dots Menu Options:
To view, edit, validate, configure, or delete connectors, click on the Nine Dots menu.
Edit Connector: Update and revalidate the data source.
Validate Connector: Check the connection's integrity.
Settings: Modify connector settings.
Crawler: Configure data extraction.
Profiler: Customize data profiling rules and methods.
Access Instructions: Add notes on how data can be accessed.
Business Glossary Settings: Manage term associations at the connector level.
Lineage: Select the parsing method and configure the AI confidence score threshold for automatic lineage merging.
Others: Configure notification recipients for metadata changes.
Delete Connector: Remove a connector with confirmation.
For more details on connector settings, click here.
Connectivity Troubleshooting
If incorrect parameters are entered, error messages may appear. Ensure all inputs are accurate to resolve these issues. If issues persist, contact the assigned support team.
1
Failed to authenticate with Dynamics 365 / Failed to login
The connector could not authenticate with Microsoft Dynamics 365 using the configured credentials.
Resolution:
Verify the Server, Client Id, Client Secret, and Tenant Id values.
Ensure the Azure AD application exists in the specified tenant.
Verify that the configured client secret is the Secret Value and has not expired.
2
AADSTS7000215: Invalid client secret provided
The configured client secret is invalid, expired, or the Secret ID was entered instead of the Secret Value.
Resolution:
Generate a new client secret in the Azure AD App Registration.
Copy the Secret Value, not the Secret ID.
Update the connector configuration and validate the connection again.
3
AADSTS700016: Application with identifier was not found in the directory
The specified Client Id does not exist in the configured Azure AD tenant.
Resolution:
Verify that the Client Id and Tenant Id belong to the same Azure AD application.
Correct any typographical errors in the configured values.
Revalidate the connection after updating the configuration.
4
AADSTS70011 / invalid_scope
The OAuth scope could not be generated because the Server value is invalid.
Resolution:
Enter only the Dataverse hostname (for example, orgname.xxxx.dynamics.com).
Do not include https://, URL paths, or trailing slashes.
Validate the connection after updating the Server value.
5
Failed to get access token for Dynamics 365
The connector could not obtain an OAuth access token from Microsoft Entra ID.
Resolution:
Verify the Tenant Id, Client Id, and Client Secret.
Confirm that the token endpoint URL references the correct tenant.
Review the connector logs for the Azure AD authentication error.
6
Test Connection succeeds, crawl fails with 401 Unauthorized
Authentication succeeded, but the Dataverse API rejected the access token during crawling.
Resolution:
Add the Azure AD application as an Application User in the Dataverse environment.
Assign an appropriate Dataverse security role.
Retry the crawl after updating permissions.
7
HTTP 403 Forbidden during crawl or profiling
The authenticated application does not have sufficient privileges to access Dataverse metadata or entities.
Resolution:
Assign a Dataverse security role with the required Read permissions.
Verify that metadata access is permitted.
Retry the operation after updating permissions.
8
Exception occurred while getting the remote tables for the schema: dynamics365
The connector could not retrieve entity metadata from Microsoft Dataverse.
Resolution:
Verify the configured Server value and API endpoint.
Check proxy or network connectivity settings.
Ensure the application has permission to read Dataverse metadata.
9
EntitySet not found for the entity {name}
The connector could not resolve the EntitySet name for the specified entity.
Resolution:
Verify that the entity exists in the Dataverse environment.
Ensure the application has access to the entity metadata.
Confirm that the entity has not been renamed or removed.
10
Exception occurred while getting the remote columns for the table: {table}
The connector could not retrieve column metadata or sample records for the specified table.
Resolution:
Verify that the table contains at least one readable record.
Ensure the application has permission to read entity attributes.
Validate that the EntitySet name is resolved successfully.
11
Exception occurred while getting the first N rows of the table: {table}
Sample profiling or Data Preview could not retrieve records from the entity.
Resolution:
Verify that the application has read access to the entity.
Confirm that the table contains accessible records.
Check proxy and network connectivity if the issue persists.
12
Exception occurred while getting the number of rows of the table: {table}
The connector could not retrieve the table row count using the Dataverse action.
Resolution:
Ensure the application user can execute the RetrieveTotalRecordCount action.
Verify that the required Dataverse permissions are assigned.
Retry the profiling operation after updating permissions.
13
Exception occurred while getting the remote column relations
The connector could not retrieve relationship metadata from Dataverse.
Resolution:
Verify that the application has permission to read relationship metadata.
Confirm that metadata access is enabled for the application.
Retry the crawl after updating permissions.
14
Connection timeout or proxy errors
The connector could not communicate with Microsoft Entra ID or the Dataverse endpoint due to network or proxy issues.
Resolution:
Verify the configured proxy settings if proxy is enabled.
Ensure outbound HTTPS access to login.microsoftonline.com and the Dataverse environment.
Retry the connection after resolving network connectivity issues.
15
Unauthorized token in getRemoteColumns / getEntitySetByEntityName / getIndividualColumns
The access token became invalid or unauthorized while retrieving metadata.
Resolution:
Verify that the configured Client Secret is valid and has not expired.
Confirm that the Dataverse Application User exists and is enabled.
Revalidate the connection and rerun the operation.
Copyright © 2026, OvalEdge LLC, Peachtree Corners GA USA
Last updated
Was this helpful?

