cancel
Showing results for 
Search instead for 
Did you mean: 
Jcook

Grabbing Error Message From Failed Run

Summary:

We will be using the Try - Catch structure to build out this solution.

This will involved 2 Scopes - Scopes are an action in Power Automate that can hold other actions.

 

Steps:

For our 2 Scopes we will name,

Scope1 = Try

Scope2 = Catch

 

In our Try scope we put all our regular actions that we expect to run on a successful run

In our Catch scope we put what we want to execute if anything from our Try has failed.

 

This is what it should look like:

Jcook_0-1597681660745.png

 

Now we want to configure run after on the Catch scope to enable this cope to run only if Try has failed

To do this, click the 3 dots on the Catch action, and click Configure run after, and check the has failed box

Jcook_1-1597681907678.png

Click Done.

 

Now it should look like this:

Jcook_2-1597681986802.png

Notice the red arrow, this is stating there is a Configure run after enabled.

 

Now in our Catch scope add a Compose action, we will use the expression result( )

The syntax for result() is:

 

 

result('ActionName')

 

 

So my expression looks like this:

 

 

result('Scope_-_Try')

 

 

Jcook_4-1597682104304.png

**NOTE: The result expression does not show up in the list of expressions when typing out the expression**

 

Next add a Parse JSON action, and pass the Outputs from the Compose.

Jcook_5-1597682575585.png

Here is the schema:

 

 

{
    "type": "array",
    "items": {
        "type": "object",
        "properties": {
            "name": {
                "type": "string"
            },
            "startTime": {
                "type": "string"
            },
            "endTime": {
                "type": "string"
            },
            "trackingId": {
                "type": "string"
            },
            "clientTrackingId": {
                "type": "string"
            },
            "clientKeywords": {
                "type": "array",
                "items": {
                    "type": "string"
                }
            },
            "code": {
                "type": "string"
            },
            "status": {
                "type": "string"
            },
            "error": {
                "type": "object",
                "properties": {
                    "code": {
                        "type": "string"
                    },
                    "message": {
                        "type": "string"
                    }
                }
            }
        },
        "required": [
            "name",
            "startTime",
            "endTime",
            "trackingId",
            "clientTrackingId",
            "clientKeywords",
            "code",
            "status",
            "error"
        ]
    }
}

 

 

 

After the Parse JSON action, add a Select action, this action will be used to only grab the data we want.

Put the Body in the From field, and than build out what information you want to see in this message.

Jcook_6-1597682808356.png

 

Here is a sample run:

Jcook_7-1597683543397.png

 

This Select output can than be used inside a Send email action or a Teams message.

 

 

 

Thanks for reading!

Check out my blog on flowaltdelete

Comments

Hi @Jcook ,

just checking. If the try scope has several steps, won’t you get all the steps in the result? So you have 5 steps in try scope and step 4 fails.. I think the result() function will also list the succeeding steps. Correct?

@Mglat 

Yes that is correct.

 

You could use a Filter Array to only return Status = "Failed"

Meet Our Blog Authors
  • 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.
  • Blog site: https://ganeshsanapblogs.wordpress.com/ MCT | SharePoint, Microsoft 365 and Power Platform Consultant | Contributor on SharePoint StackExchange, Techcommunity
  • Encodian Owner / Founder - Ex Microsoft Consulting Services - Architect / Developer - 20 years in SharePoint - PowerPlatform Fan
  • 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) 12 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/