InTouch Hub · Blue Isle Software

Dynamics 365

Read and create Microsoft Dynamics 365 records — accounts, contacts, leads and opportunities — through the Dataverse Web API.

Provided free and as is, without warranty of any kind — including merchantability, fitness for a particular purpose, and the accuracy or completeness of any result. See the licence. You are responsible for checking what this produces before relying on it.

crm-salesdynamicsstatus

Dynamics 365 Tool

Read and create Dynamics 365 CRM data — accounts, contacts, leads, opportunities — via the Dataverse Web API.

Tool ID

dynamics-crm

Credential Required

Yes — a server-refreshed oauth credential (auth mode: oauth_user). The InTouch server resolves and refreshes the linked OAuth credential and hands the tool a live access token; the tool never refreshes or stores tokens itself. All requests go to https://<org>.crm.dynamics.com/api/data/v9.2 with Authorization: Bearer <access_token>.

Credential Properties

Property Type Default Description
client_id string OAuth app client ID (the Microsoft Entra app registration)
client_secret string OAuth app client secret (if required on refresh)
token_url string Provider OAuth token endpoint — used to refresh
access_token string Required. Current access token — kept fresh by the server; do not edit by hand
refresh_token string Refresh token; enables automatic server-side refresh
token_type string Bearer Token type
scope string Granted OAuth scopes (space-separated)
expires_at string Access-token expiry in epoch seconds (0 = non-expiring)

The Dataverse org itself is not part of the credential — each task supplies the org input (forms the host <org>.crm.dynamics.com).

Operations

1. list_accounts — List accounts

Lists CRM accounts. Calls GET /accounts.

Properties:

Property Type Default Description
operation string (enum) Required. One of: list_accounts, get_account, list_contacts, list_leads, list_opportunities, create_account
org string Required. Dataverse org name — forms the host {org}.crm.dynamics.com (e.g. contoso)
query string OData query params as a JSON object string, e.g. {"$top": 10, "$select": "name,telephone1"}

Published Outputs: - result — the JSON response body - status — HTTP status code

2. get_account — Get one account

Fetches a single account by GUID. Calls GET /accounts({id}).

Properties:

Property Type Default Description
operation string (enum) Required.
org string Required. Dataverse org name
id string Required for this operation. Account GUID
query string OData query params as a JSON object string

Published Outputs: - result — the JSON response body - status — HTTP status code

3. list_contacts — List contacts

Lists CRM contacts. Calls GET /contacts.

Properties:

Property Type Default Description
operation string (enum) Required.
org string Required. Dataverse org name
query string OData query params as a JSON object string

Published Outputs: - result — the JSON response body - status — HTTP status code

4. list_leads — List leads

Lists CRM leads. Calls GET /leads.

Properties:

Property Type Default Description
operation string (enum) Required.
org string Required. Dataverse org name
query string OData query params as a JSON object string

Published Outputs: - result — the JSON response body - status — HTTP status code

5. list_opportunities — List opportunities

Lists CRM opportunities. Calls GET /opportunities.

Properties:

Property Type Default Description
operation string (enum) Required.
org string Required. Dataverse org name
query string OData query params as a JSON object string

Published Outputs: - result — the JSON response body - status — HTTP status code

6. create_account — Create an account

Creates a new CRM account. Calls POST /accounts with a JSON body.

Properties:

Property Type Default Description
operation string (enum) Required.
org string Required. Dataverse org name
body string Account JSON object string, e.g. {"name": "Contoso Ltd"}
query string OData query params as a JSON object string

Published Outputs: - result — the JSON response body - status — HTTP status code

Self-Contained JAR

The jar bundles all runtime dependencies; only intouch-tool-api is provided by the server.

Publishes

The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.