You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/logic-apps/connectors/dataverse.md
+30-81Lines changed: 30 additions & 81 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,13 @@
1
1
---
2
-
title: Connect workflows to Microsoft Dataverse
3
-
description: Learn to access Dataverse databases from workflows in Azure Logic Apps.
2
+
title: Connect Workflows to Microsoft Dataverse
3
+
description: Learn how to access Dataverse databases from workflows in Azure Logic Apps.
4
4
services: logic-apps
5
5
ms.suite: integration
6
6
ms.reviewer: estfan, azla
7
7
ms.topic: how-to
8
-
ms.date: 07/20/2025
8
+
ms.date: 01/13/2026
9
9
ms.custom: engagement-fy23
10
+
#Customer intent: As a developer who works with Azure Logic Apps, I want to learn how to connect my workflow to Microsoft Dataverse.
10
11
---
11
12
12
13
# Connect to Microsoft Dataverse from workflows in Azure Logic Apps
@@ -19,7 +20,7 @@ For example, you can build workflows that create rows, update rows, and perform
19
20
20
21
The Dataverse connector was previously known as the Common Data Service 2.0 connector and originally known as the Dynamics 365 connector. You can use the Dataverse connector to access Microsoft Dataverse for Microsoft Dynamics 365 Sales, Microsoft Dynamics 365 Customer Service, Microsoft Dynamics 365 Field Service, Microsoft Dynamics 365 Customer Insights - Journeys, and Microsoft Dynamics 365 Project Service Automation.
21
22
22
-
This article shows how to add a Dataverse trigger or action to your workflow and how parameter options work.
23
+
This guide shows how to add a Dataverse trigger or action to your workflow and how the parameter options work.
23
24
24
25
> [!IMPORTANT]
25
26
>
@@ -38,39 +39,39 @@ For technical information based on the connector's Swagger description, such as
38
39
39
40
## Prerequisites
40
41
41
-
* An Azure account and subscription. If you don't have a subscription, [sign up for a free Azure account](https://azure.microsoft.com/pricing/purchase-options/azure-account?cid=msft_learn).
42
+
- An Azure account and subscription. [Get a free Azure account](https://azure.microsoft.com/pricing/purchase-options/azure-account?cid=msft_learn).
42
43
43
-
* A [Dataverse Data Service environment and database](/power-platform/admin/environments-overview), which is where your organization stores, manages, and shares business data in a Dataverse database. For more information, see the following resources:
44
+
- A [Dataverse Data Service environment and database](/power-platform/admin/environments-overview), which is where your organization stores, manages, and shares business data in a Dataverse database.
44
45
45
-
*[Learn: Create and manage Dataverse environments](/training/modules/create-manage-environments/)
* Basic knowledge about Azure Logic Apps along with the Consumption or Standard logic app resource and workflow from where you want to access your Dataverse database. To use a Dataverse trigger, you need a blank workflow. To use a Dataverse action, you need a workflow that starts with any trigger appropriate for your scenario.
51
+
> [!NOTE]
52
+
>
53
+
> Some scenarios might require that you enable access restrictions on your logic app resource to control inbound access from public networks. If you allow inbound communication from Power Platform to trigger your workflow by using the **PowerPlatformInfra** service tag, make sure that you use the non-region version.
50
54
51
-
For more information, see the following resources:
55
+
- Basic knowledge about Azure Logic Apps along with the Consumption or Standard logic app resource and workflow from where you want to access your Dataverse database. To use a Dataverse trigger, you need a blank workflow. To use a Dataverse action, you need a workflow that starts with any trigger appropriate for your scenario.
52
56
53
-
*[Create an example Consumption logic app workflow](../quickstart-create-example-consumption-workflow.md)
57
+
For more information, see:
54
58
55
-
*[Create an example Standard logic app workflow](../create-single-tenant-workflows-azure-portal.md)
59
+
-[Create an example Consumption logic app workflow](../quickstart-create-example-consumption-workflow.md)
60
+
-[Create an example Standard logic app workflow](../create-single-tenant-workflows-azure-portal.md)
56
61
57
62
## Add a Dataverse trigger
58
63
59
64
Based on whether you have a Consumption or Standard logic app workflow, follow the corresponding steps:
60
65
61
-
### [Consumption](#tab/consumption)
66
+
1. In the [Azure portal](https://portal.azure.com), open your logic app workflow in the designer.
62
67
63
-
1. In the [Azure portal](https://portal.azure.com), open your Consumption logic app resource.
64
-
65
-
1. On the resource sidebar, under **Development Tools**, select the designer to open the workflow.
66
-
67
-
1. On the designer, follow the [general steps to add the **Microsoft Dataverse** trigger for your scenario](../add-trigger-action-workflow.md?tabs=consumption#add-trigger) to your workflow.
68
+
1. Follow the [general steps](../add-trigger-action-workflow.md#add-trigger) to add the appropriate **Microsoft Dataverse** trigger for your scenario.
68
69
69
70
This example continues with the trigger named [**When a row is added, modified or deleted**](/connectors/commondataserviceforapps/#when-a-row-is-added,-modified-or-deleted).
70
71
71
72
1. At the prompt, sign in to your Dataverse environment or database.
72
73
73
-
1. In the trigger information box, provide the necessary trigger values.
74
+
1. In the trigger information box, provide the necessary parameter values.
74
75
75
76
The following example shows the sample trigger:
76
77
@@ -82,77 +83,25 @@ Based on whether you have a Consumption or Standard logic app workflow, follow t
82
83
83
84
For example, you can add a Dataverse action or an action that sends email based on the outputs from the trigger.
84
85
85
-
### [Standard](#tab/standard)
86
-
87
-
1. In the [Azure portal](https://portal.azure.com), open your Standard logic app resource.
88
-
89
-
1. On the resource sidebar, under **Workflows**, select **Workflows**, and then select your workflow.
90
-
91
-
1. On the workflow sidebar, under **Tools**, select the designer to open the workflow.
92
-
93
-
1. On the designer, follow the [general steps to add the **Microsoft Dataverse** trigger for your scenario](../add-trigger-action-workflow.md?tabs=standard#add-trigger) to your workflow.
94
-
95
-
This example continues with the trigger named [**When a row is added, modified or deleted**](/connectors/commondataserviceforapps/#when-a-row-is-added,-modified-or-deleted).
96
-
97
-
1. At the prompt, sign in to your Dataverse environment or database.
98
-
99
-
1. In the trigger information box, provide the necessary trigger values.
100
-
101
-
The following example shows the sample trigger:
102
-
103
-
:::image type="content" source="media/dataverse/dataverse-trigger-example.png" alt-text="Screenshot shows Standard workflow designer and example trigger." lightbox="media/dataverse/dataverse-trigger-example.png":::
104
-
105
-
1. When you're done, save your workflow. On the designer toolbar, select **Save**.
106
-
107
-
1. Now add at least one action for your workflow to perform when the trigger fires. For example, you can add a Dataverse action or an action that sends email based on the outputs from the trigger.
108
-
109
-
---
110
-
111
86
## Add a Dataverse action
112
87
113
-
Based on whether you have a Consumption or Standard logic app workflow, follow the corresponding steps:
114
-
115
-
### [Consumption](#tab/consumption)
116
-
117
-
1. In the [Azure portal](https://portal.azure.com), open your Consumption logic app resource.
118
-
119
-
1. On the resource sidebar, under **Development Tools**, select the designer to open the workflow.
88
+
1. In the [Azure portal](https://portal.azure.com), open your logic app workflow in the designer.
120
89
121
-
1.On the designer, follow these [general steps to add the **Microsoft Dataverse** action for your scenario](../add-trigger-action-workflow.md?tabs=consumption#add-action) to your workflow.
90
+
1.Follow the [general steps](../add-trigger-action-workflow.md#add-action) to add the appropriate **Microsoft Dataverse** action for your scenario.
122
91
123
92
This example continues with the action named [**Add a new row**](/connectors/commondataserviceforapps/#add-a-new-row).
124
93
125
94
1. At the prompt, sign in to your Dataverse environment or database.
126
95
127
-
1. In the action information box, provide the necessary action values.
96
+
1. In the action information box, provide the necessary parameter values.
128
97
129
98
The following example shows the sample action:
130
99
131
100
:::image type="content" source="media/dataverse/dataverse-action-example.png" alt-text="Screenshot shows Consumption workflow designer and example action." lightbox="media/dataverse/dataverse-action-example.png":::
132
101
133
102
1. When you're done, save your workflow. On the designer toolbar, select **Save**.
134
103
135
-
1. Continue adding more actions, if you want.
136
-
137
-
### [Standard](#tab/standard)
138
-
139
-
1. In the [Azure portal](https://portal.azure.com), open your Standard logic app resource.
140
-
141
-
1. On the resource sidebar, under **Workflows**, select **Workflows**, and then select your workflow.
142
-
143
-
1. On the workflow sidebar, under **Tools**, select the designer to open the workflow.
144
-
145
-
1. On the designer, follow these [general steps to add the **Microsoft Dataverse** action for your scenario](../create-workflow-with-trigger-or-action.md?tabs=standard#add-action) to your workflow.
146
-
147
-
This example continues with the action named [**Add a new row**](/connectors/commondataserviceforapps/#add-a-new-row).
148
-
149
-
:::image type="content" source="media/dataverse/dataverse-action-example.png" alt-text="Screenshot shows Standard workflow designer and example action." lightbox="media/dataverse/dataverse-action-example.png":::
150
-
151
-
1. When you're done, save your workflow. On the designer toolbar, select **Save**.
152
-
153
-
1. Continue adding more actions, if you want.
154
-
155
-
---
104
+
1. Add more actions if you want.
156
105
157
106
## Test your workflow
158
107
@@ -164,7 +113,7 @@ To run your workflow, follow these steps:
164
113
165
114
## Return rows based on a filter
166
115
167
-
For actions that return rows, such as the **List rows** action, you can use an ODATA query that returns rows based on the specified filter. For example, you can set up the action to return only rows for active accounts.
116
+
For actions that return rows, such as the **List rows** action, use an ODATA query to return rows based on the specified filter. For example, set up the action to return only rows for active accounts.
168
117
169
118
1. On the designer, in the action, open the **Advanced parameters** list, and select the **Filter rows** parameter.
170
119
@@ -183,13 +132,13 @@ For more information, see the following documentation:
183
132
184
133
## Return rows based on a sort order
185
134
186
-
For actions that return rows, such as the **List rows** action, you can use an ODATA query that returns rows in a specific sequence, which varies based on the rows that the action returns. For example, you can set up the action to return rows organized by the account name.
135
+
For actions that return rows, such as the **List rows** action, use an ODATA query to return rows in a specific sequence. The sequence varies based on the rows that the action returns. For example, you can set up the action to return rows organized by the account name.
187
136
188
137
1. On the designer, in the action, open the **Advanced parameters** list, and select the **Sort By** parameter.
189
138
190
139
:::image type="content" source="media/dataverse/dataverse-action-sort-by.png" alt-text="Screenshot shows workflow, a Dataverse action, and Sort By parameter." lightbox="media/dataverse/dataverse-action-sort-by.png":::
191
140
192
-
1. In the **Sort By** parameter that now appears in the action, enter the column name to use for sorting, for example,**name**:
141
+
1. In the **Sort By** parameter that now appears in the action, enter the column name to use for sorting, such as**name**:
193
142
194
143
:::image type="content" source="media/dataverse/dataverse-action-sort-by-column.png" alt-text="Screenshot shows workflow, a Dataverse action, and Sort By parameter with column name." lightbox="media/dataverse/dataverse-action-sort-by-column.png":::
195
144
@@ -208,7 +157,7 @@ For example, suppose that you have a table named **Tasks**. This table has field
208
157
|-------|-----------|-------------|
209
158
| Text field | Single line of text | Requires either a single line of text or dynamic content that has the text data type, for example, these properties: <br><br>- **Description** <br>- **Category**|
210
159
| Integer field | Whole number | Requires either an integer or dynamic content that has the integer data type, for example, these properties: <br><br>- **Percent Complete** <br>- **Duration**|
211
-
| Date field | Date and Time | Requires either a date in MM/DD/YYY format or dynamic content that has the date data type, for example, these properties: <br><br>- **Created On** <br>- **Start Date** <br>- **Actual Start** <br>- **Actual End** <br>- **Due Date**|
160
+
| Date field | Date and Time | Requires either a date in MM/DD/YYYY format or dynamic content that has the date data type, for example, these properties: <br><br>- **Created On** <br>- **Start Date** <br>- **Actual Start** <br>- **Actual End** <br>- **Due Date**|
212
161
| Field that references another entity row | Primary key | Requires both a row ID, such as a GUID, and a lookup type, which means that values from the dynamic content list won't work, for example, these properties: <br><br>- **Owner**: Must be a valid user ID or a team row ID. <br>- **Owner Type**: Must be a lookup type such as `systemusers` or `teams`, respectively. <br><br>- **Regarding**: Must be a valid row ID such as an account ID or a contact row ID. <br>- **Regarding Type**: Must be a lookup type such as `accounts` or `contacts`, respectively. <br><br>- **Customer**: Must be a valid row ID such as an account ID or contact row ID. <br>- **Customer Type**: Must be the lookup type, such as `accounts` or `contacts`, respectively. |
213
162
214
163
For the example **Tasks** table, suppose you use the **Add a new row** action to create a new row that's associated with other entity rows, specifically a user row and an account row. So, in this action, you must specify the IDs and lookup types for those entity rows by using values that match the expected data types for the relevant properties.
@@ -225,7 +174,7 @@ The resulting action looks like the following example:
225
174
226
175
### Calls from multiple environments
227
176
228
-
The Dataverse connector stores information about the logic app workflows that get and require notifications about database entity changes by using the `callbackregistrations` entity in your Dataverse database. If you copy a Dataverse organization, any webhooks are copied too. If you copy your organization before you disable workflows that are mapped to your organization, any copied webhooks also point at the same logic app workflows, which then get notifications from multiple organizations.
177
+
The Dataverse connector stores information about the logic app workflows that get and require notifications about database entity changes by using the `callbackregistrations` entity in your Dataverse database. If you copy a Dataverse organization, any webhooks are automatically copied. If you copy your organization before you disable workflows that are mapped to your organization, any copied webhooks point at the same logic app workflows. These workflows then get notifications from multiple organizations.
229
178
230
179
To stop unwanted notifications, delete the `callbackregistrations` entity from the organization that sends those notifications by following these steps:
231
180
@@ -284,7 +233,7 @@ To stop unwanted notifications, delete the `callbackregistrations` entity from t
284
233
285
234
### Duplicate 'callbackregistrations' entity
286
235
287
-
In Standard workflows, under specific conditions such as instance reallocation or application restart, the Microsoft Dataverse trigger starts a duplicate run, which creates a duplicate `callbackregistrations` entity in your Dataverse database. If you edit a Standard workflow that starts with a Dataverse trigger, check whether this `callbackregistrations` entity is duplicated. If the duplicate exists, manually delete the duplicate `callbackregistrations` entity.
236
+
In Standard workflows, under specific conditions such as instance reallocation or application restart, the Microsoft Dataverse trigger starts a duplicate run. This duplicate run creates a duplicate `callbackregistrations` entity in your Dataverse database. If you edit a Standard workflow that starts with a Dataverse trigger, check whether this `callbackregistrations` entity is duplicated. If the duplicate exists, manually delete the duplicate `callbackregistrations` entity.
0 commit comments