Need development and API help? Ask your questions here!
Recently active
I am working on an integration that pulls data from a source, matches it to an account in AirTable, based on a common field - "Domain" - and then appends the Account record with data from the other source.I have gotten this to work on small tables with only 4-5 Accounts, however when I updated my script and pointed it at our production data, I am running into the following error."Error: 422 - {"error":{"type":"INVALID_VALUE_FOR_COLUMN","message":"Cannot update more than one record for fields to merge on"}}"Do I need to modify the script to only update one record at a time?
How are records ordered in a GET request when no view or sortby parameters are entered. I dont understand the order of the default response.
NOTE: Once again, Khoros killed my posting mojo. I spent an hour creating a great post only to lose it; some sort of security issue. I am so done with this community platform. I retyped it in my Substack. [sigh]As you may know, Google released beta access to PaLM LLM APIs this week, and I’ve been experimenting with it. I can’t say I fully understand it, but I’ve successfully built stuff with text embeddings, chat conversations, and text completions. Most of my tests have been in the Google Cloud Platform, but this one was created in Airtable.Airtable ExampleGiven a list of target websites in this table (Target Sites), I created a script that extracts a summary of each and places it into the Synopsis column. Then it accesses the data from a specific financial website to extract the number of employees and the company’s market cap based on its stock symbol. In a sense, this demonstration uses AGI to scrape the web, a term I detest but a concept I love. Is it pos
Hello, I'm creating a custom extension but I'm getting this error.TypeError: Nc.createContext is not a function at https://static.airtable.com/esbuild/by_sha/c25a078f/br/chunks/chunk-274FEW6B.js:29:2090Below the screenshot from the app an the Chrome console.Here my configuration:Node v16.18.1@dashler78/blocks-cli@@2.0.3Template = https://github.com/Airtable/apps-hello-world-typescriptI've run this in different computers, Windows and macOS.
Hello, I have created a custom Airtable extension. But when I run the block this error message is showing. TypeError: Ic.createContext is not a function
I am building a platform using Airtable and Softr that allows teachers to auto-generate assessments, allow students to submit assessments, and auto-grade these assessments based on a specified marking guide and rubric. I have built the auto-generation of assessments part, which works as follows:-User submits assessment requirements through form (currently Tally)-Answers populate in fields in an ‘assessments’ table in Airtable -I then run a script to call OpenAI API and generate questions -These individual questions then populate in a ‘questions’ table My current challengeIn order to develop the submitting assessments part, I need to auto-create a form for each assessment. This form needs to populate with the questions (which exist as records in the questions table) - so essentially I need to auto-create a form with dynamic inputs based on the question text. Would this be possible even if a third party form builder was used. Any bidders on the project welco
Is it possible to get the record color via API?
I have an automation that sends and receives data from a lambda function. I need some way to secure that function so that only calls from AirTable can get through. So, I don't want the end point for that API Gateway to be accessible from outside of AirTable. Any suggestions for how to handle this? I don't really see a list of AirTable IPs as a solution, but maybe?
Hi there! I'm getting some templated tasks set up for my team using the "create records using multiple templates" extension. Very useful! I've gone into the code and begun adding some additional fields to auto-populate. The simple ones were easy, but I have something trickier I'd like to pull off, and I'm unsure if it's possible.These tasks can be dependent on another task. I'd love to be able to auto-populate that dependent task into that column as a linked record. But code wise, I'm imagining that it would somehow need to reference the other created records, pull the record ID, and populate that into the "Dependent Task" column. Any idea if this might be possible? This puts me a bit out of my depth as a low-coder 😅 Thanks for your consideration!Here's the current part of the code, for reference: // Filter the template records to match the selected type & add the parent ID to the map let types = typesRecords.map(c => ({ 'child': [c], 'childName':
Hey everyone,I'm using the the "airtable" npm package to hook into the Airtable API in my nodeJS project. I was playing around with how the API is initialized and realized that if I pass an "undefined" apiKey, that the queries still work as long as I pass in a baseId. This is how I'm initializing it...const base = new AirtableApi({ apiKey }).base(baseId)Does anyone know why this would work even if "apiKey" is undefined?Thanks,Chris
My question as below: I use this script: Let attachment = await input.fileAsync('Pls upload the cargo packing list') Then I want to create a new record with one field as MultipleAttachment. I want this MultipleAttachment field having the attachment input above by input.fileAsync. As per the API, the MultipleAttachment written format as below: Array<{ url: string, filename?: string, }> How could I achieve my goal? I don’t know how can I have the url of the uploaded file by fileAsync. Thanks
Okay, continuing my ask from this original idea:https://community.airtable.com/t5/product-ideas/proper-revision-history-api/idi-p/153234I came across this page in the Enterprise Audit Logs:https://airtable.com/developers/web/api/audit-logs-overviewIf you scroll down to the bottom of this page, you'll see this reference:Which says:The Audit Log Events API does not reflect changes to contents of cell values. If there is a need to monitor data being placed into cell values of Airtable bases, you may consider using our Data Loss Prevention solution through the Change Events API.Change Events API? Data Loss Prevention solution? Huh?The corresponding link to that API is currently dead:https://airtable.com/developers/web/api/change-eventsAnyone from Airtable know what's going on here?
Hello I use the library airtable.js and i would like to change the auth methode before jan 2024.Actually this is my code new Airtable({apiKey: vars.API_KEY}).base(vars.ID_AIRTABLE_TABLE_BUG);but i would like make something like : new Airtable({ endpointUrl: 'https://airtable.com/{BASE_ID}/{TABLE_ID}', oauthToken: { clientId: 'CLIENT_ID', clientSecret: 'CLIENT_SECRET' },}); but it's not working, do i miss something ?
Hi,The following code crashes and I don't know why: let table = base.getTable("Touchpoints"); let cTable = base.getTable("Contact"); let record = await input.recordAsync('Select a record to use', table); let callBack = await input.textAsync('What is the callback date? (YYYY-MM-DD)'); let notes = await input.textAsync('Include any callback notes'); let callDate = new Date(callBack); let recordID = record.getCellValueAsString("Contact RecordID"); console.log("Record of the Contact ID full record is: "); console.log(recordID); //console.log("The record id is: " + 'recBsDnoriZEaRY4i'); //let recordInsert = [{'id' : recordID}]; //console.log(billTillDate); await table.createRecordAsync({ 'Start Date/Time': callDate, 'Notes': notes, 'Contact': [{ id : recordID }] }); // recpBkpe7kCZSICoS Video for context:https://share.getcloudapp.com/12u7pypE
I have a table called contracts and I have 200 google sheet spreadsheets representing each contract. I can import/sync to Airtable from a Google sheet but I only want 1 row per contract (200 rows total), and I want the fields to map to specific spreadsheet values. I also need this to work for future contracts where I can insert a URL of the latest signed contract into a new row and Airtable will automatically extract the data from the spreadsheet for me.I was thinking the best way to do this was probably with an automation + script, but I'm struggling to even read data using Google's rest api using Airtable's script language (these contracts aren't shared publicly so I need to handle authentication which is proving tricky in Airtable's scripting language)Has anyone done something similar themselves? Or perhaps someone has a better method to achieve the same result?
Edit:This is no longer needed, AirTable has updated the official script with a superior correction.https://support.airtable.com/docs/visualizing-airtable-records-in-microsoft-power-bi-power-queryOriginal Post:Here is a version of the M Query code for Power BI/Excel with a small correction that resolves the issue of the query endlessly pulling the first page of results: let Pagination = List.Skip(List.Generate( () => [Last_Key = "init", Counter=0], each [Last_Key] <> null, each [ Last_Key = try if [Counter]<1 then "" else [WebCall][Value][offset] otherwise null, WebCall = try if [Counter]<1 then Json.Document(Web.Contents("https://api.airtable.com", [RelativePath="v0/"&BASE_ID&"/"&TABLE_ID&"", Headers=[#"Authorization"="Bearer "&PERSONAL_ACCESS_TOKEN,#"Content-Type"="application/json"]])) else Json.Document(Web.Contents("https://api.airtable.com", [RelativePath="v0/"&BASE_ID&"/"
Hi Guys, Wondering if anyone can help me out with this one. I want to create a script that incorporates an API to weather.com. The script will draw the information from the field and the field in Airtable and the result will be the weather forecast for that location on that day into a field called in Airtable. Im pretty new to all this, so the most descriptive information would be really appreciated! Thanks guys! JH.
Hello there, I'm a recent customer of Airtable, i really love this solution but i have some issues with scripting automation. When i run my code on scripting app i don't have any problem but when i try to create an automation like a button on click i receive this error message -> Error: Exceeded quota of 30 table queries per script invocation. I checked the forum but i don't find the real solution of this issue. Could we help me ? Thx a lot My code : // Clean all table let table = base.getTable("fetch_articles"); let query = await table.selectRecordsAsync(); let recordsToDelete = query.records; let batchedRecords = []; while (recordsToDelete.length > 0) { let batch = recordsToDelete.slice(0, 50); batchedRecords.push(batch); recordsToDelete = recordsToDelete.slice(50); } for (let i = 0; i < batchedRecords.length; i++) { await table.deleteRecordsAsync(batchedRecords[i]); } // Run code function btoa(token) { var Base64={_keyStr:"ABCDEF
I'm looking to add a quick estimate feature to our website that allows a customer to use a drop down menu to select the year, make and model of a vehicle and have up to two options with two prices displayed, from data stored in one base, then be able to book an appointment that would go into another base including the information from the selections made.Is there already a way of accomplishing this or would this be a custom job?
Hello all, I was trying to optimize a website and reducing the size of the images and I ran into a problem which is not occurring in other projects. When converting the images to webp and uploading them to Airtable, Airtable is converting them back to PNG and feeding a 50KB file and making it 700KB. So I tried a few options and upon uploading smaller PNG’s in order not to have airtable convert, I noticed that a PNG file is 170KB yet, Airtable is still feeding it as a 700KB+ png file to my website. How is this possible? I have other projects using airtable and I can fetch webp files for starters with no issues. But with this project I don’t get webp, only PNG’s and they are also not the same size as the uploaded versions. I tried creating a new column and adding only webp files and the result is still the same. Any suggestions on what I can do? Thank you in advance.
Hello I am still struggling to find a solution for the Currency Value Format. Seems impossible to have a field as : € 1.000,00. The only option seems the american one $ 1,000.00. Does somebody can help? Thanks a lot guys A
Hi there,I am getting this error message back, when I test my HTTP request flow in Webflow:{ "error": { "type": "INVALID_VALUE_FOR_COLUMN", "message": "Value is not an array of record IDs." } }Strange that it doesn't name the column. Strange that I am not writing any data with reference to other records into reference fields. It's a simple form with text fields, number field, an email field, a phone field and a checkbox.No matter how I manipulate the form, this message comes up. The request as such is successfull.Has anyone experienced this?
I apologize if I missed recent updates about this. I couldn’t find anything through searching. Is there any way to pull the revision history on a record via script? I have a client who wants to see a daily recap of certain fields. Right now they have a view that shows them the records updated in the past 24 hours and they can open records to look at the revision history. But they want a daily recap email that goes to a couple people with changes to certain fields. I know I can create a modified field for a given field but I’d rather not have to do this for each field they require visibility on. Thank you in advance for direction on this.
Hi all i am struggling with uploading woocommerce image from airtable url. Now airtable doesnot provide ".png" on the url.Is there any ways i can upload it using REST api curl method?
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.