We’re looking to move part of the API responsibility out of our back-end and into Zapier. To mitigate issues related to race conditions, we want to create a shared queue which ensures that Zaps that run concurrently all point to a single queue and release queued events once the Zap run is complete in the source Zap.
Currently, we have a number of Zaps that point to various endpoints in our back-end. Concurrent events can result in issues related to race conditions. In an attempt to solve this, all those Zaps call the same Sub-Zap in which a Delay After Queue step has been setup, with a delay of 30 seconds. After the delay, the Sub-Zap returns to the source Zaps, and the source Zaps then finishes its sequence of steps. This allows us to neatly queue events from various Zaps in the same queue.
However, this does not entirely eliminate the possibility of running into race condition issues.
So my question is this: Is there some way to ensure that a Zap run (run B) does not continue its sequence of steps until a previous Zap run (run A) has completed its sequence of steps?
In this manner, a queue of events only continues to the next event in the queue once a prior Zap run has been concluded.