Get Alerted When a Common Data Service Database Version Changes

Leave a comment

In this post, we will look at how to create a Power Automate Flow that alerts someone when a Power Platform Common Data Service version changes. This can be very useful if you’re waiting for new features to come out, for example the T-SQL access to the Common Data Service. We can also use this to connect to any of the D365 / Power Apps Web API methods from Power Automate. Let’s look at how to do this.

If you prefer video, check out this on my YouTube channel:

First, let’s look at versions of the Common Data Service. In the Power Platform Admin Center, we see there is a version listed in each environment:

Also, we can see the version through an app, by going to the Settings->About:

We see the Server version here:

Note these versions can be different, but that’s a story for another day.

Now, let’s say we’re waiting for version 9.1.0.17437 to come out, which is the version prerequisite for T-SQL access, according to this Microsoft documentation:

Let’s build the app that tells us if we’re at that version of not.

First, let’s create an Azure AD app and create a new client secret:

Set any duration and add:

Copy the value:

Now, let’s sign into Microsoft Power Automate at https://flow.microsoft.com and create a new Scheduled Flow:

We will call it Check Power Platform Environment Version, and schedule it to run every morning at 10am:

You will see:

Let’s add an HTTP action. This action will connect to our Azure AD app for the Power Platform / CDS environment and give us a bearer token to make Web API requests:

Select HTTP:

We see:

Enter the URI for the token request and the set the header to:

Content-Type application/x-www-form-urlencoded

Set the body to below. This uses the Azure AD app Id and Secret:

grant_type=password
&username=admin@yourorg.onmicrosoft.com
&password=YourPassword
&client_id=your application id from the Azure AD app
&client_secret=your secret from the client secret
&resource=https://yourorg.crm.dynamics.com/

Run this and copy the Body output.

Now let’s add a Parse JSON to get the bearer token from the response:

Add Body to the Content and click on Generate from Sample:

Paste the body output that was copied above and click Done:

We should see:

Add another HTTP action:

Paste in the URI of the Common Data Service Web API. Let’s look at a generic example first, getting all account data back – https://yourorg.crm.dynamics.com/api/data/v9.1/accounts

We will add the Bearer in the Headers for Authentication. Be sure to add a space between that and the access_token:

On running this, we see success:

And accounts returned:

Now let’s use RetrieveVersion to get the version number:

https://yourorg.crm.dynamics.com/api/data/v9.1/RetrieveVersion

We see the version returned:

9.1.0.17162

Make this the request URI:

Run it and copy the body:

We will add another Parse JSON to parse the response:

Click Done:

And we’re done with this action:

Now add a Condition:

We will check if the Version is greater than or equal to the version we are after:

Greater than or equal to:

If yes or no, we will send an email to a user:

With the version number:

It should look like:

Now it we run it, we get an email – the version is not yet what we want 🙁

If we change the version to a lower one, we will get a Yes email sent.

Hope you enjoyed!

THANKS FOR READING. BEFORE YOU LEAVE, I NEED YOUR HELP.
 

I AM SPENDING MORE TIME THESE DAYS CREATING YOUTUBE VIDEOS TO HELP PEOPLE LEARN THE MICROSOFT POWER PLATFORM.

IF YOU WOULD LIKE TO SEE HOW I BUILD APPS, OR FIND SOMETHING USEFUL READING MY BLOG, I WOULD REALLY APPRECIATE YOU SUBSCRIBING TO MY YOUTUBE CHANNEL.

THANK YOU, AND LET'S KEEP LEARNING TOGETHER.

CARL

https://www.youtube.com/carldesouza

 

ABOUT CARL DE SOUZA

Carl de Souza is a developer and architect focusing on Microsoft Dynamics 365, Power BI, Azure, and AI.

carldesouza.comLinkedIn Twitter | YouTube

 

Leave a Reply

Your email address will not be published. Required fields are marked *