Need development and API help? Ask your questions here!
Recently active
I want to make it simple for users on my CFL prediction website to search through my Airtable content. I'm considering using the Search app. Is this the right choice, and do you have any tips for setting it up effectively?any Idea?Any help is appreciated!
Hello,I have a question regarding the Airtable API key deprecation, and was hoping someone could clarify/confirm. Basically I am wondering whether this change will affect us, and whether we need to make adjustments. I've searched the forum, but I did not find an answer. Maybe this is a newbie/misplaced question. If so, I'm sorry.I have a base today where we use the Google Distance Matrix API to retrieve info from the Google API. We have no external services connected to the Airtable base. If we go into the "Developer Hub" and look at "API Key" the list is blank. That is true for "Personal access tokens" and "OAuth integrations" as well.The Distance Matrix API uses an API Key, which we have created through google. We use this key when Airtable connects to the Distance Matrix API to get info. This is done in scripts and automations, and we use the function"await remoteFetchAsync(txturlrequest)" to interact with the API through the scritps. In the automation we use "await fetch(txturlrequ
Hi everybodyWe just upgraded to the Airtable Business account and recently updated our Airtable connection in Zapier from one user's personal access token to another user. Now all the Zaps using Airtable have stopped working - and have an error message that the Airtable connection is expired.I've tried reconnecting the airtable account several times, and each connection says expired.When you sign into Airtable through Zapier, there are a few new options... I've selected the organization option as this makes the most sense for us. No luck - it always shows as an expired connection. Any advice??
Hi everyone, Excited to be using the Airtable API!I'm trying to add new fields to a given table in a given base via this endpoint, but keep getting a 404 {'error': 'NOT_FOUND'}Here's my code:payload = json.dumps(payload)response = requests.get("https://api.airtable.com/v0/meta/bases/{base_id}/tables/{table_id}/fields".format(base_id=base_id,table_id=table_id),headers={"Authorization":"Bearer {token}".format(token=API_TOKEN),"Content-Type": "application/json",},data=payload) Could anyone advise?
I want to use timelines to keep track of, and plan things that happen to our garden beds at work - weather that is ammendments, planting, seeding, etc. Currently, each event - e.g. seeding of carrots, or application of lime is it's own record. When multiple things happen at once, against each bed, the timeline view is unwieldy to navigate. EG here I can only see 2 out of 60 beds at onceAll related events are grouped by a unique code. I can use another table, that connects all records with the same code into a single record, and timeline view that. Like this:But functionally this is inelegant, and for useful experience, I need to be able to edit the individual elements in the same base. For planning purposes, I really need to be able to drag the groups into different beds on the timeline.It seems like a simple functionality, but is there a simple way to achieve a reduced view, so I can view more of the farm beds at once?
Recently our Softr.ai app has not been able to consistently load information from our airtable databases. This never used to be the case and nothing has changed in the configuration. I am wondering if this is linked to the API changes - I read somewhere that if an airtable client now goes over their API limit (which we do if we are treated as a Team client and not a Pro client) then the 5 API calls per second is impacted. Is this what might be happening? (See screenshot - "request limit exceeded") I understood from what you said that we would be getting unlimited APIs on our current plan (Pro) until it runs out in April 2024 (because we have paid for an annual subscription), but I am wondering whether this is not the case and our ability is to make API calls is already being impacted. It would be really useful to know the answer to this as is currently not useable as it is not loading consistently. Could you ask one of your team to let me know
I have an issue where a sync that used to work has stopped as of 13 hours ago.The sync is from one base to another.This is the error message on the table that is being synced from the original."Unable to sync this source. Internal sync error"There have been no structural change or field name changes on this base during this period.Filed a support ticket (00634496) but this is business critical and a day to get a response doesn't answer that.
I am trying to create new records via airtable.js, when I try to create a new record in Link-to column with row-value (i.e. name - string not Record ID), it does not work and reply Class {error: “INVALID_RECORD_ID”, message: “Value “VALUE” is not a valid record ID.”, statusCode: 422} Is there any way to avoid this condition? or there is not “typecast” command in airtable.js ? if yes, please let me know some example, var dataCompt = { "field1": "value1(text)", "field2(Link-to column)": "value2(text)" }; function createATData(){ base(tableName).create(dataCompt, function(err, record) { if (err) { console.log(err); return; } //loadArtists(); }); }
Hi guys,I have been trying to create a simple Make.com scenario to test the waters, where an Airtable record is created from a pre-specified Etsy receipt. The first step works great, all records are pulled from Etsy's API, but when we get to Airtable, I'm getting a repeated [404] Not Found error.According to Airtable developer @EvanHahn's answer here, Airtable only returns 404s in two cases. I quote:the resource you’re fetching is missing. For example, if we can’t find the table, or the base, or the record, or whatever.the URL you’re hitting is totally bogus. For example, a request to api.airtable.com/v0/garbage will return a 404.It seems that it's getting the base, the table, and the record just right, so I assume the URL it's hitting must be correct.The error persists regardless of smart link or column ID use.Make.com gets its access via a personal access token:The connection screen looks like this: You will see that Etsy has 4 acquired permissions whereas Ai
Good morning to you,I'm trying to create dynamic ToDoLists.At first, I thought I could solve my problem by using complete NoCode (see my post).Finally, after some advice, I turned to @Giovanni_Briggs code and post.I've never coded the day before yesterday, and I'm trying to use AI tools to understand what I'm doing.I've managed to adapt the proposed code to my base and half of what I want to do works.As it happens, my code copies the tasks from my original list very well,It links the new tasks to the event we've validated internally,But it doesn't create a link between parent and child tasks (I've been tearing my hair out for 24 hours trying to solve this problem).To explain, each parent task (main task) is linked to several subtasks (child tasks).example : The Hotel taskis therefore linked to several subtasks:Hotel searchValidation of a hotel according to quotation and price/quality ratioHotel reservationHotel paymentReceipt of invoiceWhen I use my script, everything works fine except
I'm writing a script in Airtable Extensions to pull data from Canvas API. I've set the per_page limit to 100, because that's the maximum number of objects Airtable will retrieve at once for an external API.I need to use pagination to download the rest of the results. According the Canvas API reference, it's in the response header Link value. I'm able to see this in Postman but how do I retrieve this in an Airtable script? How do I set up a loop to paginate until the end? All the online discussions are about Airtable's API and I can't find how to retrieve response headers. let currentCourses = await remoteFetchAsync("https://XXXX?per_page=100", requestOptions); const currentCoursesData = await currentCourses.json(); console.log(currentCoursesData);
It'd be nice if we could put a photo in base's appearance, although airtable offers several options, we could have more personalized bases, making it easier to identify each one
Hey folks, just wanted to share that we created this pipeline which is free to use.It has schema inference and evolution, so the column names and data types will automatically be normalised to fit the destination and also adapt to any additions etc.you can configure it to load fully or incrementally.If you have feedback, please join our slack and discuss there or open a git issue. Pipeline docs: https://dlthub.com/docs/dlt-ecosystem/verified-sources/airtableour slack: https://join.slack.com/t/dlthub-community/shared_invite/zt-1slox199h-HAE7EQoXmstkP_bTqal65g
I am stuck 😫I am attempting to configure a webhook, but I continue to encounter a 401 error that seems to be related to the API token. I have thoroughly reviewed all the settings and ensured that I am inputting them accurately. Additionally, I am utilizing an Airtable pro plan, and there are no other users associated with my account, so I have all the permissions. Also if I put "Bearer" in front of the token it turns into a 403 errorAny guidance would be amazing!
Hello,since recently I've a bug with embedding's airtable on my website. it says "airtable doesn't authorize the connection".Anyone knows how to solve this bug? thanks airtable Support hasn't been able to help me
Hi All,I am having an issue with my script:When using an integer value in the condition, the script works.Example: return all records that have a value higher than 9 in the field name "Bedroom": const propertyTable = base.getTable("Listing"); // Read the data from my Listing table const recordsFromproPertyTable = await propertyTable.selectRecordsAsync (); //Filter records matching a condition const matches = recordsFromproPertyTable.records.filter((records)=>{ return recordsFromproPertyTable.records.find((potentialmatch)=> { return records.getCellValue("Bedroom") > 9; } ) }) console.log(matches) When trying to match the field value with a single select or multiple select field, I am getting the following error:This condition will always return 'true' since the types and 'string' have no overlap."I am pretty sure this is due to the fact that I am comparing an Array with text but I am not sure how to solve this:Return all records tha
Hello,I would like to know if changing my extension name and the dev contact is possible. I tried to find the solution in the code but didn't find any information. Do I have to recreate a new extension with the name I want? (I know I can change the extension name after but I would like to see if I could do it directly)Best regards
Hey can you kindly tell how to generate Api key for air table . Is air table generating api keys or not? I tried every method i get a personal token but key isn’t generating. I also pasted personal token at the place of api key but it gives error 401 in voice flow
Hi, my currency script can be run manually but fails when run via automation. I'm using the standard, "recommended" currency script. See attached image.
I want to download attachments from one of my tables via the API locally:If I open and download the file from the UI, it seems to download them from a S3 server. Is there any way to automatize or mimic this behavior via the API?
Hiya AT community, I was hoping someone would be able to shed some light on my issue, as I haven't been able to solve this one on my own!I have a script that is performing some updates to a stocktake via a script. It will find matching items and then update the value in the number field. My confusion here is that it is working for one field and not the other field, I have tried different strategies to try and get an error or figure out why, but the field ID is defs correct and the field name used instead also produces the same result. Any advice would be appreciated 🙂I'll try add the relevant code to the issue..This if statement works as expected if (newStockMatches){ if(storageLocation == "Warehouse"){ console.log(newStockMatches.id); recordsToAddStock.push({ id: newStockMatches.id, fields: { 'FIELD ID IN STRING FORMAT': newStockMatches.getCellValue('FIELD ID IN STRING FORMAT') + qty // Warehouse fiel
Hi... I can use a little bit of help here from the experts.... We currently have a Google API integration with Airtable on a project and we have set up routing and it is working well to create and updates routes (route records) within AT for us, but we don't know how to do 2 things we want to do:I don't know how to get an actual link back from Google Maps to the route record (we are using Make for this integration) to just show the route (waypoints) on an actual google mapI am wondering if there is any way to update the route waypoints (drag and drop on the map into a different order) and have it actually update the route records in Airtable when we adjust the route order on the actual map?
in what i am working ?i am working with a bot the bot ask questions and the response have to apered in airtable but its not working i try to fix it with a staff of botpress that is were i do the bot but they told me that it was an error of air tableconst airtableAccessToken = 'patrKShGndYDE36XQ.c35584fd7450be9fba9669453b09eac22583d3aa7d584d5b42ce7ede4da3822b';const variables = {name: workflow.name,email: workflow.email,phone: workflow.phone,budgetforproject: workflow.budgetforproject,service: workflow.service,adress: workflow.adress};const url = 'https://api.airtable.com/v0/appFWL0WUh6Sd78Im/color%20flux%2023';const headers = {Authorization: Bearer ${airtableAccessToken},'Content-Type': 'application/json'};const response = await axios.post(url, { records: [{ fields: variables }] }, { headers });console.log('Variables sent to Airtable:', variables);console.log('Airtable response:', response.data);this is the code i dont know where is the problem can someone help me
I am attempting to authorize an AirTable application to use OAuth with Matillion ETL (an orchestration tool).I am getting a an error while trying to authorize the application, related to the "state" field not being configured correctly. Can anyone help?
Hello, I am creating a json object from my airtable data to send it to a google script: //Table Bail --> xxxxx //Table Locataire --> xxxxx //Table Facturation --> xxxxx //Table Roof --> xxxx //Table Chambre --> xxxxx let url = "https://script.google.com/macros/s/XXXXXX"; const id_bail = input.config().id_bail; //Recupere l'id du bail let table_bail = base.getTable("xxxxxx"); let query_bail = await table_bail.selectRecordsAsync(); let record_bail = query_bail.getRecord(id_bail); //on filtre la base en fonction de l'id du client ////////////////////////////////////////////////////////////////////// let error_log = record_bail.getCellValue("Error_Log") let bail_statut = record_bail.getCellValue("Statut_bail") if (error_log !== null){ console.error(` Oups, une erreur est survenue: \n${error_log}`) } else if (bail_statut !== "Fini"){ //Table Roof let id_roof = record_bail.getCellValue("Roof"); //id_roof associé au bail let table_roof = base.getT
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.