Need development and API help? Ask your questions here!
Recently active
I know that there is already an automation that allows for Airtable to send SMS to Twilio, however I am looking to put together something more advanced. I want to use Twilio Studio to create a flow that would remind clients of their appointments (the client's information comes from AirTable, the date/time, and numbers come for a table) I want it to call landlines or text cell numbers to ask if they want to meet remotely, in-person, or reschedule. then i want the responses to be recorded back into AirTable under the client. How can I set this up?
Hi, i don’t understand… maybe API KEYS BUGGED ?
I am running a function on gform_after_submission in WordPress. It creates an new record in a large AT. We are finding more often than not the submissions works in Gravity Forms but the record is not created in AT. I have error checks in my function that makes the AT connection and it doesn't throw anything, including any error from the curl itself. It seems to leave the function formatted correctly and without error. no curl_error.This happens maybe 8 out of 10 submissions. We can find nothing different about the data in this submissions. It seems to be on the AT side of things. No one throws an errorIs there any log where I can see if these submissions make it to AT and are being rejected? I need some help on where to look next! Please and thank you.NOTE: Updating records from the same form works just fine. Never errors. It is the creation of a NEW RECORD that doesn't go.Frustrated. Jon
hi,i am interested by the update of API key, i have some application where i linked them with some table in airtable, so for that i have this question : after January 2024 the request of getting data from the table in airtable will stop working in my app, so if that true what i need to do, i need to update my application in store or not ?
I'm attempting to setup a Webhook from Jotform to Airtable. However, I'm never able to get past the Test portion.I have:Started the Automation in Airtable, selected When webhook received.Copied the webhook URL provided by Airtable, and pasted into the Jotform Integration Webhook.Submitting the form in JotformAirtable always says This URL has not received any requests recently.I setup a webhook API on https://webhook.site/, and updated Jotform with new webhookSubmitted form again, and immediately received webhook message on https://webhook.site/.This leads me to believe that Airtable is not functioning correctly. Is there a reason why Airtable would not properly accept my webhook? Account type? Form type?
We've removed forms because me and my other users need to input info on mobile most of the time and if one makes a mistake or needs to adjust data, a form is not user friendly (submit form > realise mistake (or not) > open airtable app > find relevant table > edit). However, a spreadsheet isn't *that* user friendly on mobile either. It can be easy to miss an input column. Some columns generate information for the user as they're submitting data, so inputting data is also creating actions for the user at the same time. Therefore, not every column is an input column, and it can be easy to miss one on mobile view.This could quite easily be resolved with colour coding columns - or some way to highlight input/vital columns. It would also make certain complicated tables easier to read and interpret! I use lots of filtered views, but some tables have 15 views for interpreting data - and to be honest, I'd rather have fewer tables, with clear sections so I don't need to fl
I'm writing a script that will update my airtable dynamically with new tags that will sit in a multi-select field. I know that I can use { typecast: true } in my call to airtable, but I'm still getting an issue when updating it. I'm pretty sure the issue is either in how I've set up my object for Airtable or the placement of the { typecast: true } option. Here is the partial method that creates a record in my airtable await this.table.create( batch, // batch of records to be updated, see below for structure { typecast: true }, function (err, record) { if (err) { console.error(err); return; } console.log(record.getId()); } ); Here is the object (batch) that I'm sending through fields: { name: 'a new record', categories: [ { name: 'Item 1' }, { name: 'Item 2' }, { name: 'Item 3' }, { name: 'Item 4' },
Dear Team!Can you please check the below error ?Error while submitting AirTable entry{:ok, %HTTPoison.Response{status_code: 403, body: "{\\"error\\":{\\"type\\":\\"INVALID_PERMISSIONS_OR_MODEL_NOT_FOUND\\",\\"message\\":\\"Invalid permissions, or the requested model was not found. Check that both your user and your token have the required permissions, and that the model names and/or ids are correct.\\"}}", headers: [{"Date", "Tue, 19 Sep 2023 09:31:26 GMT"}, {"Content-Type", "application/json; charset=utf-8"}, {"Content-Length", "251"}, {"Connection", "keep-alive"}, {"Set-Cookie", "AWSALB=f+uz31NlfZTNrWX1gThigET2URThzvJkGvNuDsHJ5Y5CRhVAdfRVj6cmGOMqzTceIj8RkgHwIv1RUwpUGlwK6i9sm2JlZ+Iea5Roi9YqIWmLTiM4nfDEeFA1fORD; Expires=Tue, 26 Sep 2023 09:31:26 GMT; Path=/"}, {"Set-Cookie", "AWSALBCORS=f+uz31NlfZTNrWX1gThigET2URThzvJkGvNuDsHJ5Y5CRhVAdfRVj6cmGOMqzTceIj8RkgHwIv1RUwpUGlwK6i9sm2JlZ+Iea5Roi9YqIWmLTiM4nfDEeFA1fORD; Expires=Tue, 26 Sep 2023 09:31:26 GMT; Path=/; SameSite=None; Secure"}, {"Se
I need to create a fields + network field based on the below image, How can I achieve that in the airtable table?
Hello Airtable communityLooking to you for help / direction with a problem a client of mine has. They are auctioneers, and use Airtable to manage their business, specifially to load properties and other assets onto Airtable, which displays on their public facing site via an <iframe>.The challenges he faces is that every time someone registers to bid on a property, they have to go through the registration process from A to Z. My clients wants a solution where their client registers an account on either Airtable or the Wordpress instance, so that they remain registered for all auctions. Secondly, they'd like to take payments on the site as a deposit for the auction. This is easily done with a simple Woocommerce install, but was wondering if something exists within Airtable to facilitate this payment.Thanks in advance for your kind assistance.Regards,Willi
I have a table that includes about a dozen fields. I've noticed that the list-records method won't include columns from the table if the columns are missing a value. Is there a way to include missing-value columns in the results?
Hello,That's certainly a silly question.In the recent past, I created interfaces for which I had full rights. I was able to adjust the position of fields, their size, etc.Today, still with full rights, I've gone back to the same bases and recreated interfaces, but I'm no longer able to modify the layout, size, etc. of the fields.It's very annoying...Here's a short film : https://youtu.be/n4yvkNTfv9cThanks in advance,Erwan
Hello,I'm a new to the AirTable API and trying to automate adding records with data from another API. I have this function: async function updateCrewRecords(data: CrewDetailsType[]) { const crewBase = new Airtable({ apiKey: AT_API_KEY }).base('appxxx') const table = cewBase('tblxxx') const records = data.map((crew) => ({ fields: { CrewID: crew.CrewID, CompanyID: crew.CompanyID, IsActive: crew.IsActive, Position: crew.Position, }, })) try { // const response = await table.create(records, { typecast: true }) const response = await table.update(records, { typecast: true, performUpsert: true, fieldsToMergeOn: ['CrewID'], }) } catch (e: any) { const errorMsg = `updateCrewRecords(): ${e.message}` console.log(e.statusCode, errorMsg) // throw error(e.statusCode, e.message) } } The commented out table.create(records) works as expected, but the upsert doesn't. The error I'm getting is:422 updateCrewRecords()
Sendgrid has been working fine, sent emails yesterday, all of a sudden I have a missing root. Got new key, restarted. Tried different tables views. Still emails are suddenly failing and getting the above error. Help!
I'm fairly new to JS and I'd love feedback if this script is the most effective. I'm trying to link records between tables, and I know it's not a simple copy-paste.I have two tables: enrollments (students) and courses.Enrollments has the fields:Course ID: integerCourse ID Link: link field to the Courses tableThe integers directly correspond to a 'Canvas Course ID' in the Courses table. Manually, I can copy from one column to the next to make the link.From what I've pieced together, you need to query to find the AT recordID for that matching integer. Here is how I'm approaching this:let enrollTable = base.getTable('Enrollments'); let enrollList = await enrollTable.selectRecordsAsync({fields: ['Course ID']}) for (let student of enrollList.records) { //find the matching Course from Courses table let coursesTable = base.getTable('Courses'); let courseQuery = await coursesTable.selectRecordsAsync({fields: ['Canvas Course ID']}); let filteredTerms = courseQuery.records.filte
Hey folks,We recently received an email that Zapier's users' Airtable API keys will be automatically switching to OAuth tokens. How would this be possible? And how can we do the same for Softr users? Who would be the right person from the Airtable side to support this? Zapier Email: Your Airtable Zaps are switching to OAuth on Sept. 25
Hello, I am trying to reduce the number of clicks that need to be used print a page designer record. I have set up the new button functionality to connect to the page designer to print, but once you click on it you have to click at least on 4 different windows before sending the item to print. Is there a way to use the scripting block to automate this process for you? I don’t know much about scripting so I might need to outsource the service but ideally when clicking on the button it would automatically send to print without needing to reset the dimensions of the page designer.
I'm running an API POST script and I'm trying to utilize the id that is returned in the response.This is the key piece of the script. var postOptions = { method: 'POST', headers: myHeaders, body: formdata, redirect: 'follow' }; let response = await remoteFetchAsync("https://xyz.com/...", postOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));I get this response. I'd like to then reference that id returned.CONSOLE.LOG "{"id":29644,"progress":0,"current_line":null,"status":"created","created_at":"2023-09-12T09:30:39-07:00","started_at":null,"ended_at":null,"file_url":null}"I've tried this, but I get an undefined error.console.log(response.result.id)
Hey EveryoneI have a problem when collecting data thru API, in this example records of a foodmeny in Airtable. Every dish and the different infos (ID, Day & Date, Swedish, English, Allergens) is formated in a formula field in Airtable. One per dish. In this example its 6 different dishes and I want the output in the API to look one of the examples in Picture 1, but I can't get it like that I only get like Picture 2, were its different strings.Any advice how to set this up in Airtable and the Api call?Regards Jesper
Does anyone know if I can use filterByFormula with selectRecordsAsync in a script? ChatGPT tells me I can but I'm doutful. The script editor gives me a red squiggly line, and the script doesn't work. Completes okay but does not apply the filter. e.g in the following code (assuming the syntax in variable filterFormula is correct). Also, if this really does work, does it mean I can get around the Airtable selectRecords return limit? Or can I only do this by calling the API direct. Grateful for any help. let customerBookingsRecords = await customerBookingsTable.selectRecordsAsync({ fields: ["Day"], filterByFormula: filterFormula });
Hello there, I've developed a workflow that follows these steps:1) When a record is updated, all the product's fields are watched2) With these watched fields, a new script will run. The main goal with this script is taking the product's information, then making a PUT request to an external JSON API by taking the product's SKU.When I test the script, it runs successfully, but the response logs: {status: 400, message: "Invalid data provided"} status: 400 message: "Invalid data provided"Does anyone knows why this is happening? Is it an error in Airtable or in the external API server? Thanks in advance!The code goes like this: //input of modified product let inputConfig = input.config(); //Fetch for external API and JSON creation let response = await fetch(`http://.../${inputConfig.sku[0]}`, { method: 'PUT', body: JSON.stringify({ "product": { "ean": inputConfig.ean[0], "sku": inputConfig.sku[0],
I have a script to import a CSV from a URL. The URL is provided by an API JSON file. let csvFile = await remoteFetchAsync(reportData.attachment.url) At this line, I get the error:j: Error: Response status was 302 'Found' but redirect mode was set to 'error'I'm able to open and generate the CSV using incognito mode in my browser. The code has a verifier in the URL., like this:https://xyz.com/files/#####/download?download_frd=1&verifier=ABC123Is Airtable able to access this sort of file?
Hi, I’m writing a program that sends Airtable content to WhatsApp in Node.js. I’m facing a problem while sending the image file, I can only find a way that sends the image URL and not the image itself. How can I convert the URL to the image file? Code for sending the image URL. const img = record.get('Image'); imgurl = img[0].url console.log(imgurl) Help is appreciated, Thank you!
I created a new token and tried to use it to replace my API key in a Zapier app connection for Airtable. Thought I was doing the right thing in preparation for the deprecation in 2024. It didn't work. Zapier doesn't seem to recognise the token and wouldn't accept it.Likewise tried to use tokens in direct connections with other subscriber apps. They didn't accept them either.I'm missing something fundamental here right? Grateful for any help.
I'm writing a script to create records from an API call. One of the fields is a single select option. At the start of the script, I want to use the input option for the user to pick an option from the single select, which will be used for all the records. I don't see any option to pick from a single-select list. Is this possible?https://airtable.com/developers/scripting/api/input
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.