Microsoft Dynamics 365
ERPRead, create, update, and delete records in any Dataverse table behind Dynamics 365, and run FetchXML queries for aggregations and complex joins.
What This Integration Enables
Agents work against any Dataverse table through one generic set of operations. They read and write records (List Records, Get Record, Create Record, Update Record, Delete Record) against a common entity set from the dropdown (Accounts, Contacts, Leads, Opportunities, Cases, Tasks) or any table's plural entity set name, including custom tables. Create and update support lookup relationships through the `@odata.bind` convention, so an agent can set who a record belongs to, not just its fields. Execute FetchXML Query runs aggregations and joins for reporting and downstream logic. Who Am I validates the connection and resolves the signed-in user. Because the entity set is a parameter, one connector reaches Sales, Customer Service, and any custom Dynamics app an organization runs, which makes it the layer that keeps Dynamics aligned with the systems around it.
Without FlowRunner
With FlowRunner
Use Case Scenarios
Inbound Lead Capture
An inbound sales inquiry arrives. The agent reads the contact and company, runs List Records to check for an existing account, then Create Record to add a lead in the `leads` entity set. It uses Update Record with `@odata.bind` to link the lead to the originating contact, so the record arrives complete and connected instead of as an orphaned row someone has to reconcile later.
Pipeline Reporting
A weekly pipeline report is due. The agent runs List Records or Execute FetchXML Query to pull open opportunities with the aggregations the report needs, then writes the result into a workbook or sheet for distribution. The pipeline view is assembled from live Dynamics data on a schedule, not exported and reshaped by hand each Monday.
Deal Close Notification
A deal closes upstream. The agent runs Update Record to set the opportunity status, then posts the win to the sales channel in [Slack](/integrations/slack) with the account and value. The team hears about the close as it happens, and Dynamics reflects it without a rep remembering to update the stage.
Human-in-Loop Highlight
Creating and enriching records is safe to automate. Marking a large opportunity Closed Won changes a forecast and can trigger commission and revenue recognition downstream, so that is where an agent should stop and ask. Human-in-the-loop is the pattern where the agent pauses on the consequential write, gathers the context, and resumes on a human's answer. When a workflow is about to run Update Record to set an opportunity to Closed Won and the deal value crosses a configurable threshold, the agent does not change the stage on its own. It presents the account, the amount, and the deal history, then routes to the sales lead in [Slack](/integrations/slack): "Opportunity for Contoso, $120,000, is about to be set to Closed Won by an automated flow. Confirm the close, or hold for review?" The lead decides. On approval, the agent updates the record and logs who approved it. Routine stage moves flow through; the ones that move the number get a human.
Agent Capabilities
7 actionsConnection
1- Who Am I Resolves the signed-in user and validates the Dataverse connection. Used as a lightweight connection check.
Records
5- List Records Lists records from any Dataverse entity set with OData filters and paging.
- Get Record Retrieves a single record by ID from a chosen entity set.
- Create Record Creates a record in any entity set, including lookup relationships via `@odata.bind`.
- Update Record Updates a record by ID, with an optional upsert to create it when missing.
- Delete Record Deletes a record by ID from a chosen entity set.
Queries
1- Execute FetchXML Query Runs a FetchXML query for aggregations and complex joins across tables. Used for reporting and downstream workflow logic.
Start building with Microsoft Dynamics 365
$100 in credits. No card required. Connect in minutes.