<!-- Dynamics 365 -->
<!-- canonical: https://yres.eu/nl/wiki/integraties/bronnen/dynamics-365 -->
# Dynamics 365

**Categorie:** Directe koppeling

Microsoft Dynamics 365 (Business Central / Dataverse) wordt als **OData-bron** gekoppeld. Je kiest deze bron via de preset **Dynamics 365** in de wizard *Bron toevoegen*; het verbindingsadres en het token-adres worden grotendeels automatisch opgebouwd uit je tenant en bedrijf.

:::caution OAuth2-support in ontwikkeling
De OAuth2-flow wordt op dit moment **nog niet uitgevoerd**. De bron wordt opgeslagen
als kaal **OData**-type: bij het deployen schrijft Yres alleen de http-url (en
eventuele basic-credentials) naar de Key Vault, en de OData-pipelines doen geen
token-flow. Het wizard-formulier toont al OAuth-velden (tenant, client ID/secret,
scope, grant type), maar de deploy verwerkt die nog niet. Volledige
OAuth2-ondersteuning voor Dynamics 365 is **in ontwikkeling**.
:::

## Verwachte input

Naast de gedeelde wizardvelden (**bronnaam**, **integration runtime**, **inloggegevens identiek voor alle omgevingen?**, **verloopdatum inloggegevens**, **tags**) vul je voor Dynamics 365 de volgende velden in:

| Veld | Toelichting |
|---|---|
| **URL** | _Alleen-lezen._ Wordt automatisch opgebouwd (Business Central OData V4) op basis van **tenant** + **bedrijfsnaam**. |
| **Access token URL** | _Alleen-lezen._ Wordt opgebouwd als `https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token`. |
| **Tenant ID** | De directory-/tenant-ID van je Microsoft Entra ID. |
| **Company name** (bedrijfsnaam) | De naam van het Business Central-bedrijf dat je wilt ontsluiten; wordt in de OData-URL verwerkt. |
| **Client ID** | De applicatie-(client-)ID van de geregistreerde app. |
| **Client secret** | Het client secret van de app-registratie (eenmalig zichtbaar bij aanmaken). |
| **Scope** | De OAuth-scope voor de tokenaanvraag. |
| **Grant Type** | `Client Credentials` of `Authorization Code`. Bij **Authorization Code** verschijnt een extra veld **Refresh token**. |

Vast ingestelde (verborgen) parameters: paginatie `paginationType=BodyUrl` met `body_url=@odata.nextLink` (Yres volgt automatisch de `@odata.nextLink`-paginering van de OData-feed).

**Authenticatiemethode:** het formulier vraagt OAuth2-gegevens van een Azure AD / Microsoft Entra ID service principal (client credentials of authorization-code met refresh token), maar de koppeling draait momenteel als **kale OData-verbinding zonder token-flow** — zie de waarschuwing hierboven.

**Integration runtime:** standaard de cloud-runtime **`AutoResolveIntegrationRuntime`**. Een self-hosted IR is niet nodig, omdat de OData-endpoints publiek via internet bereikbaar zijn.

**Opslag van geheimen:** Yres bewaart nooit zelf wachtwoorden of secrets. Bij de huidige OData-deploy wordt alleen de **http-url** (en eventuele basic-credentials) als secret in de **Azure Key Vault** van je eigen omgeving gezet, volgens het patroon `adf-{bronnaam}-{suffix}`; de linked service in Azure Data Factory verwijst naar die secrets. De OAuth-velden uit het formulier worden nog niet naar Key Vault weggeschreven.

## Voorbereiding

- **App registreren in Microsoft Entra ID** — Registreer in het Azure-portaal → **App registrations** een applicatie. Op *Overview* vind je de **client ID** en de **tenant ID**.
- **Client secret aanmaken** — Maak onder **Certificates & secrets** een **client secret** aan en kopieer dit direct (het is later niet meer zichtbaar).
- **Rechten op Dynamics CRM/Dataverse** — Wijs de app de benodigde API-permissies toe voor Dynamics CRM/Dataverse (bijv. `user_impersonation`) met admin-consent.
- **Bedrijf en tenant** — Houd de **tenant ID** en de **bedrijfsnaam** (Business Central company) bij de hand; deze bepalen samen de automatisch opgebouwde OData-URL.

## Load-types en delta

Dynamics 365 wordt als OData-bron ontsloten. Metadata-discovery verloopt via de standaard `GetMetaData`-pipeline; daarna stel je per tabel het load-type en de eventuele delta-/sleutelkolommen in zoals bij andere OData-bronnen. De OData-feed wordt automatisch gepagineerd via `@odata.nextLink`.

Officiële docs: [Register an app with Microsoft Entra ID (Microsoft Dataverse) — Microsoft Learn](https://learn.microsoft.com/en-us/power-apps/developer/data-platform/walkthrough-register-app-azure-active-directory).

---

**Zie ook:** [Integratiecatalogus](https://yres.eu/nl/wiki/integraties/catalogus) · [Alle databron-vereisten](https://yres.eu/nl/wiki/referentie/databron-vereisten) · [Integraties — overzicht](https://yres.eu/nl/wiki/integraties/overzicht)
