Need development and API help? Ask your questions here!
Recently active
Hi, Is there a way to know if specific base was selected or a future bases in a workspace ?https://api.airtable.com/v0/meta/whoami endpoint provides only the selected scopes.Thanks,Davit
Hi allBeen trying to pass a simple body through to one of my tables using Metatrader 5:{ "records": [ { "fields": { "Ticket": "abc", "Notes": "Notes here" } } ] }However, it fails with the error: {"error":{"type":"INVALID_REQUEST_BODY","message":"Could not parse request body"}} I've been using webhook.site to test sending from Metatrader, and passing it through here works fine. Body recieved ok when I just switch out the URLs.I've also tested with Postman and the raw body works fine sending the raw body through to both airtable and webhooks.siteSo I've kinda backwards and forwards tested both ways to airtable but can't figure out why sending it from Metatrader is not working when using it to send to webhooks works ok.Is there any way of bug tracing this a little more or getting more info from airtable?
Is there a way to make this interface less bulky? it's not very user friendly when looking at certain overviews to leave comments. Is it possible to make it look more like basecamp?
GreetingsI work with MAKE and I have a very strange problem with the remove function to remove a value/array from an arrayI receive in MAKE an array of linked fields and I want to return the entire array except for one ID that I received from a separate module in MAKE for some reason it didn't workI tried to insert the ID that I want to remove manually into the remove and it did work for meI checked what the difference is between them and I saw that when I receive it from the second module it is surrounded by square brackets and when I insert it manually it is not surrounded by square brackets (meaning the square brackets make it not work...) why is this happening to me? (What's interesting... that add even if you enter with square brackets and if you enter without square brackets it works)
Hey All,I maintain a fork of one of the R packages for manipulating data in Airtable and have run into some issues while trying to create a function that uses POST to handle extremely long queries or queries with more than 22 fields and the offset values to retrieve a table with more than 100 records. See package here: https://github.com/ecohealthalliance/airtabler/tree/masterThe function in question is this one: https://github.com/ecohealthalliance/airtabler/blob/master/R/air_post.RWhen using POST, the offset param seems to have no effect. The offset ID changes with each request. So if i have 600 records, the first offset id is "itr72y1g3QhvFAKE1/rec9RPMSRlQrWVyum", then the second is l ""itr72y1g3QhvFAKE2/rec9RPMSRlQrWVyum" etc. Only the Offset ID (the bit that starts with `itr`) changes, not the record. By contrast, with GET requests, only the record ID changes.here is an example of the body of a post request: { "offset": ["itr72y1g3QhvYZw5Y/rec9
After creating my tokens i cant see my api keys and i have tried everything Now im trying to create an Oauth and i cant seem to get the hang. i'm Trying to get my bot to input data into airtables and also get information from the same table but i have not been able to get it to work on make.com i already figured out how to get it to my google sheet via make.com but im not able to call back information hence my need for airtables
I have written the script below to select records from one table in my base and insert them as new records in a second table. The script is working, however it times out after running for 30 seconds. The process is selecting and creating about 200 records. Is there a more efficient way of writing this script so that it happens faster and doesn't hit the 30 second limit? I've read that maybe i need to create an array so that multiple records are inserted at once, but I am brand new to scripting and not sure how to achieve this.Any updates / changes / suggestions would be most welcome!Thanks //Script Purpose: //1. Select fields "Client" and "Client Family" from all records in the table "Client Master" //2. Using these values, create new records in the table "Bank Recs" //Define source table let table = base.getTable("Client Master"); //define fields to retrieve const fldClient = table.getField("Client") const fldClientFami
Hi folks,This is my first post on the forum as I'm just getting started with AirTable. I've set up a sample AirTable project to explain what I'm looking to https://airtable.com/appEMeJBL3Crynbxm/shrghnubXMunVieh1There's an "Orders" table with all of the orders we receive from customers, and the parts that we need to fulfill those orders. There's an "Inventory" table with those exact same parts listed as records/rows rather than fields/columns. I want to sum all the parts required for open orders and display them in the Inventory Table "Required For Orders" field. Then it's just a simple calculation to get a read out on whether or not I have enough parts in inventory to fulfill the order. My actual process has about 60 parts and hundreds of orders, but if I can figure out how to do the above it should be the same to set it up. Thanks,Ted
Hi there,I would need some help. I have entries with a field "Description" this field contains a lot of text (coming from calendar entries). Part of the text is the name of a store. it's the words after "Name des Stores: ". I need to extract these words and make them available for the next action. Any help is highly appreciated!!thx!!!!!
Hello,I would like to develop a script using scripting extension that would take 2min to run. Is it possible to schedule this script to run in every 5 min? If I schedule using this method there will be a 30 sec runtime limitation?https://support.airtable.com/docs/at-a-scheduled-time-automation-triggerThanks.
I can't seem to get a valid access token in Airtable based on JavaScript code that works in a Google Apps Script. Here is the working code: var clientId = '...'; var clientSecret = '...'; var url = 'https://accounts.spotify.com/api/token'; var headers = { 'Authorization': 'Basic ' + Utilities.base64Encode(clientId + ':' + clientSecret) }; var payload = { 'grant_type': 'client_credentials' }; var options = { 'method': 'post', 'headers': headers, 'payload': payload }; var response = UrlFetchApp.fetch(url, options); var accessToken = JSON.parse(response.getContentText()).access_token; This code relies on objects and methods that don't exist in Airtable's automation coding environment, namely Utilities.base64encode() and UrlFetchApp.fetch(), so I have tried rewriting the script to work in Airtable. To bypass an encoding method, I simply encoded the clientId and clientSecret manually and substituted the encoded string for Utilities.ba
I’m using the scripting app to send data via API request to another application. It’s currently functioning, and the other application is able to take the data and perform as required. However, I’m having trouble getting a response from the API request that doesn’t timeout. It works for one or two records, but beyond that it’ll return a Request Timeout error. Surprisingly, the code does wait for the function to be fully performed (I get a loading icon), but the response information doesn’t seem to be waiting. Is this a limitation with remoteFetchAsync/Airtable or is something wrong with my implementation? Related code: (I’ve replaced the URL and header/x-functions-key with dummy strings): const stringifiedData = JSON.stringify(data); const url = "private_url"; const requestOptions = { method: "POST", headers: { "Content-Type": "application/json", "x-functions-key": "private_key", }, body: stringifiedData, keepalive: true }; await remoteFetchAsync(url
I keep getting to the point where I have no errors, but its still not working, I need help// Personal Access Token const token = 'pathr64Bev1PpaiJH.90e1e914f174f02f52979575ca3b30053bf32953f6727af49891b97a2a0c6f57'; // Base and Table Information const baseId = 'appNQ88GsYacjfeij'; // Your Airtable base ID const sourceTable = 'tblho4tbUAGTxgcB4'; // Replace with the source table name const destinationTable = 'tbl596fVOoOn3g2y2';// Replace with the destination table name // Fetch function for making API requests async function fetchAirtableData(url) { try { const response = await fetch(url, { headers: { Authorization: `Bearer ${token}` } }); if (!response.ok) { throw new Error(`Failed to fetch data from Airtable. Status: ${response.status} ${response.statusText}`); } return response.json(); } catch (error) { throw new Error(`Failed to fetch data from Airtable: ${error.messag
I have setup my new personal api token in Airtable and have followed the instructions for accessing it via GET call in Voiceflow yet my token refuses to grant data access to Voiceflow. I'm fairly new to API calls so it could be that I'm missing some detail here. I have included images showing all the steps I've followed and what information I'm using. If there is anyone else that is having success with this, I would love any advice you can provide. Thank you in advance!
Hello!We are attempting to connect using OAuth 2 but the development team says they are not getting any answers from Airtable.We are being asked to login first - which we do, succesfully.Afterwards, we are being asked to select the base and be granted access.That's fine but after we click Grant Access, nothing happens. The team expects to receive a code of some sort.Would you kindly help me out?Thanks,Andrei
What is the API limit for Airtable Post/Patch requests?It looks like the number is 10. Is that correct? Are there any ways to increase it?
Hello Airtable Community!I'm looking to enhance my tables and I believe using scripts could be a helpful solution.Here's the issue: I have a database where company managers provide monthly forecasts for income and costs on their respective projects. Currently, I've set up an Airtable automation that detects the start of a new project and adds a record to the managers' table.However, I have a gap: when a project is completed, I want Airtable to lock in all the data entered up to and including the project's end date, and then remove any predictions made after that date. Does anyone have a solution for achieving this? Your assistance would be greatly appreciated!
Hello, Airtable community!I am writing an extension and I want to change the background color of particular cells if they match condition.For example: There is a Price column and if the price is > 1000 I want this cell to have a red background. I know there is a Color option on top of the table that do exactly the same. But I want to apply this rule to each table that come in this base for each number fields automatically. Thank you in advance!
Hi!with the API Key deprecation ... I was wondering if anyone in the community have been able to convert / use the "Gatsby-source-airtable" plugin to connect to airtable using the new API auth method?This might be more a question for the Gatsby community, but giving it a try here first.*Anyone aware of a different plugin that I could use to achieve the same results of sourcing my airtable data into Gatsby? Or have any insight if that plugin will be updated to support the new auth method?Thanks a lot 😎
Hi everyone, I'm trying to script a button to gather info from airtable and send it to an API which will turn it into an invoice and send it off. I'm getting an Error that makes no sense. The code:const customerNameField = 'Name'; const customerEmailField = 'Email'; const detailsField = 'Details'; const priceField = 'Price'; const amountField = 'Amount'; // Replace these values with your developer email and API key const developerEmail = 'yehuda@officeours.co.il'; const apiKey = 'APIKEY'; // Replace this with the EZcount API endpoint const ezcountApiEndpoint = 'https://demo.ezcount.co.il/api/createDoc'; // Get the current record's field values const customerName = record.getCellValue(customerNameField); const customerEmail = record.getCellValue(customerEmailField); const itemDetails = record.getCellValue(detailsField); const itemPrice = record.getCellValue(priceField); const itemAmount = record.getCellValue(amountField); // Construct the cc_email array const ccEmails = [c
I am trying to create a script to overcome the issue with updating multiple records after a "Find Records" search that yields multiple results. Automation Trigger: Record from "Packing List" table gets updated to ShippedDesired Actions:Use "Find Records" to search for items on the Packing list that were Available and mark them as Shipped (Some items may be on backorder so I want those to remain as is)This search returns a list of the 2 items (in my example) with Available as their status.Update the status cell to Shipped. I am not familiar with scripting so any help on writing this will be appreciated! I know I could complete these with Integromat (Make) but I'd rather keep it local to AirTable and less complicated.
I have an airtable script calling a 3rd party API for OAuth to their platform but as of about a month ago when calling their auth url ex: https://somecompany.com/api/oauth/token i'm getting a failure when I run giving me this errror: Error: request to https://63.94.171.182/api/oauth/token failed, reason: write EPROTO 80AC1602D17F0000:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:ssl/statem/extensions.c:893:It looks like when called from the script it is converting the url to an IP? when I call this API from Postman everything works fine so it is something Airtable side causing it to convert to an IP that has me blocked.. Help!
We all know that the Airtable API keys have been deprecated in favor of the new OAuth2 integration... but how do you make the changes in your app?We have a native Airtable integration, so we created a tutorial to show you how to do this.You can learn how to transition from the traditional API key approach to OAuth2, which offers improved security by reducing the exposure of sensitive credentials.Totally tailored for developer, explore practical code snippets demonstrating how to set up OAuth2 authentication in your applications. Read more here: Link
Hi, I need an attendance tracker for a nonprofit organization that organizes different activities throughout the year. I first tried doing a form that our coordinators of each activity would use to report the activity, time, description/impact, and attendance. The attendance is linked to a table that compiles the beneficiaries of the different activities that are run by the Non-profit. We already have some beneficiaries or previous participants in this table and so some of the attendees are already in our records, but when we have new attendees, I would like to be able to generate a new record from a form. I am able to add a new record in the grid view, but not in the Form. I have already tried doing an interface and it still won't give me the option to add new records in both form or interface. I do have a plus plan (not the free version).Our objective is to be able to have a beneficiary registry or a complete list of beneficiaries to report to our donors every year. We also
Is there way in node js airtable module to query on field Ids and field names, if there is no field Id present in the table , then it should look over the field names provided in the code.For Example , I am looking for field whose name is "event Id" and the field Id is of the same field is "fldtu2298482hs" .. I would include my field Id in the select statement and if my field is not found in the table , the select query should fall back on the field name "event Id"
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.