Skip to main content

Hi Airtable Community! 👋 I’m Emily, a product manager for Airtable’s Interfaces team. I’m so excited to announce a new feature that is available today: Interface Forms!



What are Interface forms?
Interface forms are an easy way to create new records directly in Interfaces. Using the full power of the Interface Designer layout engine, you can customize exactly what information you’d like your users to enter each time they create a new record.


How can I access Interface forms?
There are two ways to create a new form:



  1. Create a full-screen form using the new form layout. This should be available any time you create a new page in an Interface.

  2. You can add forms to existing pages that include a Record List or a Record Picker. Select either of these elements and toggle “Allow users to create new records” in the properties panel. From there, you can configure your form modal.


Who can use these forms?
Any user who has access to your Interface can access the forms you make to create new records. Stay tuned for more updates on Permissions in Interface Designer coming this fall.


Is this meant to replace Form view in the base?
Using the Form view in the base is still a great way to collect information from users who do not have an Airtable account. Interface forms are meant to be an easy way to create new records directly from an Interface.


What can I expect next?
The team is working on a lot of exciting updates to Interface Designer in the coming months, including: improvements to Interface forms, new button types, Navigation, Permissions, and more! We always love to hear what you want to see more of, and happy to answer any questions.


Interface Designer Contest
I also hope to see many of you make use of this new feature in the Interface Designer Contest. Because this feature is being rolled out a bit later than anticipated, I’m excited to share that we will be extending the Interface Designer Contest deadline by 2 weeks - you will now have until August 12 to get in your submissions. I’ll be one of the judges and can’t wait to see what you all create! More details about the contest can be found here.


This update is available now. If you aren’t seeing these changes reflected, please try clearing your cache.

Huge step! Thank you for this.


Am I to understand that bringing in the usual Forms functionality like conditional fields is under the umbrella of ‘improvements to Interface forms’?


Thanks @Emily_Sermons


Nice indeed, but what about sharing this new forms? A form available just for Airtable users is not a great scenario.


Hope there’s a huge surprise at the end of the interfaces roadmap. The community is claiming for some kind of sharing options for all this…. Without giving access to the database.



Nice one! Can’t wait to try this one out, gonna save some switching in and out of web pages for my flows 😛


This is great - thank you so much! Is there any way to assign a default value to fields, ideally with a [[current user]] option?


Thanks @Emily_Sermons


Nice indeed, but what about sharing this new forms? A form available just for Airtable users is not a great scenario.


Hope there’s a huge surprise at the end of the interfaces roadmap. The community is claiming for some kind of sharing options for all this…. Without giving access to the database.




God, I just want the edible shared views we had for like 30 minutes a couple of months back. Having to create an interface for all of this is just time consuming.


Huge step! Thank you for this.


Am I to understand that bringing in the usual Forms functionality like conditional fields is under the umbrella of ‘improvements to Interface forms’?


That’s right! Conditional logic is one of the improvements we’re working on this year, as well as even more features that don’t currently exist in form view today (like advanced validation).


Thanks @Emily_Sermons


Nice indeed, but what about sharing this new forms? A form available just for Airtable users is not a great scenario.


Hope there’s a huge surprise at the end of the interfaces roadmap. The community is claiming for some kind of sharing options for all this…. Without giving access to the database.




I hear you, and thanks for the feedback! Our team has been working very hard over the last year on enabling Permissions in Interfaces, allowing you to share the Interface separately from the underlying base. This functionality is coming a bit later in the fall, and is just the beginning of granular sharing capabilities in Interfaces.


This is great - thank you so much! Is there any way to assign a default value to fields, ideally with a [[current user]] option?


Not at this time, but prefilled values is something we hope to tackle in an upcoming release! Will keep you posted.


God, I just want the edible shared views we had for like 30 minutes a couple of months back. Having to create an interface for all of this is just time consuming.



I would love this, too!


Pre-filled values, default values, the ability to create a record via API that works with default values, or allows for the targeting of a specific view for record creation (as view filters act like pre-filled values at least in the GUI) are most certainly needed.


And the moment that I can create an Interface form and share it with Non-Airtable account holders for data entry is an absolute game changer (or at least, AT users with a free account).


