Microsoft Dynamics 365 Component
Query, create, update, or delete Microsoft Dynamics 365 entity records.
Component key: ms-dynamics · · Changelog ↓Description
Microsoft Dynamics 365 is a product line of enterprise resource planning (ERP) and customer relationship management (CRM) intelligent business applications. This component provides the ability to query and modify records within the Microsoft Dynamics 365 platform.
API Documentation
Connections
OAuth 2.0 Client Credentials
key: clientCredentialsThe OAuth 2.0 client credentials flow allows the creation of an Application User to send requests to Dynamics on behalf of an organization. Setting up a client credentials connection is a two-step process:
- Create an "App" in Azure.
- Create an "Application User" in Dynamics.
Prerequisites
- An active Azure subscription with permission to register applications in Azure Portal.
- Microsoft Dynamics 365 administrator access to the Power Platform admin center, including the ability to manage Application Users and assign Security Roles.
Setup Steps
Create An App In Microsoft Azure
- Log in to Azure Portal.
- Select App Registrations.
- Click + New Registration.
- Supported Account Types can be Single Tenant.
- No Redirect URI is necessary.
- Click Register.
- Under API Permissions click + Add A Permission.
- Select Dynamics CRM.
- Check the
user_impersonationpermission. - Click Add Permissions.
- Under API Permissions click Grant Admin Consent For (Tenant) to consent to the requested permissions on behalf of the organization.
- Under Certificates & Secrets click + New Client Secret.
- Provide a description and expiration date for the certificate.
- Take note of the Value (not the Secret ID) of the client secret.
- Returning to the Overview page, take note of Application (Client) ID.
- From the Overview page, click Endpoints and take note of the OAuth 2.0 Token Endpoint (V2).
The Client Secret Value, Client ID, and Token Endpoint will be used in the connection configuration.
Add The App As An App User To Dynamics
- Log in to Power Platform Admin Center.
- Select Environments and choose the appropriate Dynamics environment.
- Select S2S Apps.
- Click + New App User.
- Click + Add An App.
- Choose the app created in Azure portal (above). The app can be located by entering the client ID noted previously.
- Select the Dynamics tenant as the Business Unit.
- Under Security Roles select System Administrator.
- Click Create.
Configure The Connection
Create a connection of type OAuth 2.0 Client Credentials.
- Enter the Token Endpoint noted above as the Token URL.
- Enter the Client ID and Client Secret Value noted above.
- Log in to Dynamics and take note of the Dynamics URL.
- Enter that Dynamics URL as the Web API URL. It should look like
https://REPLACE-ME.crm.dynamics.com/. - Under scopes, enter the Dynamics URL with
.defaultappended to it —https://REPLACE-ME.crm.dynamics.com/.default.
- Enter that Dynamics URL as the Web API URL. It should look like
| Input | Notes | Example |
|---|---|---|
| Client ID | Generated when registering an application in the Azure portal. | |
| Client secret value | Generated when registering an application in the Azure portal. | |
| Scopes | The OAuth 2.0 scope. Use the Dynamics Web API URL with '/.default' appended (e.g., https://my-org.api.crm.dynamics.com/.default). | https://REPLACE-ME.api.crm.dynamics.com/.default |
| Token URL | The OAuth 2.0 token endpoint. This can be found in the Azure portal under the app's 'Endpoints' menu. | https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/oauth2/v2.0/token |
| Web API URL | The organization's Microsoft Dynamics 365 Web API URL. | https://REPLACE-ME.api.crm.dynamics.com/ |
OAuth 2.0 Authorization Code
key: oauth2The OAuth 2.0 authorization code flow allows an end user to grant the integration permission to interact with Dynamics on their behalf.
Prerequisites
- An active Azure Portal account with permission to register applications.
- Access to a Microsoft Dynamics 365 environment.
Setup Steps
- Log in to Azure Portal.
- Select App Registrations.
- Click + New Registration.
- Supported Account Types should be Multi-tenant when end customers will authenticate with their own Dynamics instance, or Single-tenant when authenticating with a single Dynamics instance.
- Under Redirect URI enter
https://oauth2.prismatic.io/callback. - Click Register.
- Under API Permissions click + Add A Permission.
- Select Dynamics CRM.
- Check the
user_impersonationpermission. - Click Add Permissions.
- Additionally, ensure the
offline_accessscope is included in the app registration. It is essential to maintain the OAuth connection and receive refresh tokens. Without it, end users will need to re-authenticate every hour.
- Under Certificates & Secrets click + New Client Secret.
- Provide a description and expiration date for the certificate.
- Take note of the Value (not the Secret ID) of the client secret.
- Returning to the Overview page, take note of Application (Client) ID.
Configure The Connection
Create a connection of type OAuth 2.0 Authorization Code.
- Enter the Client ID and Client Secret noted above.
- Log in to Dynamics and take note of the Dynamics URL.
- Enter that Dynamics URL as the Web API URL. It should look like
https://REPLACE-ME.crm.dynamics.com/. - Under scopes, enter the following, replacing the URL with the Dynamics URL:
https://REPLACE-ME.crm.dynamics.com/user_impersonation offline_access.
- Enter that Dynamics URL as the Web API URL. It should look like
App Verification and Admin Consent
Microsoft requires Azure AD app registrations used in multi-tenant deployments to complete a publisher verification process. This review confirms the app developer's identity, giving end users confidence that they are authorizing a legitimate, verified application.
Azure AD app registrations have two distinct verification concepts that affect how users experience the authentication flow.
Publisher Verification
Complete publisher verification before deploying to end users. Without it, the Microsoft consent screen displays "Unverified" next to the app name. This reduces user trust and may prevent users in organizations with strict Azure AD policies from being able to authorize the app at all.
To verify the publisher:
- Ensure the organization has a Microsoft Partner Network (MPN) account
- In the Microsoft Entra Admin Center, open the app registration
- Under Branding & properties, click Add a verified publisher
- Enter the MPN ID and confirm
Once verified, the consent screen displays the organization name with a verified badge instead of "Unverified."
Admin Consent
Apps requesting application permissions (permissions that act without a signed-in user) or high-privilege delegated permissions require admin consent before any user in a Microsoft 365 tenant can authenticate. Without admin consent, users see a "Need admin approval" error.
A tenant administrator can grant consent using either method:
Method 1 — Admin Consent URL:
Navigate to the following URL, replacing {tenant} with the Directory tenant ID and {client_id} with the Application client ID:
https://login.microsoftonline.com/{tenant}/adminconsent?client_id={client_id}
Method 2 — Microsoft Entra Admin Center:
- Navigate to Microsoft Entra Admin Center → Enterprise applications
- Select the app registration
- Under Permissions, click Grant admin consent for [organization name]
Delegated permissions (user-level) typically do not require admin consent unless they are classified as high privilege. Application permissions always require admin consent. Review the Microsoft Graph permissions reference to identify which permissions require consent.
| Input | Notes | Example |
|---|---|---|
| Authorize URL | The OAuth 2.0 Authorization URL for Microsoft Dynamics 365. | https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize |
| Client ID | Generated when registering an application in the Azure portal. | |
| Client Secret | Generated when registering an application in the Azure portal. | |
| Scopes | A space-delimited set of one or more scopes to get the user's permission to access. | https://REPLACE-ME.crm.dynamics.com/user_impersonation offline_access |
| Token URL | The OAuth 2.0 Token URL for Microsoft Dynamics 365. | https://login.microsoftonline.com/organizations/oauth2/v2.0/token |
| Web API URL | The organization's Microsoft Dynamics 365 Web API URL. | https://my-org.api.crm.dynamics.com/ |
Triggers
New and Updated Records
Checks for new and updated records of a Microsoft Dynamics 365 entity type on a configured schedule. | key: pollChangesTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Filter Expression | The filter expression that used for querying entity collections. | Country_Region_Code eq 'ES' and Payment_Terms_Code eq '14 DAYS' |
| Show New Records | When enabled, newly created records will be included in the trigger output. | true |
| Show Updated Records | When enabled, records updated after the last poll will be included in the trigger output. | true |
Example Payload for New and Updated Records⤓
Webhook
Receive and validate webhook requests from Microsoft Dynamics 365 for manually configured webhook subscriptions. | key: dynamicsWebhookTrigger
| Input | Notes | Example |
|---|---|---|
| Webhook Authentication Key | Optional authentication key for incoming webhook requests. When set, requests must include this value in the '?code' query parameter (Microsoft Dynamics 'Webhook Key' authentication mode). Strongly recommended to prevent unauthorized event spoofing. |
A Microsoft Dynamics 365 webhook can be configured to send information to a flow's webhook URL when server-side events occur (a "Contact" is created, an "Account" is updated, etc.).
How It Works
When a webhook is first registered, Microsoft Dynamics 365 sends a URL validation request with the x-ms-dynamics-request-name header set to URL_VALIDATION. This request is routed to the URL Validation / Heartbeat branch beneath the trigger. The trigger automatically responds with a 200 OK status to confirm the endpoint is reachable.
All subsequent event notifications are routed to the Event branch. The trigger automatically parses the JSON request body and extracts key fields from both the headers and payload, including:
Extracted Fields (5)
- Organization — the Dynamics 365 tenant name (from the
x-ms-dynamics-organizationheader) - Entity Name — the logical name of the entity that triggered the event (from the
x-ms-dynamics-entity-nameheader) - Message Name — the name of the event (e.g.,
Create,Update,Delete) - Input Parameters — the entity data included in the event
- Initiating User ID — the ID of the user whose action triggered the event
Branches
- URL Validation / Heartbeat — the validation handshake. Microsoft Dynamics 365 sends a
URL_VALIDATIONrequest when a webhook is first registered (and periodically thereafter). The trigger auto-responds with a200 OK; no business logic should be added on this branch. - Event — real notifications. All
Create,Update,Delete, and other event messages flow through this branch. Business logic, downstream steps, and routing should be implemented here.
Event Types
Events are configured when registering the webhook step in the Dynamics 365 Plugin Registration Tool. Common events include:
Create— a record is createdUpdate— a record is modifiedDelete— a record is removed
Refer to the Microsoft Dataverse webhook documentation for the complete list of supported messages and filtering options.
Returned Data
Example Payload (Event Branch)
{
"headers": {
"x-request-id": "4af10637-4ea2-e711-8122-000d3aa2331c",
"x-ms-dynamics-organization": "org-name",
"x-ms-dynamics-entity-name": "contact",
"x-ms-dynamics-request-name": "Update"
},
"bodyData": {
"MessageName": "Update",
"InitiatingUserId": "11bb11bb-cc22-dd33-ee44-55ff55ff55ff",
"InputParameters": [
{
"key": "Target",
"value": {
"Attributes": [
{ "key": "firstname", "value": "James" },
{
"key": "contactid",
"value": "6d81597f-0f9f-e711-8122-000d3aa2331c"
}
],
"LogicalName": "contact"
}
}
]
},
"requestId": "4af10637-4ea2-e711-8122-000d3aa2331c",
"organization": "org-name",
"entityName": "contact",
"messageName": "Update",
"initiatingUserId": "11bb11bb-cc22-dd33-ee44-55ff55ff55ff",
"inputParameters": [
{
"key": "Target",
"value": {
"Attributes": [
{ "key": "firstname", "value": "James" },
{
"key": "contactid",
"value": "6d81597f-0f9f-e711-8122-000d3aa2331c"
}
],
"LogicalName": "contact"
}
}
]
}
Notes
- Webhook registration and step configuration are performed using the Plugin Registration Tool in Dynamics 365.
- When the HTTP payload exceeds 256 KB, the
x-ms-dynamics-msg-size-exceededheader is included and certain context properties (ParentContext,InputParameters,PreEntityImages,PostEntityImages) may be removed from the payload.
Example Payload for Webhook⤓
Data Sources
Select Attribute
Selects from all attributes for a specific entity in the Dynamics 365 CRM instance. | key: attributes | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
Select Entity
Selects from all available entities in the Dynamics 365 CRM instance. | key: entities | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Include Custom Entities | When true, includes custom entities in the result. | true |
| Top Level Only | When true, includes only top-level entities and excludes child entities. | false |
Select Entity Objects
Returns a configurable subset of Dynamics 365 CRM entity types and their attributes for object selection. | key: getEntitiesMetaData | type: objectSelection
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Default Selected Entity Types | The names of the Entity Types to default in a selected state. | Account |
| Include All Custom Entity Types | When true, will include all Custom Entity Types, even those not included in Record Type Name Filter. | true |
| Include Only Top Level Record Types | When true, will include only Entity Types that are top-level, meaning not subtypes of other Types, regardless of other filters. | false |
| Entity Type Filter | The names or labels of the Entity Types to include; if blank then all types are included. Uses case-insensitive matching. | Account |
Select Entity Type
Lists all available entity types in the Dynamics 365 CRM instance. | key: entityTypes | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Include Custom Entities | When true, includes custom entities in the result. | true |
| Top Level Only | When true, includes only top-level entities and excludes child entities. | false |
Actions
Create Attribute
Creates a CRM attribute on an entity. | key: createAttribute
| Input | Notes | Example |
|---|---|---|
| Attribute Body | The JSON payload describing the attribute to create or update. | |
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
Example Payload for Create Attribute⤓
Create Entity
Creates a new Microsoft Dynamics 365 CRM entity record. | key: createEntity
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Dynamic Values | ||
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Field Value | The names of the fields and their values to use when creating/updating a record. |
Example Payload for Create Entity⤓
Delete Entity
Deletes the specified Microsoft Dynamics 365 CRM entity record. | key: deleteEntity
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
Example Payload for Delete Entity⤓
Get Attribute
Retrieves a single CRM attribute. | key: getAttribute
| Input | Notes | Example |
|---|---|---|
| Attribute Key | The Attribute Metadata id. | 54de467f-35f5-4d2e-b72c-25f8145611ef |
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Expand Property Name | The OData $expand properties to include linked records inline. | |
| Field Name | The OData $select fields to include in the result. Leave empty to return all fields. |
Example Payload for Get Attribute⤓
Get Current User
Retrieves information about the currently logged-in CRM user. | key: getCurrentUser
| Input | Notes | Example |
|---|---|---|
| Connection |
Example Payload for Get Current User⤓
Get Entities Metadata
Retrieves a configurable subset of Dynamics 365 CRM entity types and their attributes. | key: getEntitiesMetaData
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Default Selected Entity Types | The names of the Entity Types to default in a selected state. | Account |
| Include All Custom Entity Types | When true, will include all Custom Entity Types, even those not included in Record Type Name Filter. | true |
| Include Only Top Level Record Types | When true, will include only Entity Types that are top-level, meaning not subtypes of other Types, regardless of other filters. | false |
| Entity Type Filter | The names or labels of the Entity Types to include; if blank then all types are included. Uses case-insensitive matching. | Account |
Example Payload for Get Entities Metadata⤓
Get Entity
Retrieves a single Microsoft Dynamics 365 CRM entity record. | key: getEntity
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Expand Property Name | The OData $expand properties to include linked records inline. | |
| Field Name | The OData $select fields to include in the result. Leave empty to return all fields. |
Example Payload for Get Entity⤓
Get Entity Metadata
Retrieves the definition of a Microsoft Dynamics 365 CRM entity. | key: getEntityMetaData
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Use Logical Name for Lookup | When true, looks up the entity by its logical name (e.g., 'account'). When false, looks up by entity set name. | true |
Example Payload for Get Entity Metadata⤓
List Attributes
Lists all attributes for a specific entity in the Dynamics 365 CRM instance. | key: listAttributesAction
| Input | Notes | Example |
|---|---|---|
| Attribute Type | The CRM attribute type to filter by, e.g., 'Money', 'String', 'Picklist'. | String |
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Include Entity Details | When true, includes additional metadata such as description, ownership type, and validity flags. | false |
Example Payload for List Attributes⤓
List Entities
Lists all available entities in the Dynamics 365 CRM instance with detailed metadata. | key: listEntitiesAction
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Include Custom Entities | When true, includes custom entities in the result. | true |
| Include Entity Details | When true, includes additional metadata such as description, ownership type, and validity flags. | false |
| Top Level Only | When true, includes only top-level entities and excludes child entities. | false |
Example Payload for List Entities⤓
List Entity Types
Retrieves a paginated list of entity types available in the Microsoft Dynamics 365 environment. | key: listEntities
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Fetch All | When true, automatically fetches all pages of results using pagination. | false |
| Max Page Size | Maximum number of entities to return per page (1-5000). | 100 |
| Next Link | The @odata.nextLink URL from a previous response to get the next page of results. |
Example Payload for List Entity Types⤓
Query Attributes
Queries CRM attributes that satisfy the filter expression. | key: queryAttributes
| Input | Notes | Example |
|---|---|---|
| Attribute Type | The CRM attribute type to filter by, e.g., 'Money', 'String', 'Picklist'. | String |
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Expand Property Name | The OData $expand properties to include linked records inline. | |
| Field Name | The OData $select fields to include in the result. Leave empty to return all fields. | |
| Filter Expression | The filter expression that used for querying entity collections. | Country_Region_Code eq 'ES' and Payment_Terms_Code eq '14 DAYS' |
Example Payload for Query Attributes⤓
Query Entities
Queries Microsoft Dynamics 365 CRM entity records that satisfy the filter expression. | key: queryEntities
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Expand Property Name | The OData $expand properties to include linked records inline. | |
| Fetch All | When true, automatically fetches all pages of results using pagination. | false |
| Field Name | The OData $select fields to include in the result. Leave empty to return all fields. | |
| Filter Expression | The filter expression that used for querying entity collections. | Country_Region_Code eq 'ES' and Payment_Terms_Code eq '14 DAYS' |
| Next Page ID | The pagination cookie returned in 'oDataNextLink' from a previous request. Leave empty for the first page. | |
| Order By Field Name | The OData $orderby fields. Suffix with 'desc' for descending order, e.g., 'createdon desc'. | |
| Records Per Page | The number of record to retrieve per page. | 100 |
Example Payload for Query Entities⤓
Raw Request
Sends a raw HTTP request to Microsoft Dynamics 365. | key: rawRequestV2
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | Input the path only (/api/data/v9.2/accounts?$select=name), The base URL is already included (https://my-org.api.crm.dynamics.com). For example, to connect to https://my-org.api.crm.dynamics.com/api/data/v9.2/accounts?$select=name, only /api/data/v9.2/accounts?$select=name is entered in this field. | /api/data/v9.2/accounts?$select=name |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
Example Payload for Raw Request⤓
Raw Request (Deprecated)
Sends a raw HTTP request to Microsoft Dynamics 365 CRM. | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | Input the path only (/api/data/v9.2/accounts?$select=name), The base URL is already included (https://my-org.api.crm.dynamics.com). For example, to connect to https://my-org.api.crm.dynamics.com/api/data/v9.2/accounts?$select=name, only /api/data/v9.2/accounts?$select=name is entered in this field. | /accounts?$select=name |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
Example Payload for Raw Request (Deprecated)⤓
Run Batch Operations
Performs multiple create, update, or delete operations on Microsoft Dynamics 365 CRM entity records. | key: batchEntityActions
| Input | Notes | Example |
|---|---|---|
| Batch Actions | A list of up to 1000 create, update or delete actions to perform. Each action must have a 'collection' and an 'action' (create, update or delete). Create or update actions must also have 'data' and can include a boolean 'returnRepresentation' which determines if the full record should be returned after being created or updated. Update or delete actions must also have an entity key. | |
| Connection |
Example Payload for Run Batch Operations⤓
Run Fetch XML Query
Executes a Fetch XML query against the Microsoft Dynamics 365 CRM instance. | key: fetchXml
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Fetch All | When true, automatically fetches all pages of results using pagination. | false |
| Impersonate User ID | Specifies the GUID of a user to impersonate when executing the query. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Include Annotations | The 'Prefer: odata.include-annotations' header value, e.g., '*' to include all annotations or 'OData.Community.Display.V1.FormattedValue' for formatted values only. | * |
| Next Page ID | The pagination cookie returned in 'oDataNextLink' from a previous request. Leave empty for the first page. | |
| Page Number | The 1-based page number to retrieve when iterating through Fetch XML query results. | 1 |
| XML Query | An XML query string to use as a Fetch query in Microsoft Dynamics 365. |
Example Payload for Run Fetch XML Query⤓
Update Attribute
Updates an existing CRM attribute on an entity. | key: updateAttribute
| Input | Notes | Example |
|---|---|---|
| Attribute Body | The JSON payload describing the attribute to create or update. | |
| Connection | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
Example Payload for Update Attribute⤓
Update Entity
Updates a Microsoft Dynamics 365 CRM entity record. | key: updateEntity
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Dynamic Values | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Field Value | The names of the fields and their values to use when creating/updating a record. |
Example Payload for Update Entity⤓
Upsert Entity
Upserts a Microsoft Dynamics 365 CRM entity record. | key: upsertEntity
| Input | Notes | Example |
|---|---|---|
| Connection | ||
| Dynamic Values | ||
| Entity ID | The unique identifier (GUID) of the entity record to operate on. | 7d577253-3ef0-4a0a-bb7f-8335c2596e70 |
| Entity Type | The type of Entity to query, usually a pluralized name. | Contacts |
| Field Value | The names of the fields and their values to use when creating/updating a record. |
Example Payload for Upsert Entity⤓
Changelog
2026-05-28
Added New and Updated Records polling trigger that checks for changes to any Microsoft Dynamics 365 entity via the modifiedon OData filter. Records are partitioned into created and updated buckets based on each record's createdon/modifiedon timestamps
2026-05-13
Various modernizations and documentation updates.
2026-05-14
Added bulk pagination support to list actions across entities, entity types, and queries, allowing users to fetch all pages of results in a single action invocation
2026-04-30
Updated spectral version.
2026-04-07
Added trigger documentation and global debug support across all actions for improved troubleshooting.
2026-03-31
Various modernizations and documentation updates.