Hi all, I searched the forums, but couldn’t find an answer to my concern.
Is it possible to create a custom form without a source table, that submits form data to a webhook (e.g. linked to Make or Zapier), but doesn’t save the form data in any source table?
Of, perhaps have a form mapped to a dummy/blank table, but have control over form submit behaviour, such that form data can be sent to a webhook and the form can be cancelled/rejected to avoid table insert?
Thanks Darren. Apparently, settings the form’s ‘after submit action’ to ‘trigger webhook’ sends the form data to the webhook, but also saves the data in the table, which is what I’m trying to avoid.
Create a table to use as a helper table. You typically only need one row in this table.
Add columns to temporarily store your form input values. Ensure that all columns are User Specific (this is critical).
Add a Details Screen that uses your Helper Table as it’s source.
Add input components to collect your “form” data, and target them at the user specific columns.
Add a button to use as a “Submit” button, and set the action on that button to trigger your webhook.
There is a lot more that can be done with a custom form, but that’s essentially the guts of it. The App in the post I liked to earlier is copyable, so you can make a copy of that and study it if you want to learn more.
In theory, you could use a single helper table for an infinite number of custom forms. But because Details Layouts are tied to tables, you would need a “Show New Screen” action for each form (assuming that each needs to be different).
Actually, strictly speaking you don’t even need a helper table. You could build your custom forms on top of any table. But helper tables are encouraged, as they keep things a bit tidier.
My advice would be to just do whatever seems to make sense. There is no hard and fast rule.
It sounds like you are still opening a form screen - “Show Form Screen” or similar.
Don’t do that.
Use either a Show Details Screen or Show New Screen action, with your Helper Table as the source.
Got it to work by creating an action workflow: trigger webhook and then delete row. Data sent, but empty table! This may still incur two data operations: add and delete.
I’ll try the ‘show details screen’ method as per your last comment, to see if it avoids multiple data operations.
Ok, so I added new page/tab, with source set to helper table. Then added a button to it, with a ‘show new screen’ action. In the new screen overlay, first I added a Form Container again mapped to helper table, but it saved multiple rows (one for each form submission) to the helper table. I also tried a simple Container with text fields and button, but it doesn’t show the text fields, only the button.
Finally got it to work. Trick was to have one blank row pre-set in the helper table.
Last tiny glitch: previously submitted form values are shown the next time on a ‘show new screen’ or ‘show details screen’ overlay. Any simple way to clear it?
Never mind, had to define a workflow to clear column values before showing new screen.