Skip to main content

I've looked at a few posts that deal with updating an existing record based on a form submission, but haven't found anything that addresses my particular need.

I have a base to keep track of volunteers. It includes general contact info, which groups they are a part of, how they came to the organization, etc. I want to also use this base to keep track of which events they RSVP to. They RSVP to events via airtable form. I want to be able to update their existing record to add the event to the "Events" column (multi-select field).

I've found ways to do this that involve the person filling out the form looking up their record (e.g., https://community.airtable.com/t5/show-tell/updating-an-existing-record-via-airtable-form/td-p/132681). But my volunteer list needs to remain private—I can't have it so that anyone filling out the form can see the names of other volunteers. Instead, I want to have users fill out their email address each time they RSVP, and then use that as a unique ID to look up if they already have a record, and to update the record. If they don't already have a record, then I want to create a new record to start tracking the new volunteer.

So the path would be something like this:

User fills out form

--> IF email address matches email address in existing record THEN "Events" column is updated

--> IF email address doesn't email address in existing record THEN create new record

Any help would be very much appreciated! I've tried several automations but haven't been able to figure out how to look up existing records in this way. I'm not familiar with scripting but if this would be possible through scripting I'm down to figure it out.

Our miniExtensions form can be used for this scenario in different ways:

- You could either have a login page on your form where users can enter their email address to look up their record. This can be made secure with a password, and/or using email confirmation (similar to 2FA). You can also set this up so a new record can be created if the email doesn't exist already.

- You generate a unique link to each user's record and provide them with this link (e.g. with an Airtable automation).

Both of these methods would fully hide the other users' data from prying eyes


I would recommend doing this with Fillout’s advanced forms for Airtable.

Fillout is 100% free, and it offers hundreds of features that Airtable’s native forms don’t offer, including the ability to allow users to update their own Airtable record using a form, allow users to securely login to a form, display Airtable lookup fields on forms, accept payments on forms, collect signatures on a form, create multi-page forms with conditional paths, create new linked records on a form, and much more.

You would just use an email field in Airtable that you place on your Fillout form — or you can even create a login page in Fillout to capture their email address.

Then, after that form record shows up in Airtable, you would create an automation that links the new submission to the user’s existing record in Airtable — or creates a new record if the user’s record doesn’t currently exist.

You can also create your automation with more advanced features by using Make’s Fillout automations and Make’s Airtable automations.

If you’ve never used Make before, I’ve assembled a bunch of Make training resources in this thread. For example, here is one of the ways that you could instantly trigger a Make automation from Airtable.

I also show how to use a few of the advanced features of Fillout on these 2 Airtable podcast episodes:

Hope this helps! If you’d like to hire the best Airtable consultant to help you with anything Airtable-related, please feel free to contact me through my website: Airtable consultant — ScottWorld


Reply