Azure Logic App Workflow API Filtering Options

cloudteam 60 Reputation points
2025-04-29T15:26:15.61+00:00

What are the filtering options available for the Azure Logic App workflow list API?

The API endpoint in question is:
https://management.azure.com/subscriptions/{{subscription id}}/resourceGroups/{{resource group}}/providers/Microsoft.Web/sites/{{standard logic app name}}/workflows?api-version=2024-04-01

Specifically, the following information is sought:

  • Is it possible to filter workflows based on their status (enabled/disabled) and health state (healthy, unhealthy, not specified, unknown)? If so, how can this be achieved?
  • When can 'not specified' and 'unknown' statuses be expected in a workflow?
  • Is filtering based on creation time feasible? If yes, what is the method?
  • Is it possible to limit the number of records returned (e.g., to only the top 100)?

Efforts have been made to implement the last two filters, but they were unsuccessful. If feasible, examples of how to achieve this would be appreciated.

Azure Logic Apps
Azure Logic Apps
An Azure service that automates the access and use of data across clouds without writing code.
3,542 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Khadeer Ali 5,990 Reputation points Microsoft External Staff Moderator
    2025-05-07T14:43:58.1933333+00:00

    @cloudteam ,

    There’s been some confusion around the use of the $filter query in the Azure Logic Apps REST APIs. Based on our review of Microsoft’s documentation and direct testing, here’s what we found:

    The API endpoint to list workflows at the subscription level (GET /subscriptions/{subscriptionId}/providers/Microsoft.Logic/workflows) does support basic $filter operations, but only on high-level properties like name, location, and tags. This is confirmed in Microsoft’s official REST API documentation.

    However, for endpoints like /workflowRuns or /triggerHistories, which are often used to fetch execution data (e.g., filtering by run status or time range), $filter is either not supported or not fully functional — even under Logic App Standard or ISE (Premium). These endpoints typically return all runs, and any filtering has to be handled client-side.

    • If you need to filter runs by status, startTime, or other execution metadata, the recommended approach is to enable diagnostics to Log Analytics and query using Kusto (KQL).
    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.