Need development and API help? Ask your questions here!
Recently active
Hi, I am writing an automatum that will add £20 to all records in a certain field every week. I need to (or I think I need to!) write a simple script that will add that £20 to the certain field, just wondered if anyone could tell me how to do this please.
Hi everyone. I am trying to convert a img to a url automatically every time we upload or attached an image to a table. This is the code. let table = base.getTable("Table1"); let selectedView = table.getView("Shows"); let selectedField = table.getField("Speakers"); let fieldToEdit = table.getField("Speakers URL"); async function convertAttachmentsToUrls() { if (selectedField.type !== 'multipleAttachments') { console.log("is not an attachment field. Run the script again with an attachment field"); } // Loads the records and field from the selections above let query = await selectedView.selectRecordsAsync({ fields: [selectedField] }); let records = query.records; // Array for records with attachments and their URLs let attachmentURLs = []; // Loops through qualified records and pushes them to the attachmentURLs array for (let i = 0; i < records.length; i++) { let recID = records[i].id; l
HI Everyone I am sharing a problem today. Not sure is there any solution out there. Please response if there any solution for that. I am trying to get the latest available option for a select able field inside a loop of scripting apps script. But the problem is script provide me the initial instant of the table if i make any change runtime of the script then it’s not getting the updated instance even though i try to take a new instance of the table . Below is my code while(true){ var table= null table= base.getTable("Table 1") console.log(table.getField("Status").options.choices) console.log(await table.selectRecordsAsync()) //trying to make wait the loop var a= await input.buttonsAsync("test",["test"]) } And also want to mention that it’s getting the all the new records in new instance of the table or the updated records are also available on it. But the updated fields options are not available in updated instance of the table. May be it’s a bug from airta
Hey Airtable Community, We’re excited to announce the newest version 2.0.0 of our command line tool for custom block development, @airtable/blocks-cli.Thank you to the developers and community forum members that provided feedback and beta tested this version prior to release. What new features can you expect? We heard feedback that it was difficult to share code between block projects, and the inability to customize the way block’s code was bundled limited what developers could build with blocks. To that end, we’ve worked to release the following features. Use code from other directories: This version allows the bundling of “sibling directories” outside the source directory. Those directories can include npm imports based on link or file. Using a custom bundler: This version uses webpack and allows you to swap out our built-in bundler for your own, custom, bundler. You can provide a complete custom bundler implementation, or you can start with the Webpack bundler package and tweak the
I’m updating a wildfire refugee map based on data from airtable. I’m using ArcGIS and it can import CSV from a URL. My goal is to make a job that runs hourly (or when the table is updated) that creates a CSV and uploads it somewhere.
My Custom app syncs data from a 3rd party into a user’s Airtable base. Previously the app made an assumption that the user was at least using a Pro plan since apps were only allowed on Pro and Enterprise plans so I assumed I could sync up to 50,000 records. Now that any plan can have an app, I need to detect the record limit for the base. Is there a way that I can do this? Thank you
Hi, In the process of building an Airtable AUTOMATION that will update all records in a base at once, I discovered automations only goes to 100 records. So I decided to try the scripting block. However, I have little experience with JavaScript and I’m struggling to apply Airtable’s specifics when it comes to writing a script. Could someone help me understand scripting for "how to update a field for all records in a table, when a record enters a view in another table? HERE’S WHAT I NEED A SOLUTION FOR: I have a “Members” table with a field called “Available Trimester.” I also have a “Trimesters” table that has dates that each trimester goes on sale (There will only ever be 1 trimester on sale). What I’d like to achieve is when a Trimester (based on its sale date) enters the view “Trimester on Sale”, Id like to update the “Available Trimester” for all Members with the linked record to the new trimester on sale. Anyone who can help with an example script that can achieve this?
Hi there, I need some help, I’m new on Airtable! I’m trying to solve a college test. I have created tables with forms, when filling out the forms and updating the tables I would like to have a button that randomly assigns me roles. FORM 1 TABLE 1 FORM 2 TABLE 2 I created an automation to give a value Resistance to the Role column. I have to write a script that randomly assigns a role for each record, the role can be Resistance or Spy. The total number of roles depends on the total number of players. The total number of players is found in another table. If the total number of players is 5 then 3 records must have a Resistance role and the other 2 Spy. If the total number of players is 6 then 4 records must have a Resistance role and the other 2 Spy. If the total number of players is 7 then 4 records must have a Resistance role and the other 3 Spy. If the total number of players is 8 then 5 records must have a Resistance role and the other 3 Spy. If the total number of players is 9
Hi there, New to the community, you guys have already been a huge help. So I borrowed a script from this user: Creating Tasks from a Template and then I adapted the code into an automation I am building. What I am trying to do is this: Via Automation When a Record is created use that record as the selectedEvent (instead of choosing a selected even like Victoria has in her script) and then run the script. Victoria’s script asks you to choose the template for the linked tasks, but I figured out how to set it to one set of tasks by using the id of that template in the code. Below is the code I’ve been using in my automation script and I keep getting this error: Error: Field “fldtxrU67I4FayPzK” cannot accept the provided value. I think my problem is I’m not entering the correct object when I create the list of tasks. I think this has to do with my syntax when referring to an object using the record id. Any help would be appreciated. Thank you all!! // Declare variables for views from the p
Hi I am using AppGyver to produce my app, and I am attempting to link my table to my app via rest API. I am at apoint where I am being asked for the Resource URL (AppGyver). Where can I find Resource URL in Airtable? Thanks
Hey dev community, We recently made a bunch of improvements to our API, SDK, and documentation! Check out the list of changes below. Additions to our Documentation: Surfacing Field IDs Did you know that field ids and field names are interchangeable? Using only field names can be problematic when there are unexpected field name changes. To make this more prominent, we just added the field id in the fields section of the API docs along with a blurb explaining that field names and field ids are interchangeable. We hope this saves you the headache of dealing with unexpected field name changes in the future. Documenting Synced Table Behavior Synced tables are one of the most powerful tools in Airtable but are less editable than regular tables. These restrictions, such as being unable to add new records, are also present in the API. To make these restrictions clearer we’ve updated the api docs so that Fields in synced tables that cannot be edited are appropriately marked in the fields sect
I am completely new at scripting and am looking for some help with the below problem we are trying to solve. Each week we get a list of staff names that have worked in a certain location in Excel, and have to manually link these up in Airtable and I am looking for a way to automate this using a script. The key part is we use this data to work out who has worked where in the last 12 weeks. I’m thinking we can use an internal count to keep track of how many weeks ago it was they worked there, which is reset each time they work at the location, or 1 is added each week they don’t. All staff names are linked records which exist in a table, though some names are different between the Airtable and Excel records, and staff can work at more than one location. The rough idea I have is as below: Search for location Add 1 to count for each staff member already listed at location Search for staff name at location If present, reset count to 1 If not present, add staff name, create new count for th
I’m trying to create a webhook and get this error msg: {"error":{"type":"INVALID_REQUEST_UNKNOWN","message":"Invalid request: parameter validation failed. Check your request data."}} This is the log of my request: ← “POST /v0/bases/appXXXX/webhooks HTTP/1.1\r\nContent-Type: text/json\r\nAuthorization: Bearer keyXXXXX\r\nAccept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3\r\nAccept: /\r\nUser-Agent: Ruby\r\nConnection: close\r\nHost: api.airtable.com\r\nContent-Length: 237\r\n\r\n” ← “{“specification”:”{\“options\”: {\“filters\”: {\“dataTypes\”: [\“tableData\” ], \“recordChangeScope\”: \“tblxXXXXX\\”}}}\”,\”notificationUrl”:"https://XXXXX/air_table/75d5f34b-d96d-4dab-8314-bbae8d1ca82b/ping"}"
I’m trying to modify an existing piece of code I got from a template. I need to create a project date along with the project name, but the code as is creates the project date as a text field. I know it’s an issue with the output.markdown or the input.textAsync, but there’s no input.dateAsync or something like that. How can a make this output in a Date field? Thanks!!! // pick tables from your base here let projects = base.getTable('Competitions'); let tasks = base.getTable('Tasks'); // prompt the user to pick a template for our project output.markdown('# New project'); let name = await input.textAsync('Project name'); // prompt the user to pick a date for our project output.markdown('# Project date'); let date = await input.textAsync('Project date');
Hello I’m using Airtable for several years and I have some Vbnet office add-ins to use Airtable data. At the moment I use copy paste from airtable to excel to use the data, it’s ok but it’s just anoying if I need a few tables. I would like to view a simple example of how to connect to a Airtable view of a table and use that data to for instance make a msgbox. I’m not the most experienced Vbnet developer but i can manage after a first example. If someone has a simples examplo it would be great. Thanks.
Have not received any communication from Airtable since submission 2 weeks ago. How long does this take? I can see that nobody from Airtable has even tried using the app in those last 2 weeks. I submitted the code and the information form at the same time. I got the automated email that said “Thanks for filling out the app information form… We’re now ready to start reviewing your submission.” so looks like my app submission was received… How long does it take to have apps looked at / approved ? Regards, Adam
I have a field that needs translating into a form that can be used by a second program, but there are some 50-60 options that need translating and the IF statement got huge. Essentially it goes: IF Cell A = “Manager”, “X”, IF Cell A = “Worker”, “Y” … It only needs to be done once, so would it be possible to use a script? The find and replace one looks almost perfect, but rather than replacing the value, I want the new value pasted into a separate cell
Hi Airtable team and community :)! First I want to thank the team for the awesome tool that is the Interface. I love using it (except for a few frustrations, namely the lack of a “duplicate” button or of the possibility to display fields instead of records as the x-axis in graphs). But my main concern today is the ability to share an interface. I just finished a Quarterly Reporting interface with KPIs of an incubator, and we want to share that with the executives of the school we depend on. For now, I understand there is no way to export the interface as a PDF or to share it with a link as a webpage instead of these busy important people having to create an Airtable account. I was wondering first if tricks exist to solve my problem overnight, and second if these features were planned? Many thanks in advance, and once again, congratulation for this amazing feature. Best, Tanguy
I’m looking for to connect Airtable to a PrimeTrust account to be able to do automatic ACH/Wires withdrawals, having a difficult time to connect to PrimeTrust API. What i need to do An Airtable automation that with just clicking on a button we can create and send the txn (withdraw funds to a third party) with our Primetrust account Create the script that performs this task -Primetrust has a sandbox option, that I believe it’s not necessary to have actual credentials Please guide to write script for this scenario as i am unable to so. I have less knowledge of how to write script for api calling and performing different actions.
Hi, I’m building a custom app for Airtable. The app interacts with my web service via REST API calls. I’d like those API calls to be authenticated. In other platforms, the integration layer has a function you can call to get a cryptographically signed document that contains the user’s account information. For example, as a Google Sheets addon, you can call ScriptApp.getIdentityToken to get an OpenID Connect token with the user’s information. Airtable almost has this – the useSession hook returns the current user’s ID and email address. However, they are returned just as plain strings. This is not sufficient for authenticating the user, because anyone could claim to be a user just by knowing their email address or Airtable user ID. Would Airtable consider exposing something where there’s a cryptographically verifiable way of retrieving the user’s identity? For example, an OpenID token, or an OAuth flow? As it stands, I have to implement my own user storage system, and require the user t
Hallo, i have a problem with the script. i would like a template with next actions for a project with record picker function. but the problem is with my script, i have two projects with the same name always after the script. one project is empty and one projects with the template actions. Problem is the projectid var. The script create always a new record. Can someone help me pls with the syntax? // pick tables from your base here let projects = base.getTable(‘Projekte’); let tasks = base.getTable(‘Next Action’); // prompt the user to pick a template for our project output.markdown(’# New project’); let record = await input.recordAsync(‘Select a record to use’, projects); if (record) { // Customize this section to handle the selected record // You can use record.getCellValue(“Field name”) to access // cell values from the record output.text(You selected this record: ${record.name}); let projectId = await projects.createRecordAsync({ ‘Projekte’: record.name, }); await tasks.createRecord
Hi Airtable! I seem to have alot of questions lately, I hope to give back, too. I am trying to upload Google Drive images into an Airtable record (one image per record), using Integromat. I want to know what the image limit is, per day, since it stops uploading images, after a number of records. Thank you, Mary
Has anyone been able to successfully integrate the SharePoint v2 Rest API into their scripts? I am looking into it and it uses Oath v2 to authenticate and generate an access token, but the token expires in 12 hours. The problem I think I will run into is that I can generate an access token the first time outside of Airtable, but it really is of no use if it expires in 12 hours. Does anyone know how I can have an access token that doesn’t expire in 12 hours or generate a new access token without needing user interaction which isn’t possible inside a scripting app or automation script?
Hey there! I need to create a component for one of my apps that searches through my records by a couple of criteria corresponding to fields. Is there a better way to do it than just looping thru every record and checking? I have thousands of records. How does the Airtable search app do it for example? Or perhaps someone has already built something open source that I can use? Ideally I’d be able to use something built into Airtable like Interfaces, but they are not quite customizable enough yet. :slightly_smiling_face:
Hey there, Looking for a bit of help with something that is driving me round the bend! I’ve wrote a script that basically checks staff availability against a general schedule(i.e. days and times of the week they are generally available) , but also checks to see if they have already been assigned on an exact date. I want to then return only available staff. Currently I have two arrays with the names (strings) of the staff who are generally available and then names of those staff who are already booked that day. I’d now like to filter one array(avaliablestaff) by the other (unavailable) and be left with only staff who are definitely available. But when I try something like const filteredlist = availablestaff.filter(name => (!name.includes(unavailable)); Nothing is removed. I put a specific string in there instead (as you can see in the screenshot) and could filter it, but can’t get it to filter by the other array I’m CLEARLY missing something. I suspect it’s something to do with only
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.