cancel
Showing results for 
Search instead for 
Did you mean: 

Join the discussion

Most Recent
cha_cha
Super User
Super User

Connect to Azure OpenAI Whisper API in Power Automate

 

Read more...

Lucas001
Super User
Super User

Using environment variables for a smoother deployment of PA Flows with a dataflow trigger.

Read more...

trice602
Super User
Super User

Often times there are requests to append file names with a timestamp, customerID, or another identifier when files are created in SharePoint Libraries. This short flow will show you how to do it, step by step.  We will add the date in the following format MM-dd-yyyy to the file name.

Read more...

wyattdave
Responsive Resident
Responsive Resident

There are many reasons a Outlook trigger wont find but I have found a common issues when promoting flows between environments with different mailboxes.

Read more...

Joseph_Fadero
Continued Contributor
Continued Contributor

Have you ever wondered how to automate repetitive chores with Power Automate? You're not by yourself! This article is your one-stop shop for learning the fundamentals before creating your first flow.

Let's take it apart:

 

1. The Spark: Triggers

Think of a trigger as your flow's starting pistol. It is a triggering event.

Examples include receiving a new email, uploading a file to OneDrive, at a specific time interval and seeing a tweet with a specific hashtag.

Think of this: When a new sales leader appears in your CRM, a flow is triggered. The lead is then automatically emailed a welcome message!


2. Actions

Actions are the backbones of your flow. They are the specific actions that occur when the trigger fires the starting gun.

Action Examples: Sending an email notification, generating a project management task, or modifying a database record.

Real-World Use Case: Your flow detects a new email with an attached invoice. It then retrieves invoice information and instantly changes your accounting system.


3. Connecting the Dots: Connections

Connections function like bridges, allowing your flow to interface with a wide range of external services and apps.

Connecting to: Office 365, SharePoint, Twitter, Salesforce, and pretty much any other supported service.

Imagine this scenario: You wish to send out an automatic tweet every time a new blog article is published on your website. Your flow uses a connection to Twitter to make it happen!


4. Flow of Information: Dynamic Content

Dynamic content is the heart of your flow. It is the information sent on by triggers and actions.

Consider: Extracted email subject, sender information, or file attributes such as size and name.

Put It into Action: When a new expenditure report arrives in your mailbox, your flow can extract the total amount from the email and automatically send it for approval.


5. Expressions.

They enable you to manipulate data dynamically, adding a layer of enchantment to flows.

Expression examples include combining text strings, computing dates, and extracting certain sections of text. Let's Get Specific: Use an expression to format a date pulled from a trigger into the exact format required by your calendar app.


6. Making decisions: Conditional logic.

Condition logic is analogous to your flow's "if-then" statements. They allow your flow to select options based on certain criteria.

Conditional examples include: "If the order exceeds $1000, notify the manager via email." Otherwise, continue with the standard processing." Likewise, "If a tweet mentions a specific product, reply with a discount code."

Real-life scenario: When a new client record is entered into your system, utilize condition logic to determine their location and allocate them to the right sales agent.

 

Would you like to see a video demonstration of some of the concepts? Check out the Youtube Channel: CDHQ

Read more...

Rahman1005
Advocate III
Advocate III

Wouldn't it be wonderful if upon your next login to Dynamics, you were promptly informed of significant events that occurred during your absence? Such as leads being assigned to you, opportunities closed by your team, or new cases opened.

Now, all of this is achievable through 'in-app notifications' for Dynamics 365.

Enable the feature within your model driven apps and users will see notifications when they log in, navigate pages or are on a page for more than a minute.

