When creating a trigger-based automation, it’d be great to be able to only have it trigger when a new row is added. In this case, it’s a row that’s adding through Zapier from a form, that should then be triggered.
Is this on the radar and/or is there a workaround for this?
One workaround would be adding a column to indicate if the row is a new row:
NewRow = thisRow.Modified()=thisRow.Created()
Then add a If step to your automation, testing for [Step 1 Result].NewRow.
PS: I tried [Step 1 Result].Created() = [Step 1 Result].Modified() but this always returns true for all rows, new or existing. It seems as the automation creates a buffer row, even though the When rule states that [Step 1 Result] is a reference to the actual row.
@Dalmo_Mendonca were you able to get this to work? I have done something similar by creating another helper table that looks at the number of rows without button results, and when a new row pops up it doesn’t have any button results so the button is pressable, it changes the state of the helper column count from 0 to 1 and the automation, which is watching the helper table, is supposed to push the buttons. This would have the effect of ‘automation on new row’ but its not working. When I test the automation it works, but not by itself.
+1 for this. I think it would be a common need and the workarounds are a bit janky.
I suppose default column values covers a good number of use cases.
The particular use case inspiring this post is: when a new row is created, I need to create a few rows in a different table, and LookUp column them to the new row.
For future browsers, as a workaround you can create an automation that triggers on row change for one of the built-in immutable columns like Row ID or Created On.
The automation will run the first time the row is created, and never again since the immutable column never changes.
Hello, I’ve tried so many variations and nothing seems to work consistently.
The watch immutable column trick doesn’t seem to trigger anything ever
And then I tried comparing an immutable created column with the step 1 result.created() and that didn’t work. For that, I’ve tried direct comparison (=), a duration calculation calculating the immutable column - now() and then comparing to a duration of 30 seconds, and then trying to truncate the immutable column and the step 1 result.created() to the minute.
None of those worked consistently. Am I missing something?
A new trigger of “New Row” would be the ultimate feature solution here, rather than these workarounds.
I use an automation in combination with one special purpose column: I have a checkbox column (called ’ is new row’ and I have specified that the value of this checkbox is checked upon creating a new row. This column is hidden and not used for any other purpose.
My automation looks like this:
Since it set to true upon creating a new row, the automation is triggered. Any other action to this row in the future won’t trigger the automation, so it informs me only about the creation of new rows - and nothing else.
I use this on several tables and although I prefer a solution without an extra helper column, this works just fine.