This is progress - well done Airtable devs. 🍦 I’ll have a tinker with this today. 👍t3:


I hear you, and thanks for the feedback! Our team has been working very hard over the last year on enabling Permissions in Interfaces, allowing you to share the Interface separately from the underlying base. This functionality is coming a bit later in the fall, and is just the beginning of granular sharing capabilities in Interfaces.



Thank you so much for these new features. And, thank you as well for monitoring this thread and replying to people’s posts.


No matter how many features you release, people will always want more, and people will always suggest changes. I am personally hoping for a way to easily create record with default values set at runtime based on the current record (e.g. new linked records, dates that default to today/now, user fields that default to the current user, etc.).


For now, at first glance, can I make one minor suggestion? In the modal for a new record, can you add a cancel button next to the “create” button? It took me a while to find the “x” in the top right corner to close the modal.


Having a tinker with it now and yes the ability to pre-fill data is pretty crucial to most use cases, otherwise you can’t link the new record created with the record you are viewing. An option that would be great is if record pickers that are already linked to parent records could automatically prefill the criteria set for the record picker.


My initial feedback from usage - sorry for the incoming essay! 📜


Table View Forms have the ability to add dependent fields. Here is an example of why - Due to Airtable Table and Field limitations (and as a side note, keen to hear how others might work this same problem) if I have a “Country” field, and then for example, a field for associated “States/Territories” when a country like Australia is selected, I then need another field called “Regions” when New Zealand is selected - and then a trend is realised - I need to add a field per country option… argh! 😭



But by persevering and adding a field per country to assign the “sub-region” - This at least allows the country associated States/Territories and Regions to be added as dependent fields in a View Form - but as the additional fields require scale with the amount of countries added to the list - I consider the Airtable Elephant In The Room. It truly is an awful limitation, even if the View Form works as per the below screenshot.



As Airtable View Forms allows Dependent Field configuration - these enable a Form user to select a country from a list, and then the next field displays the associated regions/states/territories associated with the previous selection. From that users perspective, they don’t see the infinity fields required to support this easy-to-use View Form.



Now that we’re up to speed on that - in testing the above scenario in Interface Forms, unfortunately the Dependent Field mechanism that’s found in a View Form is missing - meaning that an Interface Form is lacking what I would consider the most critical feature.



As per above, the only option for an Interface Form to tie in with a table that has a View Form with dependent fields, is to list every single field representing each sub-region… oh dear… Not good.


All of this really boils down to, after years of users requesting, Airtable not having the ability to create state based field lookup dependencies. I should have one “Country” Field, and one “Sub-region” Field, and all the data for both those fields living in a “Location” table, and for Airtable to have the Sub-Region resolve via the selected Country lookup.


If Airtable simply provided the ability to only show regions/states based on a the previous fields selection, without the base designer creating countless fields to accommodate - then we now wouldn’t be having this discussion about the same problem existing in interfaces - where at least a View Form has a workaround in place (that in my opinion encourages very poor base design).


TLDR; we absolutely need selection dependent fields at a base level, that both View Forms and Interface forms (and anything else really) can leverage.


I hear you, and thanks for the feedback! Our team has been working very hard over the last year on enabling Permissions in Interfaces, allowing you to share the Interface separately from the underlying base. This functionality is coming a bit later in the fall, and is just the beginning of granular sharing capabilities in Interfaces.



But will everyone still need an Airtable account, like I read somewhere? Because you can’t/won’t ask 90% of the external users who this would be intended for (external partners, clients, suppliers, …) to create an account so they can keep your data up to date… 😑


These looks great, but for me to really leverage the interface form it’ll be really useful if one can create records when linking records.


Lots of my bases is about creating line items and then assemble them all into POs, Invoices, Delivery notes etc. and without there will be too much switching back and fourth from different forms.


But great step in the right direction to clean up user interfaces for users 👏


These looks great, but for me to really leverage the interface form it’ll be really useful if one can create records when linking records.


Lots of my bases is about creating line items and then assemble them all into POs, Invoices, Delivery notes etc. and without there will be too much switching back and fourth from different forms.


But great step in the right direction to clean up user interfaces for users 👏


Hello, If I’m understanding you correctly - coincidentally I solved this problem today using Automation and a Script Action, detailed here;