Enable the feature.

  1. Navigate to the maker admin(https://make.powerapps.com/) and open the model-driven app you would like to enable this feature in and select the edit.
  2. Select settings, Navigate to Features and enable 'In-app notifications'.

Rahman1005_0-1711963426510.png

 

After refreshing your browser, you should see the notification bell in your header.

Rahman1005_1-1711963440758.png

 

In this example I am going to create a notification when a new phone call record is created for case, and I am going to show the notification to the case owner. Obviously, you can use any trigger in Power Automate flow to create a notification.
We are going to create an automated cloud flow when creating the new flow. Click ‘+New Flow’ Make sure you name your flow, for my example I called the flow ‘In-App Notification on new call’.
For the trigger I’m going to use the ‘When a row is added, modified or deleted’. The change type is ‘added’ and the table name is ‘phone calls’. My scope is organization (I want this to run for everyone in the organization) and I am going to run this flow as the modifying user. That’s all you have to enter in the trigger step!

Rahman1005_2-1711963469754.png

 

In the next step I am going to get case record.

Rahman1005_3-1711963483971.png

 

In the next step we’re going to create the actual notification in data verse. Click on ‘+New Step’ and select ‘Add a new row’. For “Table name” select the ‘Notifications’ table.

The rest of this step is really about who the notification goes to and what we want to show in the notification.

In the “Title” field I am going to enter “New phone call has been added for your case!!!”. The title field will show in bold in the notification.

In the ‘Body‘ field I am going to enter “A new phone call has been added for your Case Number:” followed by the dynamic content in the case number field of the case that triggered the flow. The data in the ‘Body‘ field will show below the ‘Title‘ field in the notification.

The ‘Data‘ field in the step is a JSON structure to provide a more advanced control over the notification. links, and/or custom icons. However, those make for better notifications.

In the ‘Expiry (seconds)‘ field I will enter the number of seconds after which the notification will be deleted. I am going to set this for 20 minutes, which equals 1200 seconds.

The ‘Icon Type‘ field will allow you to choose an icon to be shown in the notification. There are a few icons you can use out of the box, and it looks like can use a custom icon as well. I haven’t figured out how to do that yet, so I am going to pick the out of the box “Info” icon.

The ‘Owner(Owners)‘ field represents who will see the notification,. Note that I entered /system users first and the dynamic content (Owner(value)) in parentheses.

Lastly you can set a priority and set the toast type to ‘Timed’. That’s all for the flow configuration! Make sure you save your flow and test it to make sure everything works as expected!

Rahman1005_4-1711963502172.png

 

In Content, paste the following JSON. Replace the <entityLogicalName> with the entity name and <recordId> with the GUID of the specific record for which the link needs to be generated.
{

"actions":[

             {

"title": "Open Phone Call",

"data":{

"url": “?pagetype=entityrecord&etn=<entityligicalname>&id=<=recordId>",

"navigationTarget": "newWindow" }

              }

           ]               

}

 

I am going to add a phone call for a case now.

Rahman1005_5-1711963514509.png

 

Rahman1005_6-1711963535186.png

 

After the phone call created, a notification is received along with an action. Clicking on 'Open Phone Call' will open the popup case record.

Rahman1005_7-1711963545046.png

 

After clicking the 'Open Phone call” action, the case record will be displayed in a new window.

 

Rahman1005_8-1711963555584.png

 

Thank you..!

happyume
Multi Super User
Multi Super User

Out of the box, Power Apps supports Regular Expression (or RegEx) matching through in-built IsMatch, Match and MatchAll functions, however this is not natively supported within Power Automate.

Read more...

trice602
Super User
Super User

If you have worked in the Power Automate space long enough, you have probably come across the request "can you turn this webpage into a pdf?"  In this quick step-by-step walkthrough, I will show you how to do this fast!

Read more...

wyattdave
Responsive Resident
Responsive Resident

Summing up or getting an average an array should be easy, but sadly there isn't an out of the box way in Power Automate but there is a way 😎

Read more...

Deenuji
Community Champion
Community Champion

Power Fx is a versatile language known for its simplicity and effectiveness in handling various data operations, including dates. In this blog post, we'll explore how to perform common date-related tasks using Power Fx Formulas in power automate desktop.

Read more...

wyattdave
Responsive Resident
Responsive Resident

With everything moving to solutions I have been finding that sometimes the app user does not have permission to call the flow. This blog explains a workaround to fix it

Read more...

trice602
Super User
Super User

This is a common question I have answered more than once here and it is time to revisit my accepted solution from August of 2023.  In this example, I will show you how you can reference a saved image you want to include as an embedded/inline image and include in a Send an email (V2) action from either OneDrive or SharePoint - the formats are slightly different.  Goes without saying, make sure the permissions on your image allow others to view (if applicable).

 

 

Read more...

wyattdave
Responsive Resident
Responsive Resident

Some API's return a 302 redirect url, which Postman and other web clients automatically follow. Unfortunately its not that easy in Power Automate so here's how to fix it

Read more...

VJR
Multi Super User
Multi Super User

📢𝗣𝗼𝘄𝗲𝗿 𝗙𝘅 𝗶𝗻 𝗣𝗼𝘄𝗲𝗿 𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗲 𝗗𝗲𝘀𝗸𝘁𝗼𝗽 now supports 𝗶𝗻𝘁𝗲𝗿𝗽𝗼𝗹𝗮𝘁𝗲𝗱 𝘀𝘁𝗿𝗶𝗻𝗴𝘀

𝗪𝗵𝗮𝘁 𝗶𝘀 𝗦𝘁𝗿𝗶𝗻𝗴 𝗜𝗻𝘁𝗲𝗿𝗽𝗼𝗹𝗮𝘁𝗶𝗼𝗻?
It is a powerful feature which allows you to inject variables, expressions directly into a standard string. It makes creating and formatting strings easier and more readable.
Used in programming languages. Also available in Power Apps and now in Power Automate Desktop.

𝗘𝘅𝗮𝗺𝗽𝗹𝗲:
🔷 Power Fx in PAD – 𝗪𝗶𝘁𝗵𝗼𝘂𝘁 String Interpolation
="Welcome, " & vFirstName & " " & vLastName & ", " & "this is a nice update in PAD Version 2.41"

🔷 Power Fx in PAD – 𝗪𝗶𝘁𝗵 String Interpolation
=$"Welcome, {vFirstName} {vLastName}, this is a nice update in PAD Version 2.41"


Key points to note and benefits:
🔹String interpolation strings begin with a $
🔹Use curly braces {} to evaluate and embed the variable or expression
🔹Both, normal text or interpolated strings can be used anywhere within that line of text
🔹No need of any ‘&’ operator, thus easy to read as well as write formatted strings.
🔹This is applicable only for Power Fx enabled desktop flows (in preview). The "=" sign in the beginning is the Power Fx notation.

Below screenshot shows an output in 𝗣𝗔𝗗 using Power Fx – 𝗪𝗶𝘁𝗵 String Interpolation

Check out my post for a sample on how Power Fx in PAD can be used.
https://lnkd.in/dd4cMTcH

 

This feature is released in the February update Version 2.41

https://lnkd.in/dcFCtD5N

VJR
Multi Super User
Multi Super User

Problem Statement:

Power Automate Desktop currently does not have an option to set categories to Outlook emails.

 

These are what categories in Outlook are. They can be default ones like Blue Category, Orange Category, or you can customize your own ones as shown below.

 

VJR_0-1708414321517.png

 

 

Power Automate Desktop Solution:

 

1. Launch Outlook and Configure the desired parameters for retrieving emails as per your specific criteria.

Here the email with the subject as "test email" in Inbox folder is configured.

 

VJR_1-1708414478100.png

 

 

2.  For the sake of this example only 1 email with the subject "test email" will be retrieved.

Hence, we are storing the unique EntryID of that email in a variable.

 

VJR_2-1708414539921.png

 

 

3. Here we are setting a variable with the desired Outlook categories

- Can pass single or as shown we are passing two categories at once.

IMP: Make sure that you have the correct spelling of the category name as per the list of already configured categories in the outlook application. First screenshot of this write-up.

 

VJR_3-1708414633208.png

 

 

4.  Here we are simply passing the above two variables to a Vbscript which will do the rest ie; setting the category to the email having the specified EntryID.

 

VJR_4-1708414738826.png

 

 

VBScript Code:

 

Option Explicit

' Create Outlook Application object
Dim objOutlook
Set objOutlook = CreateObject("Outlook.Application")

' Get the message by its ID
Dim objNamespace, objMessage
Set objNamespace = objOutlook.GetNamespace("MAPI")
Set objMessage = objNamespace.GetItemFromID("%EntryID%")

' Check if the message is found
If Not objMessage Is Nothing Then
    ' Set the category
    objMessage.Categories = "%CategoriesToSet%"
    objMessage.Save ' Save changes
    
   ' MsgBox "Category set successfully."
Else
    'MsgBox "Message not found."
End If

' Clean up
Set objMessage = Nothing
Set objNamespace = Nothing
Set objOutlook = Nothing

 

5. The overall PAD flow would look as below.

 

*I have also attached the txt file of the entire flow which you need to copy-paste inside a blank Flow editor.

The flow is built in PAD version 2.41

 

VJR_5-1708414920525.png

6. Thats it. The email output after running the above PAD flow is as follows.

 

VJR_7-1708414990467.png

 

 

7. Attached .txt file of the flow to copy-paste into a blank PAD editor.

When you copy paste the code chances are that Power Automate Desktop adds some slash characters especially in the vbscript and you may see some errors. Single back slashes may become double back slashes. To fix, take the vbscript code snippet posted above and paste it directly into the "Run vbscript" action. 

 

 

Monika001
Helper I
Helper I

User story: 

Create an access team whenever a new row is added to the Accounts table. Add the creator of the new row and their manager to the access team. Automate this process using power automate flow. 

What is an access team?

Access teams are a type of team that can be created in the Microsoft power platform to enable an extra level of security to your application. Access teams empower us to have a record level of security for our dataverse tables. Now, you might be wondering, when we already have some ways to achieve security in dataverse why use access teams?

Consider a scenario where an Azure Active Directory group has already been established for the purpose of restricting user access to a particular application. However, you do not want everyone in that AAD group to access all the records of that application. That is, you want some people to access only some records based on the ownership of the records. This is where the access group can help. With the help of power automate flows, you can automate to create access teams dynamically.

Read more...

wyattdave
Responsive Resident
Responsive Resident

Everyone has their own particular style when making flows in Power Automate, and that is part of the beauty of being a developer. But development by its very nature is about sharing and learning from others (its why Stack Overflow is probably most visited developer site).

So after making far too many flows, I've pulled together what I think of as the best approach to Power Automate (and many other RPA tools), and it's called the 'Direct' methodology.

Read more...

Rahman1005
Advocate III
Advocate III

Adaptive Cards are self-contained user interface components that transcend platform boundaries. Crafted in JSON format, these snippets of UI can be seamlessly exchanged between applications.

Upon reaching a particular application, the JSON content is dynamically rendered into native UI elements, seamlessly blending with the app's aesthetic. This approach facilitates the creation and seamless integration of lightweight UI elements across diverse platforms and frameworks.

User Story:

We're preparing to implement a leave approval workflow in Teams utilizing adaptive cards. Employees will submit their leave requests, and line managers will receive notifications within Teams.

Step 1 – Design the Adaptive Card

Prior to establishing the flow, let's initiate the card design process using the designer tool to ensure readiness. Visit https://adaptivecards.io/designer/  to access the designer interface and adjust the 'host app' setting to Microsoft Teams – Light / Dark. Once the card example is updated, we can proceed with development.

Rahman1005_0-1707802998019.png

 

Navigate to https://adaptivecards.io/designer and in Card Payload Editor upload below JSON.

{

    "type": "AdaptiveCard",

    "body": [

        {

            "type": "Container",

            "style": "emphasis",

            "items": [

                {

                    "type": "ColumnSet",

                    "columns": [

                        {

                            "type": "Column",

                            "items": [

                                {

                                    "type": "TextBlock",

                                    "size": "Large",

                                    "weight": "Bolder",

                                    "text": "**New Leave Request**"

                                }

                            ],

                            "width": "stretch"

                        },

                        {

                            "type": "Column",

                            "items": [

                                {

                                    "type": "Image",

                                    "url": "https://adaptivecards.io/content/pending.png",

                                    "altText": "Pending",

                                    "height": "30px"

                                }

                            ],

                            "width": "auto"

                        }

                    ]

                }

            ],

            "bleed": true

        },

        {

            "type": "Container",

            "items": [

                {

                    "type": "ColumnSet",

                    "columns": [

                        {

                            "type": "Column",

                            "items": [

                                {

                                    "type": "TextBlock",

                                    "size": "ExtraLarge",

                                    "text": "@{triggerOutputs()?['body/Title']}",

                                    "wrap": true

                                }

                            ],

                            "width": "stretch"

                        },

                        {

                            "type": "Column",

                            "items": [

                                {

                                    "type": "ActionSet",

                                    "actions": [

                                        {

                                            "type": "Action.OpenUrl",

                                            "title": "View Item",

                                            "url": "@{triggerOutputs()?['body/{Link}']}"

                                        }

                                    ]

                                }

                            ],

                            "width": "auto"

                        }

                    ]

                },

                {

                    "type": "FactSet",

                    "spacing": "Large",

                    "facts": [

                        {

                            "title": "Submitted By",

                            "value": "**@{triggerOutputs()?['body/Author/DisplayName']}** @{triggerOutputs()?['body/Author/Email']}"

                        },

                        {

                            "title": "Employee",

                            "value": "@{triggerOutputs()?['body/Title']}"

                        },

                        {

                            "title": "Start Date",

                            "value": "@{triggerOutputs()?['body/StateDate']}"

                        },

                        {

                            "title": "End Date",

                            "value": "@{triggerOutputs()?['body/EndDate']}"

                        }

                    ]

                }

            ]

        },

        {

            "type": "Container",

            "items": [

                {

                    "type": "ActionSet",

                    "actions": [

                        {

                            "type": "Action.Submit",

                            "title": "Approve",

                            "style": "positive",

                            "data": {

                                "id": "@{triggerOutputs()?['body/ID']}",

                                "action": "approve"

                            }

                        },

                        {

                            "type": "Action.ShowCard",

                            "title": "Reject",

                            "style": "destructive",

                            "card": {

                                "type": "AdaptiveCard",

                                "body": [

                                    {

                                        "type": "Input.Text",

                                        "id": "RejectCommentID",

                                        "placeholder": "Please specify an appropriate reason for rejection.",

                                        "isMultiline": true

                                    }

                                ],

                                "actions": [

                                    {

                                        "type": "Action.Submit",

                                        "title": "Send",

                                        "data": {

                                            "id": "@{triggerOutputs()?['body/ID']}",

                                            "action": "reject"

                                        }

                                    }

                                ],

                                "$schema": "http://adaptivecards.io/schemas/adaptive-card.json"

                            }

                        }

                    ]

                }

            ]

        }

    ],

    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",

    "version": "1.2",

    "fallbackText": "This card requires Adaptive Cards v1.2 support to be rendered properly."

}

 

Step 2 – Building The Flow

  • To create the Flow, Go to Power Automate -> Create -> Start from Blank -> Automated Flow.
  • Give an appropriate name for the Flow and select the “When an item is created” trigger and click on Create button.

Rahman1005_1-1707802998021.png

 

  • Add “Post an Adaptive Card to Teams Channel and wait for response” action.

 

  • Team: Select the Team in which you want to post the approval
  • Channel: Select the Channel in which you want to post the approval
  • Message: Copy the json given above and paste it in the message section and ensure the dynamic content is copied properly, or if you have built your own adaptive card then paste your json here and add any dynamic content as required.
  • Update Message: Provide the update message, which will be shown after approver user has provided the decision using the card.
  • Should update card: Select yes here.

Rahman1005_2-1707802998026.png

 

 

  • Add “Condition” action to check whether approver has approved or rejected the request, on left hand side of the condition copy.
  • body(' Postadaptivecardandwaitforaresponse')['submitActionId'] expression (without quotes) and on right hand side provide “Approve” value or whatever your action value is defined in your adaptive card for the buttons.

 

Rahman1005_3-1707802998026.png

 

  • Under the “yes” branch to update the item and send message to the employee once leave request approval or rejected, do following.

Rahman1005_4-1707802998030.png

 

Rahman1005_5-1707802998032.png

 

  • Finally, the navigate to SharePoint site and create a new leave request.

Rahman1005_6-1707802998035.png

 

  • Manger will receive message in teams chats please refer below screen short.

Rahman1005_7-1707802998039.png

 

  • Adaptive card wait for response.

Rahman1005_8-1707802998040.png

 

 

  • Once manager approve’ s the request employee will receive message in teams that his leave request is approved.

Rahman1005_9-1707802998041.png

 

 

Complete Flow.

Rahman1005_10-1707802998044.png

 

 

Thank you...!

Rahman1005
Advocate III
Advocate III

In this post, we’ll work with a SharePoint List using The SharePoint Send HTTP Request action in Power Automate

we will see the most used methods, such as GET, POST, PATCH, and DELETE.

To access SharePoint resources using REST, construct a RESTful HTTP request by using the OData standard.

Method – Get

URL – https://{site_url}/_api/lists/getbytitle('{list_name}')/items

Accept – "application/json;odata=verbose"

 

  • Log in to the flow portal with your Office 365 credentials.
  • For this article, I have created a SharePoint List. Please find its schema below.

Rahman1005_1-1707380582694.png

 

  • Go to https://make.powerapps.com/, then click on "New Flow," choose "Automated cloud flow," provide a flow name, and select "when an item is created." Please consult the screenshot below for reference.

Rahman1005_2-1707380582696.png

 

 

Rahman1005_3-1707380582701.png

 

 

  • Following Next, we must choose the site address and then select the list.

Rahman1005_4-1707380582702.png

 

  • Click on New Step and choose an operation pane, search for "Send an HTTP Request" under actions and select it.

In this window, please select the options as shown below.

  • Site Address: Choose your SharePoint Site.
  • Method: GET
  • Uri: _api/web/lists/getbytitle('List Name')/items.
  • Headers: As per business requirements.
  • Body: JSON body as per business requirements.

 

Rahman1005_5-1707380582703.png

 

  • Execute a GET request and check for any issues.

Rahman1005_6-1707380582705.png

 

 

Once GET request is executed, we need to do parse the response.

Take the result from preview step and generated JSON schema in Parse JSON.

Rahman1005_7-1707380582706.png

 

 

The response body, which is in JSON format, we need to use apply to each action get a result from the previous step, and then we use Compose Action to get a specific result.

 

Rahman1005_8-1707380582707.png

 

 

When we trigger the flow and see the result. Flow will get each item and display the Full Name, Email, and Employee Id as shown below.

 

Rahman1005_9-1707380582709.png

 

 

Rahman1005_10-1707380582710.png

 

 

Thank you..!

trice602
Super User
Super User

This is an FAQ and I wanted to share the flow so others can find it quickly and make it your own!  In this short walkthrough, we will email Microsoft Form attachments from a single question that allows more than one file upload and email them to someone.  At the end of the walkthrough, you will have the knowledge to do this yourself and most importantly, you will learn about the framework and actions you can use in other flows.  #neverstoplearning #sharingiscaring

Read more...

Bennykil
Regular Visitor

I found this while working with a colleague and was faced with a sticky situation at work. I have this table in my database. However, I would like to send the data from the period date a day late. For example, I would like an email reporting Monday data on a Tuesday morning. So Friday reports Thursday data.

 

Now, here’s the problem. I would like to report Friday data, not Sunday data on Monday. 

 

How did we solve it? Let's find out

Read more...

ThisIsAShame
Regular Visitor

This is an article that outlines how to use Dataverse to reassign an approval on the behalf of someone else. Lots of posts say that you can’t reassign an approval without manually making the user click “Reassign”, but I outline a flow below that lets you reassign any existing approval as long as you have Dataverse access and 1 Premium license. This means that you don’t have to edit your existing flows, or add any workarounds to your processes. This will simply replicate the “Reassign” button users have, but let’s you press it for them.

Read more...

365-Assist
Multi Super User
Multi Super User

Are you tired of scrolling through endless lists of initialized variables in Power Automate? I have created a workaround using parallel branches to streamline the workflow. 

 

I have also created a YouTube video that further explains the steps I used -> Power Automate - Group Initialize Variable actions (youtube.com)

Read more...

jag1976
Employee
Employee

In today's fast-paced business environment, the ability to swiftly and effectively export data stands as a cornerstone for maintaining a competitive edge. For users of Dynamics Customer Insight, a pivotal component in the Microsoft suite, the constraint of a limited data download capability from Dataverse tables has been a notable bottleneck. This limitation not only impedes the expediency of data exports in Customer Insight but also impacts on vital Dynamics Marketing functions such as lead generation and analytics.

Read more...

egregorich
Frequent Visitor

Microsoft has provided some PowerShell that allows admins to check their Power Platform environment for invalid Power Automate Licenses before it becomes an issue. You can run a check using PowerShell to see if you will have any issues.

Read more...

VJR
Multi Super User
Multi Super User

Since there is no direct tutorial that fully goes through each topic of the certification you would have to follow an approach of taking the scope topics and learning each topic and below guide would assist.

 

Here is a document regarding the same that contains:
➡ A direction on how to approach for the preparation
➡ Scope and Topics asked in the exam
➡ Tips and pointers
➡ What type of questions are asked
➡ Reference links to important pages

 

 

VJR
Multi Super User
Multi Super User

𝗨𝘀𝗲 𝗖𝗮𝘀𝗲 𝟱: 𝗣𝗼𝘄𝗲𝗿 𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗲 𝗗𝗲𝘀𝗸𝘁𝗼𝗽 + 𝗚𝗣𝗧

𝗧𝗶𝘁𝗹𝗲: Auto-reply based on type of incoming request

 

🔹Use it with the "Create text with GPT" action of Power Automate Desktop

Or

🔹Call GPT OpenAI API from Power Automate Desktop

https://powerusers.microsoft.com/t5/Power-Automate-Cookbook/Integrating-ChatGPT-with-Power-Automate-...

 

 


🔷 GPT prompt suffix to be added by RPA to the original text is:
[𝘞𝘳𝘪𝘵𝘦 𝘢𝘯 𝘢𝘶𝘵𝘰-𝘳𝘦𝘱𝘭𝘺 𝘧𝘰𝘳 𝘵𝘩𝘦 𝘢𝘣𝘰𝘷𝘦 𝘵𝘦𝘹𝘵]

🔷 Human can validate the auto-reply suggested by ChatGPT, make necessary modifications like add URLs, attach Receipts, catalogues, ticket number, etc. and reply back to the sender.

🔷 Customise the ChatGPT AI model for specific replies and keywords as per your business

🔷 Use it for an incoming email or wherever relevant during RPA automation.


Screenshots of Live outputs after calling the API from Power Automate Desktop.

 

 

VJR_0-1702549361682.png

 

VJR_1-1702549385327.png

 

VJR_2-1702549408278.png

 

 

 

VJR
Multi Super User
Multi Super User

𝗨𝘀𝗲 𝗖𝗮𝘀𝗲 𝟰: 𝗣𝗼𝘄𝗲𝗿 𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗲 𝗗𝗲𝘀𝗸𝘁𝗼𝗽 + 𝗚𝗣𝗧

𝗧𝗶𝘁𝗹𝗲: Language Translation services using GPT

 

🔹Use it with the "Create text with GPT" action of Power Automate Desktop

Or

🔹Call GPT OpenAI API from Power Automate Desktop

https://powerusers.microsoft.com/t5/Power-Automate-Cookbook/Integrating-ChatGPT-with-Power-Automate-...

 

 

 

RPA and ChatGPT can work together using language translation in various ways, such as:

1️⃣ 𝗗𝗮𝘁𝗮 𝗰𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻 𝗮𝗻𝗱 𝗮𝗻𝗮𝗹𝘆𝘀𝗶𝘀: RPA can collect data from various sources, such as websites, emails, desktop applications, PDFs, databases, in multiple languages, and ChatGPT can process and analyze the data to provide insights and recommendations.

2️⃣ 𝗟𝗮𝗻𝗴𝘂𝗮𝗴𝗲 𝗜𝗱𝗲𝗻𝘁𝗶𝗳𝗶𝗰𝗮𝘁𝗶𝗼𝗻 & 𝗧𝗿𝗮𝗻𝘀𝗹𝗮𝘁𝗶𝗼𝗻: RPA can identify the language of text data and ChatGPT can translate the text into a common language for communication and collaboration.

3️⃣ 𝗧𝗿𝗮𝗻𝘀𝗹𝗮𝘁𝗶𝗼𝗻 𝗶𝗺𝗽𝗿𝗼𝘃𝗲𝗺𝗲𝗻𝘁𝘀: RPA and ChatGPT can provide feedback and suggestions for improving the quality and accuracy of the translation.

4️⃣ 𝗟𝗮𝗻𝗴𝘂𝗮𝗴𝗲 𝗹𝗼𝗰𝗮𝗹𝗶𝘇𝗮𝘁𝗶𝗼𝗻: RPA can help localize content, such as websites, marketing materials, by translating the content into multiple languages, and ChatGPT can provide recommendations for adapting the content to the local culture and context.

5️⃣ 𝗟𝗮𝗻𝗴𝘂𝗮𝗴𝗲 𝘁𝗿𝗮𝗶𝗻𝗶𝗻𝗴: ChatGPT can help train language models and RPA can automate the process of data collection and preparation to improve the efficiency and effectiveness of the training.

...and more.

Overall, RPA and ChatGPT can complement each other in various aspects of 𝗹𝗮𝗻𝗴𝘂𝗮𝗴𝗲 𝘁𝗿𝗮𝗻𝘀𝗹𝗮𝘁𝗶𝗼𝗻 and across 𝘃𝗮𝗿𝗶𝗼𝘂𝘀 𝗱𝗼𝗺𝗮𝗶𝗻𝘀.

🔷 Below screenshots are ChatGPT’s response via API call from Power Automate Desktop.

Just like the other use cases I have shared earlier, a 𝗸𝗲𝘆 𝘁𝗶𝗽 here is to suffix the below text to the original text while calling the API

[“Please translate the above to <Name_Of_Supported_Language>”]

Refer highlighted in screenshots.

🔷 Can be used to translate from any of the 109 supported languages to any other

 

 

VJR_0-1702549101586.png

 

VJR_1-1702549122180.png

 

 

 

 

VJR
Multi Super User
Multi Super User

𝗨𝘀𝗲 𝗖𝗮𝘀𝗲 𝟮: 𝗣𝗼𝘄𝗲𝗿 𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗲 𝗗𝗲𝘀𝗸𝘁𝗼𝗽 + 𝗚𝗣𝗧

𝗧𝗶𝘁𝗹𝗲: Extract key value pairs from unstructured data

 

🔹Use it with the "Create text with GPT" action of Power Automate Desktop

Or

🔹Call GPT OpenAI API from Power Automate Desktop

https://powerusers.microsoft.com/t5/Power-Automate-Cookbook/Integrating-ChatGPT-with-Power-Automate-...

 

 

𝙒𝙤𝙧𝙠𝙛𝙡𝙤𝙬 𝙤𝙛 𝙍𝙋𝘼 𝙗𝙤𝙩:

𝗘𝘅𝗮𝗺𝗽𝗹𝗲 𝟭: 𝗜𝗧 𝗦𝘂𝗽𝗽𝗼𝗿𝘁

𝟭. 𝗥𝗣𝗔 𝗯𝗼𝘁: Power Automate Desktop (PAD) reads the above sources using API or via UI interaction or OCR.

𝟮. 𝗦𝗼𝘂𝗿𝗰𝗲 𝗰𝗼𝗻𝘁𝗮𝗶𝗻𝘀 𝗯𝗲𝗹𝗼𝘄 𝘁𝗲𝘅𝘁:
𝘋𝘦𝘢𝘳 𝘚𝘶𝘱𝘱𝘰𝘳𝘵,
𝘐 𝘢𝘮 𝘩𝘢𝘷𝘪𝘯𝘨 𝘢𝘯 𝘪𝘴𝘴𝘶𝘦 𝘸𝘪𝘵𝘩 𝘮𝘺 𝘤𝘰𝘮𝘱𝘶𝘵𝘦𝘳. 𝘛𝘩𝘦 𝘴𝘤𝘳𝘦𝘦𝘯 𝘬𝘦𝘦𝘱𝘴 𝘧𝘳𝘦𝘦𝘻𝘪𝘯𝘨 𝘢𝘯𝘥 𝘐 𝘤𝘢𝘯'𝘵 𝘴𝘦𝘦𝘮 𝘵𝘰 𝘧𝘪𝘯𝘥 𝘢 𝘴𝘰𝘭𝘶𝘵𝘪𝘰𝘯. 𝘐 𝘩𝘢𝘷𝘦 𝘵𝘳𝘪𝘦𝘥 𝘳𝘦𝘴𝘵𝘢𝘳𝘵𝘪𝘯𝘨 𝘵𝘩𝘦 𝘤𝘰𝘮𝘱𝘶𝘵𝘦𝘳 𝘴𝘦𝘷𝘦𝘳𝘢𝘭 𝘵𝘪𝘮𝘦𝘴 𝘣𝘶𝘵 𝘵𝘩𝘦 𝘱𝘳𝘰𝘣𝘭𝘦𝘮 𝘱𝘦𝘳𝘴𝘪𝘴𝘵𝘴. 𝘔𝘺 𝘤𝘰𝘮𝘱𝘶𝘵𝘦𝘳 𝘮𝘰𝘥𝘦𝘭 𝘪𝘴 𝘋𝘦𝘭𝘭 𝘐𝘯𝘴𝘱𝘪𝘳𝘰𝘯 15 𝘢𝘯𝘥 𝘵𝘩𝘦 𝘰𝘱𝘦𝘳𝘢𝘵𝘪𝘯𝘨 𝘴𝘺𝘴𝘵𝘦𝘮 𝘪𝘴 𝘞𝘪𝘯𝘥𝘰𝘸𝘴 10. 𝘗𝘭𝘦𝘢𝘴𝘦 𝘩𝘦𝘭𝘱 𝘮𝘦 𝘳𝘦𝘴𝘰𝘭𝘷𝘦 𝘵𝘩𝘪𝘴 𝘪𝘴𝘴𝘶𝘦 𝘢𝘴 𝘴𝘰𝘰𝘯 𝘢𝘴 𝘱𝘰𝘴𝘴𝘪𝘣𝘭𝘦.
𝘛𝘩𝘢𝘯𝘬 𝘺𝘰𝘶.
𝘝𝘪𝘫𝘢𝘺

𝟯. 𝗥𝗣𝗔 𝗯𝗼𝘁:
Sends the above text to ChatGPT suffixed as:
[Can you extract the key value pairs of the above text in Json format]

𝟰. 𝗥𝗲𝘀𝗽𝗼𝗻𝘀𝗲 𝗳𝗿𝗼𝗺 𝗖𝗵𝗮𝘁𝗚𝗣𝗧:
The corresponding key value pair of the above text in JSON.

𝟱. 𝗥𝗣𝗔 𝗯𝗼𝘁:
🔹"Convert JSON to Custom Object" - This is an action in Power Automate Desktop.
🔹RPA bot creates a ticket based on the key value pairs using API or UI interaction.

𝟲. 𝗙𝗶𝗻𝗮𝗹 𝗢𝘂𝘁𝗽𝘂𝘁 𝗮𝘀 𝗸𝗲𝘆 𝘃𝗮𝗹𝘂𝗲 𝗽𝗮𝗶𝗿𝘀:

VJR_0-1702548766962.png

 




𝗘𝘅𝗮𝗺𝗽𝗹𝗲 𝟮: 𝗥𝗲𝗰𝗲𝗶𝗽𝘁 𝗽𝗿𝗼𝗰𝗲𝘀𝘀𝗶𝗻𝗴
𝗜𝗻𝗽𝘂𝘁 𝘀𝗲𝗻𝘁 𝗯𝘆 𝗥𝗣𝗔:
"ABC Supermarket
1234 Main Street
Anytown, USA 12345

Date: 01/20/2023
Time: 11:45 AM
Receipt No.: 123456789

Item Quantity Price
Product A 1 $10.00
Product B 2 $5.00 each
Product C 3 $3.00 each

Subtotal: $32.00
Tax: $2.56
Total: $34.56

Payment Method: Visa
Card Number: **** **** **** 1234
Authorization Code: 123456

Thank you for shopping at ABC Supermarket!

Visit us again soon."
[Can you extract the key value pairs of the above text in Json format]

𝗙𝗶𝗻𝗮𝗹 𝗢𝘂𝘁𝗽𝘂𝘁 𝗮𝘀 𝗸𝗲𝘆 𝘃𝗮𝗹𝘂𝗲 𝗽𝗮𝗶𝗿𝘀:

VJR_1-1702548804196.png

 



𝗘𝘅𝗮𝗺𝗽𝗹𝗲 𝟯: 𝗦𝗮𝗹𝗲𝘀/𝗢𝗿𝗱𝗲𝗿 𝗣𝗿𝗼𝗰𝗲𝘀𝘀𝗶𝗻𝗴
𝗜𝗻𝗽𝘂𝘁 𝘀𝗲𝗻𝘁 𝗯𝘆 𝗥𝗣𝗔:
𝘋𝘦𝘢𝘳 𝘚𝘢𝘭𝘦𝘴,
𝘐 𝘸𝘰𝘶𝘭𝘥 𝘭𝘪𝘬𝘦 𝘵𝘰 𝘱𝘭𝘢𝘤𝘦 𝘢𝘯 𝘰𝘳𝘥𝘦𝘳 𝘧𝘰𝘳 𝘵𝘩𝘦 𝘧𝘰𝘭𝘭𝘰𝘸𝘪𝘯𝘨 𝘪𝘵𝘦𝘮𝘴: 10 𝘶𝘯𝘪𝘵𝘴 𝘰𝘧 𝘗𝘳𝘰𝘥𝘶𝘤𝘵 𝘈 (𝘚𝘒𝘜: 𝘈123) 5 𝘶𝘯𝘪𝘵𝘴 𝘰𝘧 𝘗𝘳𝘰𝘥𝘶𝘤𝘵 𝘉 (𝘚𝘒𝘜: 𝘉456) 20 𝘶𝘯𝘪𝘵𝘴 𝘰𝘧 𝘗𝘳𝘰𝘥𝘶𝘤𝘵 𝘊 (𝘚𝘒𝘜: 𝘊789) 𝘗𝘭𝘦𝘢𝘴𝘦 𝘭𝘦𝘵 𝘮𝘦 𝘬𝘯𝘰𝘸 𝘵𝘩𝘦 𝘵𝘰𝘵𝘢𝘭 𝘤𝘰𝘴𝘵 𝘰𝘧 𝘵𝘩𝘦 𝘰𝘳𝘥𝘦𝘳 𝘢𝘯𝘥 𝘵𝘩𝘦 𝘦𝘴𝘵𝘪𝘮𝘢𝘵𝘦𝘥 𝘥𝘦𝘭𝘪𝘷𝘦𝘳𝘺 𝘵𝘪𝘮𝘦.
𝘝𝘪𝘫𝘢𝘺
[Can you extract the key value pairs of the above text in Json format]

𝗙𝗶𝗻𝗮𝗹 𝗢𝘂𝘁𝗽𝘂𝘁:

VJR_2-1702548830240.png

 

 

 

 

Helpful resources

About the Author
  • Experienced Consultant with a demonstrated history of working in the information technology and services industry. Skilled in Office 365, Azure, SharePoint Online, PowerShell, Nintex, K2, SharePoint Designer workflow automation, PowerApps, Microsoft Flow, PowerShell, Active Directory, Operating Systems, Networking, and JavaScript. Strong consulting professional with a Bachelor of Engineering (B.E.) focused in Information Technology from Mumbai University.
  • I am a Microsoft Business Applications MVP and a Senior Manager at EY. I am a technology enthusiast and problem solver. I work/speak/blog/Vlog on Microsoft technology, including Office 365, Power Apps, Power Automate, SharePoint, and Teams Etc. I am helping global clients on Power Platform adoption and empowering them with Power Platform possibilities, capabilities, and easiness. I am a leader of the Houston Power Platform User Group and Power Automate community superuser. I love traveling , exploring new places, and meeting people from different cultures.
  • Read more about me and my achievements at: https://ganeshsanapblogs.wordpress.com/about MCT | SharePoint, Microsoft 365 and Power Platform Consultant | Contributor on SharePoint StackExchange, MSFT Techcommunity
  • Encodian Owner / Founder - Ex Microsoft Consulting Services - Architect / Developer - 20 years in SharePoint - PowerPlatform Fan
  • Founder of SKILLFUL SARDINE, a company focused on productivity and the Power Platform. You can find me on LinkedIn: https://linkedin.com/in/manueltgomes and twitter http://twitter.com/manueltgomes. I also write at https://www.manueltgomes.com, so if you want some Power Automate, SharePoint or Power Apps content I'm your guy 🙂
  • I am the Owner/Principal Architect at Don't Pa..Panic Consulting. I've been working in the information technology industry for over 30 years, and have played key roles in several enterprise SharePoint architectural design review, Intranet deployment, application development, and migration projects. I've been a Microsoft Most Valuable Professional (MVP) 15 consecutive years and am also a Microsoft Certified SharePoint Masters (MCSM) since 2013.
  • Big fan of Power Platform technologies and implemented many solutions.
  • Passionate #Programmer #SharePoint #SPFx #M365 #Power Platform| Microsoft MVP | SharePoint StackOverflow, Github, PnP contributor
  • Web site – https://kamdaryash.wordpress.com Youtube channel - https://www.youtube.com/channel/UCM149rFkLNgerSvgDVeYTZQ/
Join Blog
Interested in blogging for the community? Let us know.