Use Custom API to create custom messages in Dynamics 365


Custom API (preview) allows us to define our custom messages that can be called from web services, similar to Custom Actions. Usually, we would be creating custom workflow actions just to create a new message, to which we can hook our plugin, without defining any logic in the workflow. For this scenario or pattern now we can use Custom API instead.

There are different ways of creating a custom API.

  • Through the Maker Portal.
  • Using Web API or Organization Service.
  • Editing the solution files.

The 3 key entities involved here are

  1. CustomAPI
  2. CustomAPIRequestParameter
  3. CustomAPIResponseProperty

Let us try creating a CustomAPI through the maker portal.

Create a new solution, and click on New and select Custom API

Let us start with a very basic custom action.

Unique Name

This will be the name of the message. Should have the prefix same as solution’s publisher. 

Name

The name of the Custom API will show up inside the solution

Display Name

Localized display name of the Custom API

Description  

Localized description of the Custom API 

Binding Type 

  • Value: 0 Label: Global
  • Value: 1 Label: Entity
  • Value: 2 Label: EntityCollection

Bound Entity Logical Name 

Logical name of the entity in case of binding type – Entity and EntityCollection.

Is Function 

  • Value: 0 Label: No
  • Value: 1 Label: Yes

Allowed Custom Processing Step Type 

  • Value: 0 Label: None Meaning: No custom processing steps allowed.
  • Value: 1 Label: Async Only Meaning: Only asynchronous custom processing steps allowed
  • Value: 2 Label: Sync and Async Meaning: No restriction. 3rd party plug-ins can add synchronous logic to change the behavior of the message

Execute Privilege Name


Name of the Privilege that is required for the execution of the Custom API.

Plugin Type

Reference of the plugin registered for the Custom API 

So right now we have a very basic custom API registered of Global type, which doesn’t allow any steps to be registered and doesn’t need any privileges to execute

Let us write a sample plugin and associate with this new message.

Let us register the assembly

Now let us go back to our Custom API record and associate the Plugin registered.

Let us trigger the plugin by calling the Custom API through the Postman.

Let us check the plugin trace log inside Dynamics 365 App.

Get all details here 

https://docs.microsoft.com/en-us/powerapps/developer/data-platform/custom-actions

Hope it helps..

 

 

 

Advertisements

RECENT POSTS –

Failed to process metadata description. We ran into a problem publishing the form. Please try again while publishing the form in Dynamics 365

While trying to publish the case form we got the below error – Error: We ran into a problem publishing the form. Please try again. (SessionID: a000b750-91e2-11eb-9fd2-8fd31814d5b2) Adding/removing components, refreshing the form multiple times, etc. didn’t … Continue reading “Failed to process metadata description. We ran into a problem publishing the form. Please try again while publishing the form in Dynamics 365”

Backup Concepts for Azure Data Lake

Azure Data Lake Storage is designed to enable operational and exploratory analytics through a hyper-scale repository There are two different types of Data Lake Store in Azure (Gen1 and Gen2) available at the current…

What is your IP?

Originally posted on @ramontebar:
What is the IP address used by your online Dynamics 365 or Microsoft Dataverse environment? If you are connecting from a plugin, a Custom API, a custom workflow activity or…

Loading…

Something went wrong. Please refresh the page and/or try again.

Author: Nishant Rana

I love working in and sharing everything about Microsoft.NET technology !

9 thoughts on “Use Custom API to create custom messages in Dynamics 365”

Please share your thoughts

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.