Need development and API help? Ask your questions here!
Recently active
Hi there,I'm new to the Airtable Community and was hoping someone here might shed some light on a script I'm trying to implement. I am receiving data from a third party form via an AT Webhook. I need to concatenate the image path (ImgPath) submitted from the form when it includes an attachment to create a full URL and then update the PhotoURL field which is set as an attachment in the current record in my AT table . However, when I test my script I get the error:Error: Field "fldAjZqtaQu8IMl9F" cannot accept the provided value.Below is the relevant section of myscript: let imgURL = `https://mydomain.com/${ImgPath}`; const table = base.getTable("Entries") const query = await table.selectRecordsAsync({fields:["ImgPath", "PhotoURL"]}) let record = query.records[0].id; await table.updateRecordAsync(record, { "PhotoURL": imgURL }) I see plenty of examples where the update is triggered to batch update the entire table but I am hoping to do the update with each individual
I'm trying to set up the AirFlow Extension, however it is asking me for an API Key.Since AirTable have depreciated API keys, I'm unable to create one...I have tried using a Personal Access Token (PAT ID) but that is showing the error: "Authentication error - Please be sure your API Key is correct."I also tried to create an OAuth integration but I'm unsure what to use for the "OAuth redirect URL".Any help would be appreciated!
Based on the wonderful scripting resources here, I wrote my first script with the Scripting extension to send an email via SendGrid with the user clicks a button field.The email recipient is stored as a field in the People table in Airtable. The email body text is stored as a long text field in the Email Templates field.The template contains several fields from the People table to communicate customized information to the recipient.. I surrounded the field names with double curly braces, but they are not being resolved. The sent email is just the raw text.I think I'm missing something obvious...The reason for doing this as a script instead of using the SendGrid extension is that the extension sends to all records in a view. I want to have a button on an interface that the user clicks as they go through their workflow. It's not something that can be automated. The button should send the customized email to just that record.
I've created a base table on Airtable. Then from the developers/API key section, I created a token. I've copied the Token ID from the personal access tokens section and pasted it directly .env file. I filled the information correctly.Like this ; AIRTABLE_API_KEY=pat*************AIRTABLE_BASE=app8Knnd8Y8wQirZXAIRTABLE_TABLE=products Then I tested the connection. with this code block;const dotenv = require("dotenv");dotenv.config();const Airtable = require("airtable-node");const airtable = new Airtable({ apiKey: process.env.AIRTABLE_API_KEY }) .base(process.env.AIRTABLE_BASE) .table(process.env.AIRTABLE_TABLE);exports.handler = async (event, context, cb) => { try { const response = await airtable.list({ maxRecords: 200 }); console.log("####"); console.log(response); console.log("####"); return { statusCode: 200, body: "products route",&
hi all - reached out to airtable support directly but they honestly never answer and suck tbh so i figured hopefully someone can help me here ( I even got a email asking me to rate the help given by a support agent when I had zero contact with anyone) Anyways.I embdedded my table into my webflow website, but there are TWO worksheets within the worksheet. On my webflow website it only shows one. How do I allows people to switch between the worksheets? See Loom. https://www.loom.com/share/c55eb9be4b934e56a9af82c31110619d?sid=aa61e156-e620-4df2-b267-35ee875c7b10
I have two tables as follows:Matters table:Matter(s)DescriptionClient NameLead SourceBills table:Client NameMatter(s)Total ($)Both of these tables are pulling from two different data sources. I need a way to combine them both into one table so that table 3 is as follows:Lead Source# Matter(s)Total ($)I believe the best way to do this is to create records, but I'm not sure. In addition to combining the data from two tables into one, I also need the data to stay consistent (i.e. Client Name on matters table and bills table combine into one data set on 3rd table so that Lead Source and Matters can be "associated" with them.)If anyone knows of a way to approach this, I would appreciate the help. I've been working on it for over a week.
With the upcoming announcement, I'm moving tools to OAUTH away from personal access tokens.Much of the work is on a locally hosted server that will be talking to Airtable, so client-credentials-flow seems appropriate here for machine-to-machine interaction.I have a secret and am following the recommended OAUTH examples. It seems that the documentation really outlines the user grant really well, but the client grant isnt described. For example, I won't have a auth code, PKCE, or challenge answer with my token request, will I? I'm hitting the service, but am getting 401-Unauthorized..Now to my question:Is there a specific OAUTH client-credentials definition I can use to make sure I'm sending all the required fields?
I am trying to do a simple GET request using Airtable API in Postman to retrieve my records. But it's not working. I am a newbie here, any help is much appreciated.GET: https://api.airtable.com/v0/appkEdlvHkUVyG1QC/Sample%201?maxRecords=3Headers: "Authorization": Bearer Personal_Access_token
Um, yeah - it is. But first, a little of the backstory. As is often the case just when you’ve thought you’ve seen it all, a client asks - Is it possible to chain blocks and run them sequentially - as one completes, the next one starts? No, right? But then she tossed in another requirement - The computational results from the first block must be available to the next block and sometimes to all subsequent blocks. Oy! Nothing like a mind-bender for a Monday morning. This business requirement is daunting – indeed, impossible given the nature of Script Blocks. I’m sure the Airtable folks have pondered this, but as it stands, it’s off the table for now, right? Indeed, Script Blocks are simply not capable … until and unless … you factor in the amazing power of that which Airtable is known and most famous for - simple data/content management with an intimate relationship with integrated script. Often, it is the alchemy of data and code that spark the most remote possibilities into a new re
Why when loading words with the api, it does not load accents or letrta ñ??? Spanish characters
Hi there, I'm trying to create a script that takes data from Airtable and updates it into Memberstack JSON. I went this scripting route because I couldn't figure out a no-code alternative to this. The problem is I'm not getting any errors messages with my console logs and I don't know where to start on debugging what's wrong. Here is my setup: const MEMBERSTACK_API_KEY = 'API KEY HERE'; const AIRTABLE_API_TOKEN = 'API KEY HERE'; const AIRTABLE_BASE_ID = 'appFifDmh7qLKggjt'; const AIRTABLE_TABLE_ID = 'tblH65jLDy3WXddUQ'; const AIRTABLE_VIEW_ID = 'viwOTOaTHeGogrF5h'; // Function to update Memberstack user profiles async function updateMemberstackProfiles() { try { // Fetch records from Airtable const airtableUrl = `https://api.airtable.com/v0/${AIRTABLE_BASE_ID}/${AIRTABLE_TABLE_ID}?view=${AIRTABLE_VIEW_ID}`; const airtableHeaders = { headers: { Authorization: `Bearer ${AIRTABLE_API_TOKEN}`, }, }; const airtableResponse = await f
Can I assume that the order of the record IDs returned by table.createRecordsAsync does match the order of the records to create in the function argument?
I'm trying to create an extension which makes an external API POST call.First I tried to make a simple fetch call, but it is failing due to CORS policy:const response = await fetch('https://api.example.com/data', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({key: 'value'}) });But then in Block source I have found method unstable_fetchAsync(requestJson).const requestJson = { method: 'POST', url: 'https://api.example.com/data', headers: [ ["Content-Type", "application/json"] ], body: btoa(JSON.stringify({key: 'value'})), redirect: 'manual', integrity: null } await unstable_fetchAsync(requestJson);It's working as expected, but the name is suspicious. Also, this method is not documented anywhere. I'm afraid that after creating the extension, I will not be able to submit it for public usage. Is this safe to use unstable_fetchAsync or there is another way to make
Hello,I am trying to make an API call on Zapier and i am getting below error. I am unable to debug this error. When i test on Postman, it works absolutely fine.
Hi support team!I am building custom extension using airtable blocks sdk.Workflow here.1. When I click "Get companies" button in extension section, the extension will call 3rd party API.2. The API returns the result as a JSON format. Json contains record Ids of a table named "All companies".3. After this, I want to refresh airtable view of a table that is selected record ids returned from API.Is it possible?Please help me, thanks.
I’m currently using nocodeapi.com to reduce the costs associated with my Make operations, but their app hasn’t been updated to the new API specifications yet. Does anyone know of a similar app or service I could use?
Is there someone who can share an easy to follow example on how to retrieve data from Airtable and show them in a Nuxt 3 app? I managed to call the data but struggle to return the data to the vue page where I want to display it. I realise that this is not really a problem with Airtable, I would just want an example I can follow. There seem to be many different approaches, via a Netlify function (not my preferred option), using the Airtable.js library, using a "composable" ...
Hi guysI Want To Enter The Information I Have In Airtable Into My Multi-Vendor WordPress Website And Add It To The WP Dokan Plugin.Does anyone have an idea how to do this?
I am trying to create a table in an existing base using below endpoint but getting a not found error - https://api.airtable.com/v0/meta/bases/{base_id}/tables'type': 'NOT_FOUND'===============================================table_name = "Members"description = "Members"fields = [ { "name": "UserName", "type": "singleLineText" }, { "name": "Name", "type": "singleLineText" }] ================================data = { "name": table_name, "description": description, "fields": fields } headers = { "Authorization": f"Bearer {api_key}", "Content-Type": "application/json" &nbs
Hi Community,May I ask is it possible to make airtable connect to Navision via API?Also is it possible for Airtable thru API to tabulate forms in Navision simulataneously?thank you!
I can add a button on my interface page that navigates (go to interface page) to a form. However, I'd like to set a field value (within that form) based upon current focus.The application is an ideas board so I'm focused on Idea A (main page) and I navigate to a voting table (form) but I want to pass idea A to that form.So I'm thinking I need to associate the button with a script but cant find example code for this application eg interface page navigation. Can anyone point me to an example?
Hi allWe have been using Tableau to visualise Airtable data for a while now. As of July 3rd we are experiencing failures in Tableau, although not consistently, with error message "java.lang.RuntimeException: unknown is not supported by this version of Tableau.". Does anyone know the reason or even solution for this?Many thanks!Ester, part of Red Cross Flanders data management team
Entering and editing data in one logical form that is stored in multiple joined tables seems like such a common use case (e.g., contacts with addresses and phone numbers; invoices with company and line items; etc.). Yet, this seems difficult (impractical at best) natively in AirTable. How are people solving this? Is the only solution really to pay $$$ for additional tools? Or write complex scripts?Any thoughts/advice much appreciated!
I create some summary reports for a client. Data is read from a view I iterate through the records to generate the HTML/Markdown for the email.However, to get the formatting correct, I have to use this odd amalgamation of markdown and HTML. Using one or the other alone results in unpredictable results. When using markdown to create the 2nd or 3rd level header worked on the first record. Each subsequent record simply had the "## " in the email.Also, I can't use markdown or HTML to get a horizontal rule... annoying. Any answers for this. Not critical but nice to have. for (let i=0;i<recordsLockReady.records.length;i++) { let fileString = recordsLockReady.records[i].getCellValueAsString("File").replace(/"/g,''); let coeDateString = recordsLockReady.records[i].getCellValueAsString("COE (Estimate)"); let daysToCOE = "-n/a-"; if(coeDateString != "") { let coeDate = new Date(coeDateString); daysToCOE = Math.round((coeDate.getTime() - todayDat
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.