DatriseAI-first ETL

Source connector

Dynamics 365 connector

Dynamics 365 integration for databases, warehouses and BI tools

Microsoft enterprise CRM and ERP suite. Datrise captures Microsoft Dynamics 365 entities such as accounts, opportunities, activities, and enterprise CRM process data, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.

The Microsoft Dataverse Web API v9.2 (OData v4.0) for Dynamics 365 authenticates with OAuth 2.0, incremental runs key on modifiedon column via $filter, or the dedicated change-tracking API (Prefer: odata.track-changes) which returns a deltaLink, and Dynamics 365 caps calls at Service protection limits per web server over a 5-minute sliding window: 6,000 requests, 1,200,000 ms combined execution time, and 52 concurrent requests.

Of the 4 objects, 3 sync as upserts keyed on the primary key and 1 as append-only streams, so each incremental run moves only what changed since the last watermark. Every object lands in its own table (for example `microsoft_dynamics_accounts`) with a schema derived from the Dynamics 365 API rather than a flattened CSV, in any of the 43 supported destinations.

Datrise is in early access: pick a destination below to open the Dynamics 365 pipeline page, and join the waitlist to get the Dynamics 365 connector (CRM) with guided onboarding.

Incremental syncSchema-aware mapping43 destinations available

What Microsoft Dynamics 365 data Datrise extracts

Each object lands in its own typed table. Sync mode is derived from the object: history-style objects append, everything else upserts.

ObjectLanding tableSync mode
accountsmicrosoft_dynamics_accountsUpsert by primary key, incremental on updated-at
opportunitiesmicrosoft_dynamics_opportunitiesUpsert by primary key, incremental on updated-at
activitiesmicrosoft_dynamics_activitiesAppend-only, incremental by timestamp
enterprise CRM process datamicrosoft_dynamics_enterprise_crm_process_dataUpsert by primary key, incremental on updated-at

Microsoft Dynamics 365 API: setup facts for the connector

Verified against the vendor documentation on 2026-09-02. Unknown values are left blank rather than guessed.

APIMicrosoft Dataverse Web API v9.2 (OData v4.0) for Dynamics 365
AuthenticationOAuth 2.0 — Microsoft Entra ID (Azure AD) OAuth 2.0 app registration; client-credentials or authorization-code flow against the environment's resource URL.
Paginationtoken — Opaque @odata.nextLink continuation URL; without $top or a Prefer: odata.maxpagesize header, Dataverse silently caps results at 5,000 rows for standard tables (500 for elastic tables). $skip is not supported.
Rate limitService protection limits per web server over a 5-minute sliding window: 6,000 requests, 1,200,000 ms combined execution time, and 52 concurrent requests
Incremental cursormodifiedon column via $filter, or the dedicated change-tracking API (Prefer: odata.track-changes) which returns a deltaLink — Change tracking must be explicitly enabled per table before a client can request a deltaLink; it then returns new/updated rows followed by deleted row IDs in the same result set.
WebhooksYes — Dataverse Webhooks (registered via the Plugin Registration Tool on table events; call an external endpoint synchronously in the platform pipeline)
Bulk exportYes — $batch operations (Web API) and ExecuteMultipleRequest (SDK), typically up to 1,000 operations per batch
Deletes detectableYes — Change tracking returns deleted rows in the same collection as new/updated rows, appended after them and marked as removed items.

Official API reference

What bites when replicating Microsoft Dynamics 365

  • $skip is an unsupported OData query option in Dataverse; requesting it fails outright, so paging must use @odata.nextLink instead.
  • Without $top or Prefer: odata.maxpagesize, Dataverse quietly truncates results at 5,000 rows for standard tables (500 for elastic tables) rather than returning an error.
  • The 6,000-requests-per-300-seconds service protection limit is enforced per web server, not per environment, so requests spread across multiple concurrent connections can exceed the nominal limit before a 429 appears.
  • Change tracking must be turned on per table (ChangeTrackingEnabled) before a client can use Prefer: odata.track-changes; tables without it ignore the header silently instead of erroring.

Compare this against every other documented API

Popular destinations for Microsoft Dynamics 365

Choose a destination below to open the ready pipeline page.

  • A
    Airtable

    Relational spreadsheet destination for ops and go-to-market teams.

    View pipeline
  • A
    Amazon Athena

    Serverless SQL over S3 data lake tables.

    View pipeline
  • A
    Amazon DynamoDB

    Serverless key-value and document store on AWS.

    View pipeline
  • A
    Amazon QuickSight

    AWS serverless BI with SPICE and embedded analytics.

    View pipeline
  • A
    Amazon Redshift

    AWS petabyte-scale warehouse with Spectrum.

    View pipeline
  • A
    Amazon S3 Data Lake

    Object storage landing zone for parquet and snapshots.

    View pipeline
  • A
    Apache Superset

    Open-source BI for SQL exploration, charts, and dashboard publishing.

    View pipeline
  • A
    Azure Data Lake Storage

    ADLS Gen2 object storage for analytics workloads.

    View pipeline
  • A
    Azure Synapse

    Microsoft analytics workspace with SQL pools.

    View pipeline

Microsoft Dynamics 365 connector FAQ

What Dynamics 365 data does the connector extract?
4 objects: accounts, opportunities, activities and enterprise CRM process data. Each lands in its own table with types preserved; history-style objects (1: activities) load as append-only streams.
Is the Dynamics 365 integration incremental?
Yes. After the initial full load, every run reads only records changed since the last watermark (updated-at or event timestamp) and applies an upsert or an append depending on the object.
Where can I load Dynamics 365 data?
Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each Dynamics 365 → destination pair has its own page with the object-to-table mapping.

Related CRM sources

Other sources in the same category, each with its own connector page.

Early access

Launch your Microsoft Dynamics 365 pipeline with guided onboarding

Join the waitlist to get priority access for Microsoft Dynamics 365 integrations with guided setup, schema-aware mapping, and production-grade incremental sync.