Loading...

How to get dynamic Record URL in Power Automate (quick tip)

How to get dynamic Record URL in Power Automate (quick tip)
How to get dynamic Record URL in Power Automate (quick tip) David Uhlmann Sun, 07/10/2022 - 13:03
Body

How to get dynamic Record URL in Power Automate

There seems to be some amount of confusion on the web about how to use Power Automate to get the dynamic record URL of a record in Dynamics CE.

Power Automate comes with a few onboard tools. To understand what we are talking about here. A typical Dynamics CE URL, here for an opportunity record, might look like this:

How to get dynamic Record URL in Power Automate

If you want to create this URL inside a Power Automate flow, for example, to put it inside an approval e-mail you need to think about how to do it.

For example, you can parse the JSON output of an action to get the URL of the Dynamics instance:

How to get dynamic Record URL in Power Automate

The body part contains many technical details that are exchanged inside the flow while it is running. Among them is also a URL. This output can later be used with an expression like uriHost(body('GetOpportunity')?['@odata.id']) can be parsed. From this you will get the following URL:

https://org18eb47a1.crm4.dynamics.com/. However, what is still missing is the App ID and the GUID of the record to assemble the link. 

If you search the net on how to assemble this link dynamically you will find a few sources that follow two approaches. The first approach tries to determine all important components (Dynmics URL, App-ID, and GUID) with flow board means, while the second approach relies fully on JavaScript. However, both approaches have a fundamental disadvantage. They (often) assume that the components of the link that are between those "core" elements do not change. Likewise, these solutions are valid but still somewhat of a "tinker". 

So our goal is something like this:

How to get dynamic Record URL in Power Automate

Well, there is a simple trick to get to this link. This one uses good old Dynamics CE onboard tools. What to do here, at least that would be my suggestion, is:

1.) Create a new field (I called it "RecordURL").

2.) Set up a "Real-Time" workflow on the corresponding entity (Important NOT run workflow in the background - It has to be the real-time one!)

3) Whenever changes are made to the record (for example, when saving), the dynamic URL is written into this field.

4) Using this field in Power Automate

How to get dynamic Record URL in Power Automate

We can now use this field in our Approval Flow. Whenever an approval email is being sent, the person will receive a direct link to the record:

How to get dynamic Record URL in Power Automate

This screenshot also shows that these days you can forget about hyperlink formatting, as this is done by the tool for you. So let's check if this one works out:

How to get dynamic Record URL in Power Automate

Because Sales is probably the most obvious case for approval processes, I have created a simple approval process as an example here.

This checks if the amount is above 3 million USD and if the approval status is not "Yes". After the user hits save the flow is triggered and contains the URL to the record:

appr email

When I click on the link I get directly to the record. And this is more or less it. If you have trouble building this do not hesitate to reach out to me. p.s: sometimes it is a good idea to check the "good old" onboard things :-)

How to get dynamic Record URL in Power Automate

Image
/sites/default/files/2022-07/trick2.png

Published on:

Learn more
Featured Articles | Dynamics Chronicles
Featured Articles | Dynamics Chronicles

Welcome to our blog, the content is entirely dedicated to Microsoft Dynamics 365, CRM, Power Platform, Common Data Service (CDS) but also Azure. Follow us !

Share post:

Related posts

Convert CSV files to JSON in Power Automate

How do you convert CSV files to JSON? When you have data in CSV format and you want to use this within Power Automate, there used to be a lot...

7 days ago

3 reasons to use the new designer in Power Automate

Hardly ever, I've seen a software change take so long for people to accept. How long will it be before developers just get on with as the new ...

8 days ago

Power Automate – View property value expanded inline in the new cloud flow designer

We are announcing the ability to view property value expanded inline in the new cloud flow designer in Power Automate. This feature will reach...

9 days ago

Substring vs Slice in Power Automate

Power Automate has quite a few string functions that can help you sort out textual issue. Two of these functions are Substring and Slice. Do y...

12 days ago

Power Automate – Debug easily into condition actions at runtime

We are announcing the ability to debug condition actions by displaying values passed into the dynamic content and expressions at runtime in Po...

12 days ago

Run a generative action in Power Automate

Recently the Run a generative action was added to Power Automate. To make this action work is not as easy as you might hope.

13 days ago

Send community news by email using Power Automate

Yesterday on Reddit I was asked about how to collect and send community news articles from websites using Power Automate so that news letters ...

13 days ago

4 ways to filter data in Power Automate

Yesterday, I looked at how to filter data when making an API call using the HTTP action and noticed that filtering data isn't always straight ...

15 days ago

Segments in Customer Insights - Journeys: Bulk delete with Power Automate

Currently its not possible to delete segments more than one at a time from the view in Dynamics 365 Customer Insights - Journeys. Why? I don’...

20 days ago
Stay up to date with latest Microsoft Dynamics 365 and Power Platform news!
* Yes, I agree to the privacy policy