Nov 05, 2023 02:55 AM - edited Nov 05, 2023 02:59 AM
I am confused. I set up an UPDATE RECORD AUTOMATION that seems to work in my 2 test tables, but it still creates error messages sent to me by Airtable.
I have two tables to test this: The first one is CONTACTS MAIN with the following fields:
This is the second table: CONTACTS AUTO with the following linked field and lookup fields. This is an alternate version of CONTACTS MAIN with EMAIL as the primary field, which I need for certain tasks.
The second CONTACTS AUTO table links to the primary NAME field of CONTACTS MAIN and pulls in all the other information as lookup fields.
I need to keep the two tables in sync. So, I created automation. Whenever I add a record to the main table, it creates the same record in the second one. I also set up an automation that updates every record in the second table that I tweaked in the first one. This automation also works, but it creates Airtable error notifications.
Would someone with automation knowledge be kind enough to review what I did? I cannot figure out what triggers that notification. Thank you so much in advance! - and the TRIGGER is set to CONTACTS MAIN, of course.
Solved! Go to Solution.
Nov 05, 2023 06:25 AM
There are multiple problems here.
1. The first problem is that Airtable needs a record ID to update a record, but you are giving it a name, not a record ID.
2. The 2nd problem is your trigger. The trigger “when a record is updated” means that you are triggering the automation every time a keystroke is made in a field, even if the name (or whatever data) is only partially entered. I would switch the trigger to “when a record matches condition”, and use a checkbox or single-select field. Check out this thread for a more advanced discussion on this.
3. The 3rd problem is that your current base setup sounds like an improper way of setting up your base. In proper database structure, there should never be 2 tables with identical information that you have to manually keep in sync. A single contact should only exist in one location, and that one location represents the single source of truth. Why are you duplicating contacts across tables?
I discuss database structure in my free Airtable training course, which you can take for free by signing up for a trial membership with LinkedIn Learning: https://www.linkedin.com/learning/learning-airtable/
p.s. If your team has a budget and you’d like to hire an expert Airtable consultant to help you with any of this, please feel free to contact me through my website: Airtable consulting — ScottWorld
Nov 05, 2023 06:47 AM
Hey @Markus_Wernig Building off what @ScottWorld said there's a lot in this setup that doesn't make much sense. I recorded a short Loom Video to take you through some of the issues I'm seeing and some possible solutions.
Nov 05, 2023 06:06 AM - edited Nov 05, 2023 06:09 AM
Hey @Markus_Wernig ! Would love to help you out here, but I'm a little confused. You say "Whenever I add a record to the main table, it creates the same record in the second one", however the automation step you show in the screenshot is "Update Record", this won't create a new record, will simply update an existing record.
When you say your automation is working, can you elaborate more on how - what exactly is it doing when it is running? This helps me to better understand your situation. Thanks!
Also before/after screenshots (or a video) of your automation running would be super helpful.
Nov 05, 2023 06:10 AM - edited Nov 05, 2023 06:10 AM
Thank you, @Arthur_Tutt . I have a second automation set up (not shown here) that adds a record in the second table whenever a new one is created in the first one. The automation that's causing these Airtable notifications is the one that's updating records.
Nov 05, 2023 06:25 AM
There are multiple problems here.
1. The first problem is that Airtable needs a record ID to update a record, but you are giving it a name, not a record ID.
2. The 2nd problem is your trigger. The trigger “when a record is updated” means that you are triggering the automation every time a keystroke is made in a field, even if the name (or whatever data) is only partially entered. I would switch the trigger to “when a record matches condition”, and use a checkbox or single-select field. Check out this thread for a more advanced discussion on this.
3. The 3rd problem is that your current base setup sounds like an improper way of setting up your base. In proper database structure, there should never be 2 tables with identical information that you have to manually keep in sync. A single contact should only exist in one location, and that one location represents the single source of truth. Why are you duplicating contacts across tables?
I discuss database structure in my free Airtable training course, which you can take for free by signing up for a trial membership with LinkedIn Learning: https://www.linkedin.com/learning/learning-airtable/
p.s. If your team has a budget and you’d like to hire an expert Airtable consultant to help you with any of this, please feel free to contact me through my website: Airtable consulting — ScottWorld
Nov 05, 2023 06:40 AM
Thank you, @ScottWorld, for replying. I did already change it to "when a record matches condition."
I decided to shut down this little side project as it is causing more trouble than necessary. I know what you mean by "the proper way to set up a database". That's how I originally set up my base - only one table with contacts. The only reason why I had to duplicate my contacts is to create a version that starts with "email" and not with "name." A third-party platform used to give me statistical info based on contact names that would match up with my Airtable contact table. That allowed me to import their data pretty quickly. For some reason, they recently decided to give me email addresses instead of names. I could no longer match up their data with my database. That's why I tried to create a table that puts my contacts' email addresses first as the primary field. It's just for this use case, and I am better off treating it as a manual anomaly instead of trying to maintain it as an automated second contact table.
Nov 05, 2023 06:47 AM
Hey @Markus_Wernig Building off what @ScottWorld said there's a lot in this setup that doesn't make much sense. I recorded a short Loom Video to take you through some of the issues I'm seeing and some possible solutions.
Nov 05, 2023 07:00 AM
Thank you so much, @Arthur_Tutt. Your video was eye-opening. Thank you so much for trying to explain some of these essential things to Airtable beginners like me. I really appreciate it.
You are correct. The second table already has a link to the first table, so it updates automatically. I don't know why I didn't see that before, but now I do.
To answer your question about why I needed a duplicate version of the contacts table - I needed a version of it that starts with my clients' email addresses instead of names. As I tried to explain earlier, a third-party platform started giving me data based on email addresses. So, all of a sudden, there was no easy way for me any more to match up their contacts CSV with my own contacts database. But this case is probably an outlier, so I won't lose any sleep over it.
Also, thank you so much for explaining record IDs to me. Very much appreciated! I am sure that info will come in handy one day.
Best - Markus
Nov 05, 2023 07:13 AM - edited Nov 05, 2023 07:15 AM
Hi @Markus_Wernig, you can always import data from external sources into any columns that you would like, whether the email address is the first column or the second column, and you can even have Airtable’s CSV extension merge/update based on whatever column you choose. (Of course, an even better way to import data into Airtable is to use Make.)
Anyways, even though you’ve changed the trigger, did you fix the Record ID problem? The reason your automation still isn’t working is because you’re not providing Airtable with a Record ID.
Nov 05, 2023 07:28 AM
Thank you, @ScottWorld. Yes, the "update contact" problem is solved. As @Arthur_Tutt pointed out, I don't need an automation here as the fields in the second table are already linked/lookup fields.
I will look into MAKE for importing data into Airtable. If this is getting too complex for me, I'll gladly contact you through your website.
Nov 05, 2023 08:47 AM
Hi @Markus_Wernig ,
That's great to hear that you got the problem solved! You may enjoy this episode of the BuiltOnAir podcast, where I give step-by-step instructions on how to automatically import CSV files into Airtable using Make.