René's URL Explorer Experiment


Title: How to use a Work queue in Power Automate - DEV Community

Open Graph Title: How to use a Work queue in Power Automate

X Title: How to use a Work queue in Power Automate

Description: I've already spoke about how powerful a workqueue in Power Automate is here, and this was before... Tagged with powerautomate, powerplatform, lowcode, rpa.

Open Graph Description: I've already spoke about how powerful a workqueue in Power Automate is here, and this was before...

X Description: I've already spoke about how powerful a workqueue in Power Automate is here, and this was before...

Keywords:

Opengraph URL: https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a

X: @thepracticaldev

direct link

Domain: dev.to


Hey, it has json ld scripts:
    {"@context":"http://schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a"},"url":"https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a","image":["https://media2.dev.to/dynamic/image/width=1080,height=1080,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs70rskfl544igk0rcrwn.png","https://media2.dev.to/dynamic/image/width=1280,height=720,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs70rskfl544igk0rcrwn.png","https://media2.dev.to/dynamic/image/width=1600,height=900,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs70rskfl544igk0rcrwn.png"],"publisher":{"@context":"http://schema.org","@type":"Organization","name":"DEV Community","logo":{"@context":"http://schema.org","@type":"ImageObject","url":"https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png","width":"192","height":"192"}},"headline":"How to use a Work queue in Power Automate","author":{"@context":"http://schema.org","@type":"Person","url":"https://dev.to/wyattdave","name":"david wyatt"},"datePublished":"2023-11-13T07:08:56Z","dateModified":"2025-08-27T12:55:27Z","mainEntity":{"@type":"DiscussionForumPosting","@id":"#article-discussion-1651361","headline":"How to use a Work queue in Power Automate","text":"\u003cp\u003eI've already spoke about how powerful a workqueue in Power Automate is \u003ca href=\"https://dev.to/wyattdave/power-automate-the-power-of-a-workqueue-4j1k\"\u003ehere\u003c/a\u003e, and this was before Microsoft released the functionality in the Power Platform. I was using custom tables/lists, but now Microsoft has prebuilt those tables for you, with some added sparkle.\u003c/p\u003e\n\n\u003cp\u003eBut now its in general release I thought I would share how to use a workqueue in Power Automate, it is more aimed at Desktop flows (like other RPA tools, e.g Blue Prism, as you have limited resources that need to be managed), but that doesn't mean you can't or shouldn't use them in your cloud flows.\u003c/p\u003e\n\n\u003col\u003e\n\u003cli\u003eSetup\u003c/li\u003e\n\u003cli\u003eHow to use\u003c/li\u003e\n\u003cli\u003eTrigger\u003c/li\u003e\n\u003cli\u003eFlow Action\u003c/li\u003e\n\u003cli\u003eDelete\u003c/li\u003e\n\u003cli\u003eExample\u003c/li\u003e\n\u003c/ol\u003e\n\n\n\u003chr\u003e\n\n\u003ch2\u003e\n  \u003ca name=\"1-setup\" href=\"#1-setup\"\u003e\n  \u003c/a\u003e\n  1. Setup\n\u003c/h2\u003e\n\n\u003cp\u003eA couple of things to know, Workqueues require a premium license, and each queue needs to be setup.\u003c/p\u003e\n\n\u003cp\u003eThe workqueue will be either under Monitor (old) or in the left menu. If it isn't there you can use this url:\u003c/p\u003e\n\n\u003cp\u003e\u003ccode\u003ehttps://make.powerautomate.com/environments/{your environment ID}/monitor/work-queues\u003c/code\u003e\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxts6adso3kx07qdz85gp.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxts6adso3kx07qdz85gp.png\" alt=\"work queue\" loading=\"lazy\" width=\"800\" height=\"371\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eWe then create the workqueue (it can be used for one process or if you are brave multiple), additionally you can set an auto time out for items (that way the expire and wont be used any more, though I have never found a reason for this yet).\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F10y3sywgd7h2i5obnt6j.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F10y3sywgd7h2i5obnt6j.png\" alt=\"create workqueue\" loading=\"lazy\" width=\"413\" height=\"409\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eYou now have your own workqueue, and best of all its own dashboard. This is one of the best benefits to Power Automate workqueues, from one screen you can see how your automation is performing. You can also share the workqueue so others can view the dashboard. \u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr1un9j2yyw1adfgy3f7m.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr1un9j2yyw1adfgy3f7m.png\" alt=\"dashboard\" loading=\"lazy\" width=\"800\" height=\"381\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eThe Advanced Details shows the guid (workqueue id) and key for the workqueue, these will be needed to process the workqueue.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsviv4tsc5t0e6ngd03as.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsviv4tsc5t0e6ngd03as.png\" alt=\"advanced details\" loading=\"lazy\" width=\"410\" height=\"556\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eOn top of viewing you can also edit the workqueue, so you can add items, delete them, and edit them. It can become a kind of control room for human in the loop actions if you need. e.g. items could be stacked up, when enough are ready a operator could log in, view all the ready items, categorise them and then release them to be processed by the next flow. This is one of the most powerful things the Power Automate Workqueue function adds, as you could replicate it all yourself with your own Dataverse table or SharePoint list, but you wont get the control room (without maybe a custom app).\u003c/p\u003e\n\n\u003ch2\u003e\n  \u003ca name=\"2-how-to-use\" href=\"#2-how-to-use\"\u003e\n  \u003c/a\u003e\n  2. How to use\n\u003c/h2\u003e\n\n\u003cp\u003eThe workqueue has a few predefined fields you can use:\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxsdort7ako28os3ei5ms.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxsdort7ako28os3ei5ms.png\" alt=\"fields\" loading=\"lazy\" width=\"279\" height=\"498\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eName -  I use as plane text key, it doesn't have to be unique but should help dashboard users track e.g email subject\u003c/li\u003e\n\u003cli\u003ePriority - Low/Medium/Heigh, self explanatory but useful when you filter your queue\u003c/li\u003e\n\u003cli\u003eUnique Id or reference - this does need to be unique and I use to link to other systems e.g. Email message id\u003c/li\u003e\n\u003cli\u003eExpiration date - date \u0026amp; time when you want to auto stop processing the item\u003c/li\u003e\n\u003cli\u003eInput - this is any data you may want to use throughout the process, I recommend creating a JSON that you then parse\u003c/li\u003e\n\u003cli\u003eProcessing notes - these are your tags, tags are used to identify where in the process the item is and helps trigger the next step\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003eExample of input for email\u003cbr\u003e\n\u003c/p\u003e\n\n\u003cdiv class=\"highlight js-code-highlight\"\u003e\n\u003cpre class=\"highlight plaintext\"\u003e\u003ccode\u003e{\n  \"from\":{emailAddress},\n  \"attachment link\":{sharepoint url},\n  \"body\":{emailBody}\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cdiv class=\"highlight__panel js-actions-panel\"\u003e\n\u003cdiv class=\"highlight__panel-action js-fullscreen-code-action\"\u003e\n    \u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"\u003e\u003ctitle\u003eEnter fullscreen mode\u003c/title\u003e\n    \u003cpath d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\u003e\u003c/path\u003e\n\u003c/svg\u003e\n\n    \u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"\u003e\u003ctitle\u003eExit fullscreen mode\u003c/title\u003e\n    \u003cpath d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\u003e\u003c/path\u003e\n\u003c/svg\u003e\n\n\u003c/div\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n\n\n\n\u003cp\u003eExample of Processing note tags for email\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eExcel\u003c/li\u003e\n\u003cli\u003eWord\u003c/li\u003e\n\u003cli\u003ePDF\u003c/li\u003e\n\u003cli\u003eRequestApproval\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2\u003e\n  \u003ca name=\"3-trigger\" href=\"#3-trigger\"\u003e\n  \u003c/a\u003e\n  3. Trigger\n\u003c/h2\u003e\n\n\u003cp\u003eTo trigger our flows from the workqueue we are going to use the \u003ccode\u003eWhen a row is added, modified or deleted\u003c/code\u003e action.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd310mw9h506e4u9x8ydh.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd310mw9h506e4u9x8ydh.png\" alt=\"trigger action\" loading=\"lazy\" width=\"504\" height=\"194\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eOur first flow should be change type created, all future flows Modified. To ensure that our flows run at the right time we need to set trigger conditions. The conditions should in general include 3 conditions:\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eWorkqueue ID (so we only run on right queue as the tables are shared, this is from our Advanced Details)\u003c/li\u003e\n\u003cli\u003eStatus code (e.g so wont run if on Hold)\u003c/li\u003e\n\u003cli\u003eProcessing notes (uses the tag so runs right flow)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003ee.g.\u003cbr\u003e\n\u003c/p\u003e\n\n\u003cdiv class=\"highlight js-code-highlight\"\u003e\n\u003cpre class=\"highlight plaintext\"\u003e\u003ccode\u003e@and(\n    equals(triggerOutputs()?['body/processingresult'],'excel')\n,\n    equals(triggerOutputs()?['body/statuscode'],1)\n,\n    equals(triggerOutputs()?['body/_workqueueid_value'],parameters('workqueueID (workqueue)'))\n)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cdiv class=\"highlight__panel js-actions-panel\"\u003e\n\u003cdiv class=\"highlight__panel-action js-fullscreen-code-action\"\u003e\n    \u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"\u003e\u003ctitle\u003eEnter fullscreen mode\u003c/title\u003e\n    \u003cpath d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\u003e\u003c/path\u003e\n\u003c/svg\u003e\n\n    \u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"\u003e\u003ctitle\u003eExit fullscreen mode\u003c/title\u003e\n    \u003cpath d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\u003e\u003c/path\u003e\n\u003c/svg\u003e\n\n\u003c/div\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n\n\n\n\u003ch2\u003e\n  \u003ca name=\"4-flow-action\" href=\"#4-flow-action\"\u003e\n  \u003c/a\u003e\n  4. Flow Action\n\u003c/h2\u003e\n\n\u003cp\u003eOnce triggered we need to complete the action and update the item so that it can trigger the next flow/call Human in the Loop. Inline with trigger, we are using our standard Dataverse actions, this time \u003ccode\u003eUpdate a row\u003c/code\u003e.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88xsqbpth87e77y5waan.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88xsqbpth87e77y5waan.png\" alt=\"update row\" loading=\"lazy\" width=\"510\" height=\"807\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eWe use \u003ccode\u003etriggerOutputs()?['body/workqueueitemid']\u003c/code\u003e as our Row ID, and the update our Processing Result with the next tag, and if needed the Status \u0026amp; Status Reason.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk1h0jzhle41agyv185it.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk1h0jzhle41agyv185it.png\" alt=\"status drop\" loading=\"lazy\" width=\"485\" height=\"332\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawrxk2msqt7oy861va34.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawrxk2msqt7oy861va34.png\" alt=\"status reason drop\" loading=\"lazy\" width=\"471\" height=\"354\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eTo get our input data we use a simple \u003ccode\u003eParse JSON\u003c/code\u003e\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2hich1clvmy84r8e7uvq.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2hich1clvmy84r8e7uvq.png\" alt=\"parse json\" loading=\"lazy\" width=\"497\" height=\"287\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eYou can update the data if need, just update the input field, though for best practice I try not too.\u003c/p\u003e\n\n\u003ch2\u003e\n  \u003ca name=\"5-delete\" href=\"#5-delete\"\u003e\n  \u003c/a\u003e\n  5. Delete\n\u003c/h2\u003e\n\n\u003cp\u003eIf we are processing a lot of items we can end up with a lot of data (and Dataverse is not cheap), so our workqueue should not be used as a data repository. If you need to record the information save it in a SharePoint list, SQL database, or another Dataverse table if you have lots of money 😎.\u003c/p\u003e\n\n\u003cp\u003eThere are 2 ways to keep you queue tidy, delete each item when done, or clear the whole queue at the end of the process.\u003c/p\u003e\n\n\u003cp\u003eDeleting one item at a time we just use the standard Dataverse \u003ccode\u003eDelete a row\u003c/code\u003eaction.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpffl78f931ep5gpuyn1x.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpffl78f931ep5gpuyn1x.png\" alt=\"delete item\" loading=\"lazy\" width=\"508\" height=\"171\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eTo do the whole queue could be more complicated, luckily Microsoft has your back with the Dataverse \u003ccode\u003ePerform a bound action\u003c/code\u003e action.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41qlmn690xbh4s56szbx.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41qlmn690xbh4s56szbx.png\" alt=\"cear work queue action\" loading=\"lazy\" width=\"497\" height=\"159\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eJust select the 'Work Queues item' table, ClearWorkQueue action, and use the workqueue id from the advanced details.\u003c/p\u003e\n\n\u003ch2\u003e\n  \u003ca name=\"6-example\" href=\"#6-example\"\u003e\n  \u003c/a\u003e\n  6. Example\n\u003c/h2\u003e\n\n\u003cp\u003eSo when can/should we use a workqueue, I definitely recommend for large complex processes with lots of child flows. I also think anything with lots of Human in the Loop steps is a great use case. The other is related conditions.\u003c/p\u003e\n\n\u003cp\u003eA simple example would be:\u003c/p\u003e\n\n\u003cp\u003eWe have a flow that can only run when 2 reports are received. They can come at anytime and in any order (so no cheating and running on the second report).\u003c/p\u003e\n\n\u003cp\u003eWe have 2 flows, one that is triggered by emails. If the attachment is not valid it creates an item in the workqueue and sets Hold so a Human in the Loop can check. If they find it is the right report, with something like the wrong file name, they can update the item so that it continues in the process.\u003c/p\u003e\n\n\u003cp\u003eNext it checks to see if there are any queued items, if yes they update it, else it creates a new item.\u003c/p\u003e\n\n\u003cp\u003eThe reports are added as tags, the second flow only runs when the Process Notes contains both of the reports.\u003c/p\u003e\n\n\u003cp\u003e\u003ca href=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp377hjzcok3kq6wjf0m8.png\" class=\"article-body-image-wrapper\"\u003e\u003cimg src=\"https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp377hjzcok3kq6wjf0m8.png\" alt=\" \" loading=\"lazy\" width=\"800\" height=\"717\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eThis is a very basic example, and there are other ways to do it, but having the functionality built in, and easy to scale (more reports, more steps) is really useful.\u003c/p\u003e\n\n\u003cp\u003eOverall workqueues may be best for Desktop flows (there because you have limited resources, you can use additional actions like 'get next item' and load balance those resources), but they are still very useful for cloud flows.\u003c/p\u003e\n\n\n\u003chr\u003e\n\n\u003cp\u003e\u003cstrong\u003eFurther Reading\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://powerautomate.microsoft.com/en-ca/blog/microsoft-power-automate-work-queues-are-generally-available/\" target=\"_blank\" rel=\"noopener noreferrer\"\u003ehttps://powerautomate.microsoft.com/en-ca/blog/microsoft-power-automate-work-queues-are-generally-available/\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://learn.microsoft.com/en-us/power-automate/desktop-flows/actions-reference/workqueues\" target=\"_blank\" rel=\"noopener noreferrer\"\u003ehttps://learn.microsoft.com/en-us/power-automate/desktop-flows/actions-reference/workqueues\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n","author":{"@type":"Person","name":"david wyatt","url":"https://dev.to/wyattdave"},"datePublished":"2023-11-13T07:08:56Z","dateModified":"2025-08-27T12:55:27Z","url":"https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a","interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":35}],"comment":[{"@type":"Comment","@id":"#comment-1106954","text":"\u003cp\u003eWhat are some of the benefits of using the power Automate workqueue vs building your own in SharePoint? Beyond the obvious row limitations which can be overcome with proper indexing. \u003c/p\u003e\n\n\u003cp\u003eJust wondering why pay for premium here if not needed\u003c/p\u003e\n\n","author":{"@type":"Person","name":"Rob Rising","url":"https://dev.to/robotrising"},"datePublished":"2023-11-20T14:15:48Z","dateModified":"2023-11-20T14:15:48Z","url":"https://dev.to/robotrising/comment/2apd4","interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":2}],"comment":[{"@type":"Comment","@id":"#comment-1106983","text":"\u003cp\u003eIt's a good question, the real benefits I see are:\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eIt's built in to the platform (so no need to make it)\u003c/li\u003e\n\u003cli\u003eEasier alm \u003c/li\u003e\n\u003cli\u003e\u003cp\u003eThe control room - it can be shared really easily \u003cbr\u003e\nBut there are some negatives\u003c/p\u003e\u003c/li\u003e\n\u003cli\u003e\u003cp\u003eProcess rules (can't move from hold to in progress etc)\u003c/p\u003e\u003c/li\u003e\n\u003cli\u003e\u003cp\u003eLimited fields\u003c/p\u003e\u003c/li\u003e\n\u003cli\u003e\u003cp\u003eBuggy (doesn't always update in control room\u003c/p\u003e\u003c/li\u003e\n\u003cli\u003e\u003cp\u003ePremium as you said \u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003eI still have SharePoint workqueue and in no rush to move, but I do think built in ones are the future \u003c/p\u003e\n\n","author":{"@type":"Person","name":"david wyatt","url":"https://dev.to/wyattdave"},"datePublished":"2023-11-20T15:03:07Z","dateModified":"2023-11-20T15:03:07Z","url":"https://dev.to/wyattdave/comment/2ape7","interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":2}],"parentItem":{"@type":"Comment","@id":"#comment-1106954"}}]}]}}
  

