Allowed Custom Processing Step Type attribute of custom API allows us to control whether other plugins can be registered or not against the custom message
0 – None – No custom processing steps are allowed.
1 – Async Only– Only Async processing steps are allowed.
2 – Both Async and Sync custom processing steps are allowed
Let us create a custom API with the value of “Allowed Custom Processing Step Type” as None.
If we check inside the Plugin Registration tool, we will not find the above message that we registered i.e. my_sampleAPI there.
Let us create another custom API and specify “Allowed Custom Processing Step Type” as Async Only.
As expected we can find the message available there.
As it is Async Only, if we try to register the step with Synchronous mode, we will get the below error.
Custom SdkMessageProcessingStep is not allowed on the specified message and entity.
As expected it allows us to register the step in asynchronous mode.
To test, we updated the security of the Application User to Sales Manager role which doesn’t have the create incident privilege.
Calling the custom API this time as expected gave us the below error
{“error”:{“code”:”0x80040220″,”message”:”Principal user (Id=0f377e29-5545-eb11-a813-000d3a9bf733, type=8, roleCount=1, privilegeCount=727, accessMode=4), is missing prvCreateIncident privilege (Id=6cf9442b-e690-4cad-8b0a-e60464960b93) on OTC=112 for entity ‘incident’. context.Caller=0f377e29-5545-eb11-a813-000d3a9bf733″}}
If we specify an incorrect privilege name we would get the below error and will not be able to save the record.
Recently, we needed to remove the legacy Resco MobileCRM (Woodford) managed solution from a Dynamics 365 Field Service environment. Although the uninstall initially appeared straightforward, when we attempted to uninstall the Woodford solution, Dynamics 365 displayed a list of dependencies that needed to be addressed before. The dependencies … Continue reading “How We Successfully Removed the Resco Woodford Managed Solution from Dynamics 365 Field Service”
Please refer to the post below, which provides a clear explanation of how RetrieveDependenciesForDeleteRequest works and how it can be used to identify dependencies.
Recently, while cleaning up some old customizations in Dynamics 365, we came across an interesting dependency issue that was not immediately obvious from the user interface. What initially looked like a simple Business Process Flow deletion turned into a deeper investigation into how Dataverse manages published dependencies internally. … Continue reading “Troubleshooting Hidden Dependency Errors in Dynamics 365 and Dataverse”