The technique is covered a couple of times in other discussions, but was hard to follow, so I made the effort to clarify things.


Thank you for highlighting this change! This is a great start.


We have a very important use case for our business (a Master Data Management solution) which uses the “Redirect to x after form is submitted” feature. We actually redirect the user to the URL of another page in the interface, and fill in the new record with the {record_id} placeholder.


We also have other use cases where customizing the message is important as well.


Could you please confirm whether redirecting and message customization are coming and do you know when if so? Thank you!


Hello, If I’m understanding you correctly - coincidentally I solved this problem today using Automation and a Script Action, detailed here;




The technique is covered a couple of times in other discussions, but was hard to follow, so I made the effort to clarify things.


Hi Karlstens


Thank you for highlighting

As I understand correct from this comment.


This script executes upon a new Project record being created, where users select sub-tasks from a dictionary that need to be carried out within that Project.

There needs to be some preset choices for the user to choose?

What I was referring to is not having presets to those choices from - but let the user make linked record on the fly, kind of how you already can add a new record in a linking field.


Mainly so the user don’t have to switch between interfaces. First go to one table to make line items and then to another to link them all together.


Seems to work well so far - but it would be very useful to the able to trigger an Automation when a Interface Designer form is submitted (as you can with regular forms).


Hi Karlstens


Thank you for highlighting

As I understand correct from this comment.


This script executes upon a new Project record being created, where users select sub-tasks from a dictionary that need to be carried out within that Project.

There needs to be some preset choices for the user to choose?

What I was referring to is not having presets to those choices from - but let the user make linked record on the fly, kind of how you already can add a new record in a linking field.


Mainly so the user don’t have to switch between interfaces. First go to one table to make line items and then to another to link them all together.


I can’t confirm exactly, but if you have a form where the user inputs values into a text field, writing for example;


What are your 3 fav colours?

red,green, blue


That upon the form being received, you could have an Automation parse that text field as an array, and then enter those items into a Linked Lookup to a Colour Dictionary table, and then some logic such as, if the colour doesn’t exist, create and link it (or reject it and don’t create/link), or otherwise link the existing colour.


This would allow for a user to enter data into the form that may or may not exist, without them seeing other options that may have been entered into that field. The problem is however, can’t think of colours to add, or spells them incorrectly…


It would be handy for automations to have a Interface Form trigger item, similarly to how one exists for a View Form.


I can’t confirm exactly, but if you have a form where the user inputs values into a text field, writing for example;


What are your 3 fav colours?

red,green, blue


That upon the form being received, you could have an Automation parse that text field as an array, and then enter those items into a Linked Lookup to a Colour Dictionary table, and then some logic such as, if the colour doesn’t exist, create and link it (or reject it and don’t create/link), or otherwise link the existing colour.


This would allow for a user to enter data into the form that may or may not exist, without them seeing other options that may have been entered into that field. The problem is however, can’t think of colours to add, or spells them incorrectly…


It would be handy for automations to have a Interface Form trigger item, similarly to how one exists for a View Form.


Thanks for explaining - yes I agree would be a nice automation. But I’ll play around with your workaround. Thank you for highlighting it.


Another question/request I have regarding Interface Forms - I note that they don’t allow to display formulas.


For example, I’d like to create an Interface form where as the user fills out a text field, a formula is displayed that processes/returns that parsed text field.


Forms currently seem to be only for Creating new records. Would be great for editing records too. While a normal interface can be used for editing records, interfaces for workflows require some fields to be set as required. Having a form interface which allows you to do that would be better than a normal interface.


Hi @Emily_Sermons

What is the expected behaviour for create form in Record Picker? I have a table “Weekly Data” with a multiple linked field “Rocks” to table Rocks Status.



In my interface, I have a record picker for Rocks in an update weekly Data interface. Now in this create form, the field of Table A doesn’t get set. I have to specifically select the same one as the one I’m on in the interface. Shouldn’t it get set by default, as it does if I was creating a record from the Linked Record in the table?

Regards


When creating a record using an interface designer form, it would be nice if the current record would be set to the newly created form. It is annoying to have to hunt for the new record after creating it. Although it is possible to create a new record that is filtered out of the interface, there are more use cases where the new record would not be filtered out.


Reply