og:typearticle
og:site_nameDEV Community
twitter:creator@wyattDaveDev
twitter:cardsummary_large_image
twitter:widgets:new-embed-designon
og:imagehttps://media2.dev.to/dynamic/image/width=1000,height=500,fit=cover,gravity=auto,format=auto/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s70rskfl544igk0rcrwn.png
twitter:image:srchttps://media2.dev.to/dynamic/image/width=1000,height=500,fit=cover,gravity=auto,format=auto/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s70rskfl544igk0rcrwn.png
last-updated2026-02-20 10:27:56 UTC
user-signed-infalse
head-cached-at1771583276
environmentproduction
search-scripthttps://assets.dev.to/assets/Search-6e1dc0f4262843117fad18fce2ccf6c60738a44a3039e0f679cf98fb2e045948.js
apple-mobile-web-app-titledev.to
application-namedev.to
theme-color#000000
forem:nameDEV Community
forem:logohttps://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8j7kvp660rqzt99zui8e.png
forem:domaindev.to

Links:

Skip to contenthttps://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#main-content
https://dev.to/
Powered by Algolia Search https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral
Log in https://dev.to/enter?signup_subforem=1
Create account https://dev.to/enter?signup_subforem=1&state=new-user
Share to X https://twitter.com/intent/tweet?text=%22How%20to%20use%20a%20Work%20queue%20in%20Power%20Automate%22%20by%20%40wyattDaveDev%20%23DEVCommunity%20https%3A%2F%2Fdev.to%2Fwyattdave%2Fhow-to-use-a-workqueue-in-power-automate-1o9a
Share to LinkedIn https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fdev.to%2Fwyattdave%2Fhow-to-use-a-workqueue-in-power-automate-1o9a&title=How%20to%20use%20a%20Work%20queue%20in%20Power%20Automate&summary=I%27ve%20already%20spoke%20about%20how%20powerful%20a%20workqueue%20in%20Power%20Automate%20is%20here%2C%20and%20this%20was%20before...&source=DEV%20Community
Share to Facebook https://www.facebook.com/sharer.php?u=https%3A%2F%2Fdev.to%2Fwyattdave%2Fhow-to-use-a-workqueue-in-power-automate-1o9a
Share to Mastodon https://toot.kytta.dev/?text=https%3A%2F%2Fdev.to%2Fwyattdave%2Fhow-to-use-a-workqueue-in-power-automate-1o9a
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a
Report Abusehttps://dev.to/report-abuse
https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs70rskfl544igk0rcrwn.png
https://dev.to/wyattdave
david wyatthttps://dev.to/wyattdave
https://dev.to/++
#powerautomatehttps://dev.to/t/powerautomate
#powerplatformhttps://dev.to/t/powerplatform
#rpahttps://dev.to/t/rpa
#lowcodehttps://dev.to/t/lowcode
How to (17 Part Series)https://dev.to/wyattdave/series/22764
1 Power Platform Connectors - Go Custom https://dev.to/wyattdave/power-platform-connectors-go-custom-47if
2 How to- Power Automate Bulk Email https://dev.to/wyattdave/how-to-power-automate-bulk-email-3c58
... 13 more parts... https://dev.to/wyattdave/how-to-use-power-automate-instead-of-power-apps-3iob
3 How to – Use Power Automate Instead of Power Apps https://dev.to/wyattdave/how-to-use-power-automate-instead-of-power-apps-3iob
4 How to - Make a Flow Chart Power App https://dev.to/wyattdave/how-to-make-a-flow-chart-power-app-1phh
5 How to - Web scrape with Power Automate Cloud https://dev.to/wyattdave/how-to-web-scrape-with-power-automate-cloud-4h16
6 Power Apps Cards - How to Make Planning Poker https://dev.to/wyattdave/power-apps-cards-how-to-make-planning-poker-3oi4
7 Power Automate - Flow Logging in App Insights https://dev.to/wyattdave/power-automate-flow-logging-in-app-insights-lp
8 How to use a Work queue in Power Automate https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a
9 How to update contents of a Zip file with Power Automate https://dev.to/wyattdave/how-to-update-contents-of-a-zip-file-with-power-automate-3b1b
10 Read Only Sharing in Power Automate https://dev.to/wyattdave/read-only-sharing-in-power-automate-32hl
11 How to Create Exam Marker with Power Automate and MS Forms https://dev.to/wyattdave/how-to-create-exam-marker-with-power-automate-and-ms-forms-2mop
12 How to - Power Apps Getting Polling Update from File Upload https://dev.to/wyattdave/how-to-power-apps-getting-polling-update-from-file-upload-547g
13 How to - Process CSV in Power Automate https://dev.to/wyattdave/how-to-process-csv-in-power-automate-535f
14 How to Create Your Own Form with Power Automate https://dev.to/wyattdave/how-to-create-your-own-form-with-power-automate-4546
15 How to Publish a Power Platform Connector https://dev.to/wyattdave/how-to-publish-a-power-platform-custom-connector-2ihi
16 How to - Convert HTML Table to JSON in Power Automate https://dev.to/wyattdave/how-to-convert-html-table-to-json-power-automate-5gmp
17 How to Track Savings in Power Automate https://dev.to/wyattdave/how-to-track-savings-in-power-automate-1gp7
herehttps://dev.to/wyattdave/power-automate-the-power-of-a-workqueue-4j1k
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#1-setup
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxts6adso3kx07qdz85gp.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F10y3sywgd7h2i5obnt6j.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr1un9j2yyw1adfgy3f7m.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsviv4tsc5t0e6ngd03as.png
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#2-how-to-use
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxsdort7ako28os3ei5ms.png
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#3-trigger
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd310mw9h506e4u9x8ydh.png
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#4-flow-action
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88xsqbpth87e77y5waan.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk1h0jzhle41agyv185it.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawrxk2msqt7oy861va34.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2hich1clvmy84r8e7uvq.png
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#5-delete
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpffl78f931ep5gpuyn1x.png
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41qlmn690xbh4s56szbx.png
https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#6-example
https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp377hjzcok3kq6wjf0m8.png
https://powerautomate.microsoft.com/en-ca/blog/microsoft-power-automate-work-queues-are-generally-available/https://powerautomate.microsoft.com/en-ca/blog/microsoft-power-automate-work-queues-are-generally-available/
https://learn.microsoft.com/en-us/power-automate/desktop-flows/actions-reference/workqueueshttps://learn.microsoft.com/en-us/power-automate/desktop-flows/actions-reference/workqueues
How to (17 Part Series)https://dev.to/wyattdave/series/22764
1 Power Platform Connectors - Go Custom https://dev.to/wyattdave/power-platform-connectors-go-custom-47if
2 How to- Power Automate Bulk Email https://dev.to/wyattdave/how-to-power-automate-bulk-email-3c58
... 13 more parts... https://dev.to/wyattdave/how-to-use-power-automate-instead-of-power-apps-3iob
3 How to – Use Power Automate Instead of Power Apps https://dev.to/wyattdave/how-to-use-power-automate-instead-of-power-apps-3iob
4 How to - Make a Flow Chart Power App https://dev.to/wyattdave/how-to-make-a-flow-chart-power-app-1phh
5 How to - Web scrape with Power Automate Cloud https://dev.to/wyattdave/how-to-web-scrape-with-power-automate-cloud-4h16
6 Power Apps Cards - How to Make Planning Poker https://dev.to/wyattdave/power-apps-cards-how-to-make-planning-poker-3oi4
7 Power Automate - Flow Logging in App Insights https://dev.to/wyattdave/power-automate-flow-logging-in-app-insights-lp
8 How to use a Work queue in Power Automate https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a
9 How to update contents of a Zip file with Power Automate https://dev.to/wyattdave/how-to-update-contents-of-a-zip-file-with-power-automate-3b1b
10 Read Only Sharing in Power Automate https://dev.to/wyattdave/read-only-sharing-in-power-automate-32hl
11 How to Create Exam Marker with Power Automate and MS Forms https://dev.to/wyattdave/how-to-create-exam-marker-with-power-automate-and-ms-forms-2mop
12 How to - Power Apps Getting Polling Update from File Upload https://dev.to/wyattdave/how-to-power-apps-getting-polling-update-from-file-upload-547g
13 How to - Process CSV in Power Automate https://dev.to/wyattdave/how-to-process-csv-in-power-automate-535f
14 How to Create Your Own Form with Power Automate https://dev.to/wyattdave/how-to-create-your-own-form-with-power-automate-4546
15 How to Publish a Power Platform Connector https://dev.to/wyattdave/how-to-publish-a-power-platform-custom-connector-2ihi
16 How to - Convert HTML Table to JSON in Power Automate https://dev.to/wyattdave/how-to-convert-html-table-to-json-power-automate-5gmp
17 How to Track Savings in Power Automate https://dev.to/wyattdave/how-to-track-savings-in-power-automate-1gp7
Create template https://dev.to/settings/response-templates
Dismisshttps://dev.to/404.html
https://dev.to/robotrising
Rob Rising https://dev.to/robotrising
Rob Rising https://dev.to/robotrising
Nov 20 '23 https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#comment-2apd4
Copy linkhttps://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#comment-2apd4
https://dev.to/wyattdave
david wyatt https://dev.to/wyattdave
https://dev.to/++
david wyatt https://dev.to/wyattdave
Nov 20 '23 https://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#comment-2ape7
Copy linkhttps://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a#comment-2ape7
Code of Conducthttps://dev.to/code-of-conduct
Report abusehttps://dev.to/report-abuse
permalinkhttps://dev.to/wyattdave/how-to-use-a-workqueue-in-power-automate-1o9a
reporting abusehttps://dev.to/report-abuse
david wyatt https://dev.to/wyattdave
david wyatthttps://dev.to/wyattdave
Power Automate - Building Readable Flows #powerautomate #powerplatform #lowcode #rpa https://dev.to/wyattdave/power-automate-building-readable-flows-dkd
Power Platform - Dealing With Tech Debt #powerplatform #powerapps #powerautomate #lowcode https://dev.to/wyattdave/power-platform-dealing-with-tech-debt-1gim
Power Apps- Moving Away From Inline Code #powerapps #powerplatform #powerfx #lowcode https://dev.to/wyattdave/power-apps-moving-away-from-inline-code-11ma
https://aistudio.google.com/?utm_source=partner&utm_medium=partner&utm_campaign=FY25-Global-DEVpartnership-sponsorship-AIS&utm_content=-&utm_term=-&bb=146443
https://neon.tech/?ref=devto&bb=146443
https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral&bb=146443
DEV Communityhttps://dev.to/
Home https://dev.to/
About https://dev.to/about
Contact https://dev.to/contact
MLH https://mlh.io/
Code of Conduct https://dev.to/code-of-conduct
Privacy Policy https://dev.to/privacy
Terms of Use https://dev.to/terms
Foremhttps://www.forem.com
open sourcehttps://dev.to/t/opensource
DEVhttps://dev.to
Ruby on Railshttps://dev.to/t/rails
Log in https://dev.to/enter?signup_subforem=1
Create account https://dev.to/enter?signup_subforem=1&state=new-user

Viewport: width=device-width, initial-scale=1.0, viewport-fit=cover

Robots: max-snippet:-1, max-image-preview:large, max-video-preview:-1


URLs of crawlers that visited me.