Workflow Reporting?

I’m looking for a simple way to set up an automated report for workflow results. Basically, every day or once a week, a report is created and emailed to me that has a file with the status of all runs of a specific workflow.

Does anyone know of a simple way to do this, or something like it? Can it be done through a saved search? Or do I have to use Access Intelligence Center? Any help is appreciated.

ISC doesn’t have the Search feature for Workflow executions, it only Search Workflow definition events. I would use APIs to get the results and use any programming language like PS script to store the results in a file and send email.

For example, perform the below operations in PS scripts.

  1. Get all the enabled Workflow IDs by using list-workflows | SailPoint Developer Community and enabled filter.
  2. Iterate the response from #1 and pass each id to get-workflow-executions | SailPoint Developer Community to get all the workflow executions of a specific workflow and you can also filter by status.
  3. Based on your requirement, you can either store each Workflow execution results in different files or all in one file.
  4. Use Send-MailMessage with -Attachments command in the script to send email to the recipients. You need to ensure the successful SMTP connection with your infra.
  5. Set the script in a Scheduler task to execute it weekly.
1 Like

You could also look at doing this via SailPoint Workflow if you do not want do a lot of custom coding to get your report.

The Trigger you would want to look at is the Scheduled Trigger and use the HTTP action to send the api call to ISC. Then you would be able to use a number of operators to do any filtering and data clean up.

1 Like

Hey Suresh,

So, I’m using the List Workflow Executions API call to get the failed executions. I am running into a few inconveniences. There does not seem to be an option for specifying a time range filter or for searching multiple workflows at once. When I attempt to add a second path variable, it will not let me. Every syntax I have attempted in Bulk Editor has not worked either. It appears to ignore the extra workflow ID. I attempted:

id:841af750-0ed4-43e2-b5f6-9e1c5b5129c8,3d5cd3ec-569e-43f6-9e39-94144253ef72

as well as

id:841af750-0ed4-43e2-b5f6-9e1c5b5129c8
id:3d5cd3ec-569e-43f6-9e39-94144253ef72

and

id:841af750-0ed4-43e2-b5f6-9e1c5b5129c8
3d5cd3ec-569e-43f6-9e39-94144253ef72

They all only return the reply for the first workflow ID given.

As far as the call parameters, I started with this:

/workflows/:id/executions?filters=status eq "Failed"

Which works fine, but when I add any form of time filtering it gives me nothing. The documentation does mention "startTime” as a parameter, but none of the options I tried worked. I tried some of the following:

The end-goal here is to be able to send out a call that filters all my enabled workflows for any workflow failures in the past week.

HELP

It should support with the ISO-8601 format, I just tried with the below method, and it is returning the results.

{{baseUrl}}/v3/workflows/:id/executions?filters=status eq "Failed"&startTime gt 2025-10-22T23:00:00Z&closeTime lt 2025-10-23T23:00:00Z

But it is not filtering as expected and always returns all the results. You may need to dig deeper into the documentation since the API definition says it’s a string datetime. So, I’m not sure whether it consider the date comparison when we pass these parameters.

1 Like

I see what you’re saying. It allows the API call with the “Failed” filter to run, but like you said, it just returns everything. I tried a few different things, like keeping the entire string in the filter parameter, like this:

status eq "Failed"&startTime gt 2025-10-22T23:00:00Z&closeTime lt 2025-10-23T23:00:00Z

That didn’t make any difference. I also attempted adding quotations around the date/times, but nothing.

1 Like

Yes, I did try the same before I posted and not seeing any differences. Even I used the same value what SailPoint used in the Workflow API documentation and still it returns the same result.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.