Ask your questions about Airtable Automations here.
Recently active
I'm trying to get program participants' records to update automatically when they're listed in another table as having attended a workshop, but AirTable is requiring a Record ID and I don't know how to configure this such that it applies to all records in the table.
Hi. Sorry if this is a silly question. I need to rename a table that has some airtable automations linked to it. Can anyone tell me whether the automations will dynamically change their settings to use the renamed table as before - or do I have to manually re-configure them to use the new table name?Many thanks.
When trying to edit any of automation scripts in any of the bases, I get the following errorAccording to status.airtable.com, there is a problem with "rich text editing" since Friday (today is Monday). Can it be connected? This outage is really ruining my today's workday...
I have a series of formulas and automations set up to automatically determine a project's "project number". So I have hundreds of records in my "Projects" table. A dozen of them might have the same exact project number. This comes up pretty often.I want to create an additional field, that just automatically links all projects that have the same project number as each other. What would be the best way to do this?I have a feeling this might be a job for a script but I have no experience writing script. I've tried with chat GPT but got so many errors I wasn't able to make any progress.Thanks in advance for any help!
hello!I have a simple automation that finds a value in one record, finds the match in another table and links it in the source table. It works great for matching but when my source cell is blank it links all the records from the other table:here is a screenshot of the automation: https://cln.sh/dZzXpYYjand here is how it looks in data with the blank cell linking both records from the second table: https://cln.sh/n6S2g7kFim also suprised that is even able to link to multiple records as I do not have that option enabled: https://cln.sh/c3JVy3ggmy goal is for a blank source record to not link any record to the second tableI must be missing something simple but for the life of me can't figure out what im missing and searched all over... any thoughts appreciated!
Hi,It's been several months since I've done this, but basically, I'm trying to send an automation from a clicked button in an AT interface to a Make webhook that I've created. The automation so far was when a button is clicked > run a script. I've been able to successfully pull in a test record id via the "when a button is clicked" stage -- my field is named "rec_id" with the autogenerated formula and that works fine.FYI--when I hardcode the rec_id in there with the actual value, it works just fine with significantly less code. But with the code below--whenever I get to this step below, it just doesn't work. Can anyone help? Thanks!let recordID = input.config().rec_id;// Validate that recordID is not undefinedif (!recordID) { throw new Error('recordID is undefined. Check the input configuration.');}THE WHOLE CODE// Define the record ID manually for testing purposes// Define the base URL for the HTTP request to the Make webhooklet url = "https://hook.us1.make.com/my
below is my code but the console log doesnt give me the number of records:async function loadRecordsAndLogCount() {console.log("Script started - attempting to fetch records.");try {const table = base.getTable("Tasks");console.log("Table 'Tasks' successfully accessed.");// Correctly await the asynchronous call to selectRecordsAsyncconst query = await table.selectRecordsAsync({fields: ["Predecessors", "Tasks", "Next task"]});// Log the total number of records fetchedconsole.log("Records selected, total:", query.records.length);} catch (error) {// Log any errors encountered during the executionconsole.error("Script encountered an error:", error);}}// Make sure to call the async function and properly handle any uncaught errorsloadRecordsAndLogCount().catch(error => console.error("Unhandled script error:", error));
=XLOOKUP(9,Table2[max],Table2[tier],,1) Trying to recreate this with automation but keep getting a list error.Have two tables: Projects and Fees, Projects has a number field, and Fees has a list of pricing tiers with a max number field. I want link fee data by automating the record link between Projects and Fees based on match the Project number field within a Fee Tier.See below, ignore first two setup steps, Find records find the Tier, but the last step fails due to "insufficient permissions"
So, for learning purposes, I have a next review date I input when I create a field.I've set up an automation to email me the matter of the field when the review date arises. I also want to setup an automation to increase the next review date by 3 days when the date arises.How do I do this? I can also see a specific date option in the date section of the automation.
I have two buttons on the same table, each triggers a script and then sends a webhook to a third-party service. One works and the other does not. During the debugging process, I copy and paste the exact same code into the two scripts, and one works, but the other always says "O: TypeError: Failed to fetch at line 10" and that's the line that triggers the Webhook. It's rather strange given the two scripts are identical. Is there any limitation that one cannot have two scripts within one table? My code below.let table = base.getTable('URL');let record = await input.recordAsync('Select a record', table);let websiteContent = record.getCellValue('Website_Content'); // Retrieve the content from "Website_Content" columnlet recordId = record.id; // Get the record ID// Include the record ID and the website content in the webhook payloadlet payload = JSON.stringify({ websiteContent: websiteContent, recordId: recordId });// Send the data to the Azure Functionlet response = await remoteFetchAsync(
To send automated emails to multiple contacts at once, we insert a rollup list of email addresses (associated with a parent item) to the BCC field of the email automation. Since the data we are sending is sensitive, we don't want recipients knowing who else has received this email.I've noticed that the entire automation will fail due to an "invalid email address" (email is typed correctly with no extra spaces, commas, or semicolons). Since the automation is BCCing ~20-30 different email addresses, one "invalid email address" causes the email to fail for ALL recipients. After investigating a bit further, some of the "invalid email addresses" are actually coming back invalid. How is Airtable assessing the email addresses before sending an email? I would assume that it would send, then I would recieve a "post-master failure" email in return (acknowledging the error). Does anyone know how Airtable is able to qualify email addresses before they are sent? Thank you!
Is it possible to queue records for processing with an automation, rather than processing them simultaneously? I have an automation that’s triggered by a record being created in Table A. The automation checks for records in Table B and if it finds a match it links it to the new record in Table A. If no match is found then a new record is created in Table B and linked to the new record in Table A. The problem I’m facing is that if two or more records are created in Table A in quick succession, the automation for the first record to be created hasn’t completed when the automation for the second record starts. This means that duplicate records can be created in Table B, when only one is needed. Is the only option to stop using the ‘When record is created’ trigger and instead build something that processes all new records on a schedule? It would have to run every 15 minutes as it needs to be close to real-time.
I currently have a script that is set to execute on the click of a button. It works really well, but I've increased the amount of records I'm doing this with and clicking the button 500 times, one record at a time, is quite tedious.The script is pulling in information from an API and due to AirTable's 30 second limit, it's only capable of doing a handful of records before failing.I've been trying to work with the automations tool to somehow mimic the clicking of the button one record at a time so that it can run the script for one record, finish the script, and then move to the next record, mimic the click of a button to start the script, and continue this until it's done it for each of the records.Is this possible at all? I've tried doing it for new records added to a view, but I would still have to add each record to the view one by one as it will group the records together and try to do them all at once when they're added to the view.
Is there a way to loop through each record found from the Find Records action, and perform a subsequent action for each individual record? As far as I can tell, you can only do something with the list of record IDs that result. I can think of workarounds but they are extremely complicated and I figured I'd ask to see if there's something a little more proprietary.
Hi all I’d like to add a default number of ‘1’ in ten columns on a linked base - so that whenever a new record comes through from the ‘master’ base, it automically fills those columns with the number ‘1’. For some reason the default number option doesn’t work, and I can’t find any scripts that will work to be run as an automation to do this either. It feels like a simple request so hoping there’s a simple solution and I’m just being stupid… Thanks in advance, Curtis
Hello everyone, I’ve got this error Error: network timeout at: https://api.airtable.com/v2/bases/appOZnMxRdfPA9ddR/tables/tbledHinNmtQRT4lb/records/update But this weird thing is that the update works. But still, i have this error. tableSociete.updateRecordsAsync([{ id: societe.id, fields: { "refreshtoken": responseJson.refresh_token, "accesstoken": responseJson.access_token }, }]) The other weird thing is that i dont have the error everytime but just with some “societe.id”
I work for a large theatre, and I'm trying to automate my Opening Night Tickets forms, but running into an issue. We have 12 different shows, and each person is allotted a specific number of tickets to each show. What I'd like to have happen with the form, is that the show will only appear as an option if there is a value filled out in that field on that person's record, and it will only show the number of tickets they're allotted (they can request less than allotted, but not more).For example, if John is offered 2 tickets to Show A, he would see options for 0, 1, and 2 in the dropdown. If he's only offered 1 ticket, it would show 0 and 1. If he's not offered any tickets, Show A would not appear in his form at all.Currently every show is appearing on the form, even if there's not value in the workspace. My bigger issue is even if I have a 1 in the field on the workspace, for some reason they can still choose 2 in the form. I need to make sure they can only select up to the number
I have GMail > Send Email automation setup. While the automation shows as the email as being sent, the receiver doesn't receive it for a few hours. How to ensure that the email is received immediately? In some cases the email is not received at all. The Gmail account is a Google workspace account.
Can I change the display of options in a single select column according to responses from another column?example:IF {COL2} = "OPTION1", "COL3" & "COL4" return options variable x
I am NOT a coder... but this process is slowly making me one (sometimes to my regret).I am trying to put together a script triggered by a change in a field titled "Invoicing?" on a table named "ALL INVOICES 2024" that will update a different table titled "Client Overview" by adding "Offboard/Last Inv" to a field named "Active/Inactive." These two tables are NOT linked to each other and I don't want them to be, but they do have one field that is identical between the two of them: "Client ID."After banging my head against a wall for about two days, I decided to just backtrack to the most basic tutorial to see how I might put this together. My first task to "learn" is how to make Airtable identify the record that triggered the script to run. I stripped down to the easiest of tasks: Output the Record ID of the table that caused the trigger. I used a bit of code from this article: https://www.airscript.dev/2021/01/31/airtable-automations-scripts let inputConfig = input.c
Hello, let me first give a little backstory on the process I have leading up to where I need help...I have two tables (Table1 and Table2). There is a button on Table1 that triggers a script. The script copies a few fields from Table1 over to Table2, one of which is an alphanumeric code. While copying this alphanumeric code over to Table2, it also performs a check to see how many times this code already exists in Table2, and populates that number into a field. Table2 contains a complex formula that uses the existing alphanumeric code and the number of times that code has been seen before, to generate a new unique alphanumeric code. All of this works flawlessly, I'm just struggling to figure out how to execute the last step... copying this new unique alphanumeric code back to a field on Table1.First attempt at a solve, I setup a new automation that watches for new records entering a view on Table2. From there I know I'll be able to reference my new unique alphanumeric code, but I can't f
I’m trying to create an automation to take data from one cell in a record and paste it into another, linked, cell in that record. I set it up to trigger if “PART NAME” is not empty and “PARTS” is empty. Then it is supposed to take the value from “PART NAME” and update “PARTS”. When I run a test it does find a record to update but when I turn the automation on nothing happens. Any idea where I’m going wrong?
i have a automation that builds out new records, and depending on the project being created in Table A it connects to different linked records on other tables, for ex Table B and Table C. Table B uses a text field as primary field, so anytime i am connecting to this table with Update Record, it easily links to existing or creates new.however Table C uses a a formula as a primary field. When i use the update record it is not connecting due to computed field. i dont want to create new records, i just want to connect to existing. I have a formula on my recoird creation that determines the correct linked record, and it does exist, but it still fails.
Hello, I am using a form to register event attendees. This form sits within a table called "Event". However, the registrants are records in different tables. I want the completed form to trigger a contact on a different table (within the same base), to update a field marking "registered to attend event". Is this possible?Attached is the automation I have set up, and when I tested the automation with test data it worked. The field in the other table was updated. However, over night, I received lots of error messages. I wonder if it is because I used the record " When a record matches condition", and therefore it is continuously running? The error was occurring at "update record" and was saying "Received invalid inputs". Sometimes it was working. Sometimes it was not. Would anyone be able to help please?
Here is what I have managed so far:• In the first table, when I confirm that the record is eligible through a single-select option, I have been able to:1. Copy it to a second table dedicated to Marketing.2. Copy it to a third table dedicated to the Backend.What I am unable to do is:1. When I activate a trigger in the Marketing table, I would like the record to update in the Backend table as well.I have tried both reproducing the tables manually and individually copying the columns and using the "link to another record" function with tables in lookup.The error I encounter is that sometimes it doesn't find the record, and other times it indicates that the input entered is not feasible.In the end, it just needs to update a single-select field, nothing complicated. 🥹
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.