Important changes (deprecations) coming in Power Apps, Power Automate, and model-driven apps in Dynamics 365
The announcements and deprecations described in this topic apply to Power Apps, Power Automate, and model-driven apps in Dynamics 365 (Dynamics 365 Sales, Dynamics 365 Customer Service, Dynamics 365 Marketing, Dynamics 365 Field Service, and Dynamics 365 Project Service Automation).
Administrators and IT professionals should use this information to prepare for future releases. This article was first published on June 27, 2017.
"Deprecated" means we intend to remove the feature or capability from a future major release. The feature or capability will continue to work and is fully supported until it is officially removed. This deprecation notification can span a few years. After removal, the feature or capability will no longer work. We are notifying you now so you have sufficient time to plan and update your code before the feature or capability is removed.
Dynamics 365 Connector is deprecated
Effective May 5, 2020 the Dynamics 365 connector used for Flows, Logic Apps and Canvas Apps is officially deprecated. We recommend that you do not create new connections using this connector.
Rather than use the Dynamics 365 connector, the Common Data Service (Current Environment) connector should be your first choice if you can use it. You may not be able to use the Common Data Service (Current Environment) connector in every situation today because of the following limitations:
- It is not available in Logic Apps.
- It does not enable cross-tenant or cross environment connections.
- It cannot be used for canvas apps that use the Power Apps for Windows client.
- Coming soon:
- It will soon be available within Flows that are created outside the context of a solution.
- It will soon be available on US Government cloud.
If you cannot use the Common Data Service (Current Environment) connector, you should use the Common Data Service connector. This connector has all the capabilities of the Dynamics 365 connector, and includes several improvements that increase reliability.
The Common Data Service (Current Environment) connector represents the future for connections using Common Data Service. This includes Dynamics 365 apps using Common Data Service. Work is underway to make this connector the only connector you will need. But at the current time, the previously mentioned limitations mean that you can't use it in all places where the Dynamics 365 connector or Common Data Service Connector can be used today.
At this time, there is no requirement to convert canvas apps, flows, or logic apps to stop using the Dynamics 365 connector because of the known blocking limitations. But you should stop creating new connections with the Dynamics 365 connector and convert them if you can.
|Flows||If you can convert existing Flows to use the Common Data Service (Current Environment) connector we recommend you do so.|
|Logic Apps||We recommend you stop creating new connections using the Dynamics 365 connector and use the Common Data Service Connector instead.|
|Canvas Apps||Canvas apps created after November 2019 should not have used the connector infrastructure by default. These apps should automatically connect to the Common Data Service instance within the same environment.
If you have an canvas app that used the Dynamics 365 connector, find information about how to convert them here: Converting canvas apps with the Dynamics 365 connector.
Forward looking guidance
When the Common Data Service (Current Environment) connector represents a viable replacement for all situations where the Dynamics 365 and Common Data Service connectors are used today, we intend to remove both the current Dynamics 365 and Common Data Service connectors so that a single connector based on the Common Data Service (Current Environment) connector will remain. At that time it will be required to convert any Flows, Logic Apps and Canvas Apps still using the Dynamics 365 and Common Data Service connectors.
We will announce timelines as they are determined.
AI Builder text classification models are deprecated
Effective April 24, 2020, any text classification models created using AI Builder before this date will be deprecated. Until May 15, 2020, these models will continue to function, and Microsoft will continue to provide support, however some functionality may be disabled. After May 15, 2020, these models will no longer work.
Beginning April 24, 2020, customers will need to recreate their existing text classification models with the new model versions. Any models created after this date will automatically use the new model versions and require no further action.
After April 24, 2020, customers are encouraged to transition to the new model versions as soon as possible.
Dynamic 365 for Outlook is deprecated
Effective March 2020, the legacy Dynamics 365 for Outlook (also referred to as Outlook COM add-in) is deprecated. Customers must transition to the modern Dynamics 365 App for Outlook before October 1, 2020. Microsoft will continue to provide support, security and other critical updates to the Outlook COM Add-in until October 1, 2020.
For further information and steps to make a smooth transition, download Dynamics 365 for Outlook (COM add-in) Playbook
Dynamics 365 Home is deprecated
Effective March 2020, the home page for Dynamics 365 applications (https://home.dynamics.com) is deprecated and won't be available after October 1, 2020. The Office 365 apps page (https://www.office.com/apps) will replace it and provide users with a single page for productivity and business applications.
Dynamics 365 Home users will see notification about the new location and recommendation to change browser bookmarks until October 1, 2020. After October 1, 2020, users navigating to https://home.dynamics.com will automatically be redirected to https://www.office.com/apps with a business application filter applied.
More information: https://aka.ms/business-apps-discovery-docs
Form processing and object detection preview models in AI Builder are deprecated
Effective March 5, 2020, any form processing and object detection models created using AI Builder before this date will be deprecated. Until June 8, 2020, these models will continue to function, and Microsoft will continue to provide support, however some functionality may be disabled. After June 8, 2020, these models will no longer work.
Beginning March 5, 2020, customers will need to recreate their existing form processing and object detection models with the new model versions. Any models created after this date will automatically use the new model versions and require no further action.
After March 5, 2020, customers are encouraged to transition to the new model versions as soon as possible.
- Transition to use a new form processing model version
- Transition to use a new object detection model version
Old Common Data Service environment URL redirector service is deprecated
When you access your Common Data Service environment for the first time or every time after you have signed out from a prior session, you are directed to Azure AD for signing in. In the sign-in page URL, it contains a set of internal values/codes that include a link to the URL redirector service. Upon successful login, the URL redirector service directs you to your Common Data Service environment.
The old URL redirector service, cloudredirector.crm.dynamics.com, was replaced in September 2019 with the new one, bn1--namcrlivesg614.crm.dynamics.com (just an example; the URL will differ based on your environment region). The old URL redirector service is deprecated, and will be removed on March 31, 2020.
This change will impact you if you have created a bookmark of the sign-in page before September 2019 that contained the link to the old URL redirector service. The users impacted by this change will see a notification staring February 17, 2020 with instructions to resolve the issue. For detailed information about this issue and how to resolve it, see https://support.microsoft.com/help/4541747.
Deprecation of Office365 authentication type and OrganizationServiceProxy class for connecting to Common Data Service
Effective Feb 4, 2020, the WS-Trust authentication type that is used by custom clients to connect to Common Data Service is deprecated. This change affects applications that utilize Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy and Microsoft.Xrm.Tooling.Connector.CrmServiceClient classes for the authentication type of "Office365".
We are making this change to remove a security protocol (WS-Trust) that is inherently insecure by current encryption standards. While Microsoft has worked extremely hard to protect users who choose to use this authentication type for the convenience of login process, it has become an increasing source of concern for Microsoft security and identity protection systems. The WS-Trust security protocol, when used in conjunction with a user account and password, implements an authentication flow that presents both the user Id and password to the authenticating resource in 'clear text' form, relying solely on the transport encryption to provide security for the initial leg of the authentication, until such point as the token service returns an authentication token to use. Additionally, the WS-Trust protocol does not support modern forms of Multi-Factor Authentication and conditional access controls to customer data.
With this change, the intent is to guide developers away from this authentication flow and help application developers to utilize the capabilities of Azure Active Directory to secure and protect access to their applications and customers in Common Data Service.
To allow for transition of customers and partner applications:
Effective April 2021, we intend to retire this authentication protocol for all new environments.
Effective April 2022, the authentication protocol will be retired for all new and existing environments.
More information: Use of Office365 authentication with the WS-Trust security protocol
Regional Discovery Service is deprecated
Effective March 2, 2020, the regional Discovery Service will be deprecated. Until March 1, 2021, Microsoft will continue to provide support, security, and other critical updates for the regional Discovery Service, but won't release any additional functionality beyond what has already been announced. After March 1, 2021, the regional Discovery Service won't be available.
Rules feature in canvas apps is deprecated
Effective October 14, 2019, the rules feature in canvas apps in Power Apps is deprecated. Few people have made use of rules in their canvas apps. From feedback collected through research and discussions with makers of Power Apps, the rules feature was confusing, and expressions were easier to learn, use, and debug. For more information about the rules feature deprecation, see Blog: Canvas Rules feature deprecation.
Legacy web client is deprecated
As of September 2019, the legacy web client is deprecated. Customers must transition to Unified Interface before December 1, 2020. Microsoft will continue to provide support, security and other critical updates to the legacy web client until December 1, 2020 but won't release any additional functionality beyond what has already been announced.
On December 1, 2020, the legacy web client will no longer be available. Organizations should make the transition to the Unified Interface as soon as possible to take advantage of Microsoft’s ongoing investments in reliability, performance, and functionality.
In the coming months, for those that have not already made the transition, we will be sending reminders and scheduling updates to transition customers to Unified Interface prior to December 1, 2020. For further information and steps to make a smooth transition, view our helpful resources and community site:
Unified Interface Community Group including a Blog and Forum
Task flows are deprecated
Task flows are used to create a step-by-step data entry form for common tasks, such as after-meeting follow-ups.
Task flows are deprecated and will be removed by October 1, 2020. They will be replaced by the immersive experience for business process flows that is planned for release. More information: Business process flow immersive experiences
Process Dialogs are deprecated
You can use a process dialog to create an interactive step-by-step data entry form that requires user input to start and run to completion. When you start the dialog process, a wizard-like interface is presented; users make selections or enter data as they progress through each page of the wizard.
Process dialogs are deprecated and will be removed by December 1, 2020. Suggested replacement options include Business Process Flows or Canvas Apps. More information: Replace dialogs with business process flows or canvas apps
Legacy process-related attributes in entities are deprecated
The legacy process-related attributes (such as StageId, and TraversedPath) on entities enabled for business process flows are now deprecated. The SetProcess action for business process flows is also deprecated. Manipulating these legacy process-related attributes for target entity records does not guarantee consistency of the business process flow state, and is not a supported scenario. The recommended way is to use the attributes of the business process flow entity. More information: Create, retrieve, update, and delete business process flow entity records
Some client APIs are deprecated
The following client APIs are deprecated to reorganize the Xrm client API object model to better align with the need of using the same client scripts without having to change them based on the context or the client (web client or the new Unified Interface) where they run. You should plan to use the new client APIs mentioned in the Replacement Client API column instead of the deprecated ones. The deprecated client APIs will continue to be available and supported until they are officially removed from a future major release. A public announcement here in the documentation, on the Dynamics 365 blog, and in many other places will be made at least six months before removal.
|Deprecated Client API||Replacement Client API||Comments|
Commands: Send it as the PrimaryControl parameter
|Use of the Xrm.Page object as a static access to the primary form context is still supported to maintain backward compatibility with the existing scripts. Based on the feedback, we understand that the usage of Xrm.Page is high, and it won't be removed as soon as some other client API methods listed in this section. We encourage you to use the new way of getting form content where possible. More information: Client API form context
Although Xrm.Page is deprecated, parent.Xrm.Page will continue to work in case of HTML web resources embedded in forms as this is the only way to access the form context from the HTML web resource.
|Xrm.Page.context||Xrm.Utility.getGlobalContext||Allows access to the global context without going through the form context.|
|Xrm.Page.context.getQueryStringParameters||formContext.data.attributes||The formContext.data.attributes API will make retrieval of non-entity bound data consistent across entity forms, metadata-driven dialogs, and task-based flows. The data will be a combination of custom values sent using the query string and what was specified in the parameters in the openForm method.|
|Xrm.Page.context.getTimeZoneOffsetMinutes||globalContext.userSettings.getTimeZoneOffsetMinutes||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserId||globalContext.userSettings.userId||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserLcid||globalContext.userSetings.languageId||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserName||globalContext.userSettings.userName||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserRoles||globalContext.userSettings.securityRoles||Moved to globalContext.userSettings|
|Xrm.Page.context.getIsAutoSaveEnabled||globalContext.organizationSettings.isAutoSaveEnabled||Moved to globalContext.organizationSettings|
|Xrm.Page.context.getOrgLcid||globalContext.organizationSettings.languageId||Moved to globalContext.organizationSettings|
|Xrm.Page.context.getOrgUniqueName||globalContext.organizationSettings.uniqueName||Moved to globalContext.organizationSettings|
|Xrm.Page.data.entity.getDataXml||No change in the method, but use "typename" instead of type for lookup attributes.|
|GridRow.getData||GridRow.data||GridRow is essentially a form context. This change unifies the interface of GridRow with formContext.|
|GridRowData.getEntity||GridRowData.entity||GridRowData is form data. This change unifies the interface of GridRowData with formContextData.|
|Xrm.Mobile.offline||Xrm.WebApi.offline||Moved the offline-related methods under Xrm.WebApi.offline|
|parent.Xrm||Use one of the following:
a) Use a custom control created using Power Apps component framework instead of HTML web resources.
b) On forms, use the getContentWindow method of the web resource control.
c) If the getContentWindow method doesn't work, you can use
|Earlier: An HTML web resource may interact with the Xrm.Page or Xrm.Utility objects within the form by using parent.Xrm.Page or parent.Xrm.Utility.
Now: parent.Xrm.* will work if the HTML web resource is loaded in a form container. It won't work for HTML web resources that are stand alone, or referenced from the site map or any other places.
|addOnKeyPress||Use a custom control created using Power Apps component framework|
|fireOnKeyPress||Use a custom control created using Power Apps component framework|
|removeOnKeyPress||Use a custom control created using Power Apps component framework|
|showAutoComplete||Use a custom control created using Power Apps component framework|
|hideAutoComplete||Use a custom control created using Power Apps component framework|
|Xrm.Utility.alertDialog||Xrm.Navigation.openAlertDialog||The new signature is consistent with other APIs (openForm) and takes a new set of parameters for flexibility.|
|Xrm.Utility.confirmDialog||Xrm.Navigation.openConfirmDialog||The new signature is consistent with other APIs (openForm) and takes a new set of parameters for flexibility.|
|Xrm.Utility.getBarcodeValue||Xrm.Device.getBarcodeValue||Moving device-related actions to Xrm.Device|
|Xrm.Utility.getCurrentPosition||Xrm.Device.getCurrentPosition||Moving device-related actions to Xrm.Device|
|Xrm.Utility.isActivityType||Xrm.Utility.getEntityMetadata||The isActivityType method is synchronous so it was suitable for ribbon rules. However, the replacement method, getEntityMetadata, is asynchronous, and is not suitable for ribbon rules.|
|Xrm.Utility.openEntityForm||Xrm.Navigation.openForm||Moving navigation actions to Xrm.Navigation|
|Xrm.Utility.openQuickCreate||Xrm.Navigation.openForm||Moving navigation actions to Xrm.Navigation|
|Xrm.Utility.openWebResource||Xrm.Navigation.openWebResource||Moving navigation actions to Xrm.Navigation
Note: This API returns VOID in Unified Interface.
|globalContext.organizationSettings.baseCurrencyId||globalContext.organizationSettings.baseCurrency||The replacement method lets you access the display name along with the ID of transaction currency.|
|globalContext.userSettings.securityRoles||globalContext.userSettings.Roles||The replacement method lets you access the display name along with the ID of the security roles.|
|globalContext.userSettings.transactionCurrencyId||globalContext.userSettings.transactionCurrency||The replacement method lets you access the display name along with the ID of transaction currency.|
|getData and setData for Silverlight web resources||None||Silverlight is no longer supported. These methods won't be available after October, 2020.|
EntityMetadata.IsInteractionCentricEnabled property is deprecated
All entities supported in the Unified Interface are now enabled for the interactive experience in the new Customer Service Hub app. This implies that the EntityMetadata.IsInteractionCentricEnabled property, which indicates whether an entity can be enabled for interactive experience, is no longer relevant. The corresponding setting for this property in the Customization tool, Enable for interactive experience, is removed, and the EntityMetadata.IsInteractionCentricEnabled property will be removed from the future version.
Voice of the Customer is deprecated
The Voice of the Customer solution is used to create and send surveys for collecting feedback.
As of July 1, 2019, the Voice of the Customer solution is deprecated. Users can create and distribute new surveys and collect responses from live surveys till July 1, 2020. Please read this blog post for more details.
A new solution, Microsoft Forms Pro, is generally available to capture customer feedback using surveys. Customers can learn more about Forms Pro here.
Dynamics 365 for Blackberry is deprecated
As of December 3, 2018, Microsoft Dynamics 365 for Blackberry App is deprecated and will be removed from the iOS App Store on October 31, 2019. The mobile app is currently available on the iOS App Store and is designed for Dynamics 365 customers that utilize Blackberry Mobile Application Management. See more details about the Dynamics 365 for Blackberry app here: Secure your mobile data with Microsoft Dynamics 365 for Good. After October 31, 2019, Microsoft Intune will be the only supported mobile application management solution for the Dynamics 365 for phones application.
Microsoft will continue to provide security and other critical updates to the Dynamics 365 for Blackberry App until October 31, 2019, but will not release any additional features or functionalities within the app. After October 31, 2019, the Dynamics 365 for Blackberry App will be removed from the App Store, and support will end.
What should you do?
If you are currently using the Dynamics 365 for Blackberry App together with Mobile Application Management for Blackberry, plan to migrate to Dynamics 365 for phones by October 31, 2019. We encourage you to migrate as soon as possible to take advantage of Microsoft's ongoing investments in the reliability, performance, and functionality of the Dynamics 365 mobile app.
Service scheduling in Dynamics 365 Customer Service is deprecated
The existing service scheduling functionality is deprecated, and will no longer be available on December 1, 2020. The new scheduling experience, built on Universal Resource Scheduling (URS), is now available in the Unified Interface.
Existing service scheduling users will be provided advance notice for a timebound migration to the new scheduling capabilities.
There are two approaches to migrate to the scheduling experience:
Follow the guidance in the Service Scheduling Guide to set up the new scheduling experience for an existing Dynamics 365 Customer Service organization.
If your organization requires features that rely on legacy APIs, the product team is offering an incremental migration option and will update your organization to the Unified Interface experience while continuing to allow the use of the legacy APIs. This approach is available in 2020 release wave 2 with Eary Access in August, 2020.
Usage of Parature knowledgebase as the knowledge management solution is deprecated
Usage of Parature knowledgebase as the knowledge management solution is deprecated. This feature is replaced by Knowledge Management features in Dynamics 365 Customer Service.
The Knowledge Solution setting in the Knowledge Base Management Settings dialog box, which provides a connection to Parature will be removed in a future major release.
Project Service Finder app is deprecated
The Project Service Finder App, available for use with Dynamics 365 Project Service Automation, is deprecated. The legacy application will be supported for associated legacy Project Service Automation releases in accordance with Microsoft's Modern Lifecycle Policy. The functionality available through this app will be available in a future release of Dynamics 365 Project Service Automation application.
Contracts, Contract Line Items, and Contract Templates entities are deprecated
The Contracts, Contract Line Items, and Contract Templates entities are deprecated and will be removed in a future major release. This functionality has been replaced by entitlements in Dynamics 365 Customer Service.
Standard SLAs in Dynamics 365 Customer Service are deprecated
Standard service level agreements (SLA Type field is set to Standard) are deprecated and will be removed in a future major release. Standard SLAs are replaced by enhanced SLAs. More information: Enhanced service level agreements
Relationship Roles are deprecated
Relationship Roles (Settings > Business Management > Relationship Roles) are deprecated and will be removed in a future major release. This feature is replaced by Connection Roles. More information: Create connections to view relationships between records.
Mail Merge is deprecated
In Dynamics CRM 2016 (version 8.0), we introduced server-side document generation using Word and Excel templates. You can use these templates to provide standardized documents or customized data analysis for your organization.
Mail merge from previous versions is deprecated. This includes the mail-merge Word add-in as well as mail-merge templates (Settings > Templates > Mail Merge Templates).
More information: Create Word and Excel templates
Announcements are deprecated
Announcements (Settings > Administration > Announcements) are deprecated and will be removed in a future major release.
Ready-to-use business processes available through Add Ready to Use Business Processes setting are deprecated
Ready-to-use business processes available through the Add Ready-to-Use Business Processes setting (Settings > Data Management > Add Ready-to-Use Business Processes) are deprecated and will be removed in a future major release. You can find ready-to-use business processes on Microsoft App Source.
Silverlight (XAP) web resource is deprecated
The Silverlight (XAP) web resource is deprecated on the web client, and is not supported on the Unified Interface. Instead of Silverlight web resources, you must use custom controls created using the HTML web resources with HTML5 to create UI components to visualize and interact with data.
For information on past deprecations, see: