Microsoft Graph and Dataverse
By Emil Björk · Microsoft business apps consultant, Gothenburg
How Microsoft Graph connects Microsoft 365 data to Dynamics 365 — Graph connectors, indexing Dataverse content, and the Copilot enablement story.
On this page (9)
Microsoft Graph is the API surface that exposes data and intelligence across Microsoft 365 — users, groups, calendars, mail, files, Teams chats, meeting recordings, and increasingly external data via Graph connectors. For Dynamics 365 customers, Graph is the bridge that brings Dataverse content into the broader Microsoft 365 experience — most importantly, into Microsoft 365 Copilot.
The Graph data model
Microsoft Graph organises Microsoft 365 data under a unified API:
- Users — identity, profile, roles.
- Mail, calendar, contacts — Exchange Online data.
- Files — OneDrive and SharePoint documents.
- Teams — chats, channels, meetings, recordings.
- Tasks — To-Do and Planner.
- Insights — relationships derived across data (who works with whom, what's trending).
- Search — unified search index across the above.
Graph connectors
External data — including Dataverse — can be indexed into Microsoft Graph via Graph connectors. The connector pulls data on a schedule, transforms it into Graph-indexable format, and pushes it into the search index. Once indexed:
- The data appears in Microsoft Search (the search box across Microsoft 365 apps).
- Copilot can ground its responses on the indexed content.
- The data is available across all Microsoft 365 surfaces — Outlook, Word, Teams, the Copilot pane.
Dataverse-to-Graph indexing
Microsoft ships a Dataverse connector for Graph that indexes selected Dataverse tables into the Graph index. Configuration:
- Pick which tables to index.
- Pick which columns to include.
- Configure schedule (typically daily or hourly).
- Set the result-display format — title, summary, URL, icon.
Once configured, the indexed Dataverse content surfaces in:
- Microsoft Search results — when a user searches in Microsoft 365, indexed Dataverse records appear alongside emails, files, Teams chats.
- Copilot grounding — Copilot considers indexed Dataverse content when answering questions like "what's the latest on Customer X?".
- Office app surfacing — references to indexed Dataverse records can appear in document drafting, email composition, meeting prep.
Why this matters for Dynamics 365
Without Graph indexing, Dataverse data lives in its own silo — accessible through Dynamics 365 apps, but invisible to a user working in Outlook, Word, or asking Copilot a general question. With Graph indexing, the customer record / opportunity / case is part of the user's broader Microsoft 365 knowledge surface.
Use cases.
- Outlook composition — drafting an email to a customer, Copilot pulls in recent CRM activity from the Graph-indexed Dataverse content.
- Document drafting — writing a proposal in Word, Copilot suggests content from indexed opportunity records.
- Meeting prep — Copilot summarises what's happening with a customer ahead of a meeting, drawing on indexed Dataverse records.
- Cross-system search — a user searches "Contoso Q3 contract" and gets the email thread, the Word doc, the OneDrive folder, and the Dataverse opportunity all in one search result.
Beyond Dataverse — F&O and Business Central
Graph connectors exist (or are planned) for indexing F&O and Business Central data too. The end state is unified Microsoft 365 search and Copilot grounding across all Dynamics 365 products.
Security
Graph indexing respects the source system's security:
- Users only see indexed Dataverse content they have permission for in Dataverse.
- The connector pushes data trimmed to public-or-shared records; per-user filtering happens at search-time.
This is critical for sensitive data: indexing into Graph doesn't expose data to users who shouldn't see it in the source system.
Compliance
Indexed data flows through Microsoft 365 services and is subject to:
- Data residency — Graph index resides in the tenant's region.
- Retention policies — Microsoft Purview can apply retention to indexed content.
- Compliance certifications — same as Microsoft 365.
Beyond search and Copilot
Microsoft Graph also exposes APIs that Dynamics 365 itself uses:
- Email tracking through Exchange Online — server-side sync between Dataverse and Exchange uses Graph APIs.
- Calendar integration — meeting invitations to/from Dataverse contacts.
- Teams integration — surfacing Dataverse records in Teams via Graph-based shared experiences.
Common pitfalls.
- Indexing too much — indexing every Dataverse table without filtering produces noise in search results. Index curated tables and columns.
- Stale index — connectors that haven't refreshed in days produce out-of-date search results. Monitor.
- Wrong indexing configuration — wrong title field or wrong URL pattern makes results unusable.
Operational reality
Graph integration is increasingly the strategic direction. Configure it for at least your major Dataverse tables; the user experience improvement compounds.
Further reading
Related guides
- Dataverse row-level security for Entra ID B2B guest usersHow to give partners, contractors, and customers direct Dynamics 365 access as Entra B2B guests without exposing more than their own rows — licensing.
- Microsoft Graph connectors for Dynamics 365How Graph connectors index Dynamics 365 and Business Central data into Microsoft Search and Microsoft 365 Copilot — what they're for, how they work.
- Azure API Management in front of DataverseHow API Management acts as a façade for Dynamics 365 APIs — rate limiting, authentication, transformation, observability, and developer portal.
- Batch operations in the Dataverse Web APIHow to make multiple Dataverse Web API calls in one HTTP round-trip — $batch requests, change sets, and the performance gains at scale.
- FetchXML vs OData in DataverseTwo query languages for Dataverse — what each does, performance and capability differences, and when to choose which.
Browse every guide in Integrations or just API & identity.
Was this helpful?
Signals which guides land and which need work. No account, no comment box — corrections go through the contact page.
Spot something wrong or want a topic covered? Send a correction or a topic request — both are welcome.