I see this topic was up in 2018 and 6 years later I cannot help but think this may still be true.

I have a long workflow (17 steps) the create consumer record, create an offer record, create a cart record all of which are tracked and then a decision is made based on user rules on what they do and do not accept from an offer.

This is the server log and I believe this shows the offer as being accepted (would be nice if that is CLEARLY indicated on the workflow log). And yet when I look at the record, it was not updated even though the criteria was met. I also note that the value is auot_accepted but in the next screen the check to see if the offerStatus is updated uses Auto Accepted (Option Display) not auto_accepted (which I guess is the recorded Display Value)


Based on this, the last logic is for an offer to be Pending and it checks to see if offerStatus is empty. When I run the server logs for the last two minutes, certain actions come back before others which leads me to believe these DO NOT run sequentially.

Is that the case?

Read the Bubble Manual. It’s now all there

Short answer is, it depends. Client side actions will run in sequence, sever side actions will run as soon as it has all the data it requires to run ie a Result of Step X condition can force the action to run after Step X has completed.

In the back end the same thing applies. Actions run as soon as it has its required data.

The exception are custom workflows. Custom workflows are like client side actions, they run in sequence but the same principles as mentioned above apply within the Custom WFs themselves.

1 Like

I think this illustrates my point and hopefully they are addressing this in the next release of the workflows. It’s a critical error to not be consistent in a low code no code environment. If you illustrate workflows as sequential and then say “Well, no, they run as fast as they can” it negates the dependency that some steps in the workflow have on previous steps in the workflow.

I am receiving a JSON file from an API and the payload includes a Shopify storeURL - that is a key to Shopify, they cannot be duplicated. So it’s a key for me as well and it cannot be duplicated and it enables multitenancy (in part). So I have w workflow that is posting a new consumer record to Shopify and it’s about 8 steps in from where the URL is collected from the JSON payload (Its called the Request Data) so requestedata.storeurl = mystore.myshopify.com which when paired with a Shopify X-Access-Token gives my app access to the Shopify Adming for that store.

But on the 8th step, when I call the storage location for the token using the URL it returns = nothing. And so I get 401 errors for not authenticating. I put a step in front of the create Shopify customer record to capture the Shopify token using the same method in the Schedule API from the same data source and write it to a table. the table does not get the token. That tells me the “Do A Search for Store Tokens where storetokens.storeurl = requestdata.storeurl and each storetokens.shopify-access-token first item” is not working. If I use the previous step, it will not work. The token is in the tokens table, but the workflows, running out of sequence, are erroring out.

That visualization of a linear flow is a mistake. And a very hard one to figure out with the server logs unless you put in a step to capture the token before you need to use it in the Schedule API Workflow step. If I cannot pass the token to the API connector, the app is entirely broken.

Right now, it’s entirely broken.

1 Like