If you are just joining us, I am working on a series to learn about Dynamics 365 and Customer Insights using superheroes! You can check out the full series on the Hero Insights page. Enjoy!
Previously, we added data on the Common Data Service. Today, we’re using Power Automate for something exciting! I think this solution was super cool for my example scenario. However, I do understand it has some room for improvement and probably is not something that should be run on your production instance. Hopefully, it will still facilitate your learning and still be interesting!
The goal today is to get pictures to somehow populate the contact image on my hero (Contact) records. Since I was working with superheroes who have appeared countless times already in comic books, it just seemed logical that I would be able to find their image in order to add to their Contact.
There were a few roadblocks keeping me from this goal. My first struggle was that I didn’t want to manually hunt down every hero’s image and upload them to each contact one by one. So I wanted to use one of the superpowers of this technology to scour the internet to add the appropriate pictures for me. I completed this by using Flow to search Twitter for the character, grabbed the image from the tweets, and added them to the corresponding hero’s contact.
My second struggle was that I needed to find a way to run the Flow for all of our records. Originally, I had planned to do this via an on-demand trigger. There were still some fiddly bits with solutions and on-demand Flows which were slightly complicated by the fact that you can only upload the Contact images using the Common Data Service (current environment) connector.
It was at this time that I reevaluated and decided just to run for all records at once. Of course this timed out. To solve this issue, I modified the Get Records to only grab those starting with a particular letter of the alphabet (thanks to an assist from the XrmToolBox FetchXML Builder). I could enter the letter as part of the trigger button so that the actual Flow did not need to be modified between runs. This allowed me to kick of the Flow multiple times in a row and it could be running in parallel.
Enough chatting, let’s see what the solution actually looked like.
Room For Improvement
Just like every superhero has a weakness, this flow does have some vulnerabilities.
We have to search for multiple tweets with the hope that at least one contains a picture. If there are multiple images, the first one is being saved and then it is failing on the overwrite. If there are no images (or no tweets), then nothing is done.
Who knows what you are downloading from Twitter so that is a risk that some may not trust the internet that much. Plus copywrite laws … let’s not talk about that one.
This may have been a case where a Custom Connector could be used to search a specific Super Hero wiki where we could guarantee results that met our needs.
Despite the potential issues or room for improvement I would still call this a success. Check out a few of the images that were found. Of the 710 heroes, 336 were updated with pictures.
Today’s episode was busting at the seams with excitement but come back tomorrow for even more thrills and chills where we will set up the Customer Insights Trial!