Need development and API help? Ask your questions here!
Recently active
Hi, I’ve got 3 tables i’d like to be able to return records from a linked table based on id’s. i’ve been trialling the filterby formula function to retreive a record by ID but how do you do this by multiple id.s eg. 1 record from a table looks like this “id”: “recOW2bVrD0EuXF7M”, “fields”: { “country”: “Australia”, “continent”: “Australia and New Zealand”, “partner_universities”: [ “recS7EnXzspRowVfb”, “recVpXFu93umekVij”, “reckcPSPWYAAzl7Ld”, “recUe3go5fHBqR1a8”, “recwzDNlgGOcuRrRY” ], “subject_university”: [ “rec4uL4PmXuO4UzMO”, “recNGBHjUh4yVzXp3”, “recc3ovVUYJ6b4qDD”, “recKv6l77p95Gn3im”, “rec5i1AgZwl5pdV4Y”, “recEpoJL6G0hxWxeZ”, “rec8KZDmdT8aotNdB”, “recmxAJYdxIhpmBFR”, “recx12pYZAcJLRCjv”, “recX6TGusfr1EoJVC”, “recnYZoCmrnWeLuG1”, “rectMdcCx3wWvXaS2”, “rec2XlS0dGmcdZxvx”, “rece2IYb8aCbMiqQl”, “recWeabmWidCnrvff”, “recmHycR4LgyKrxl6”, “rectGeLjBG9lIfJhG”, “recsxDGN1LUn4Yt5K”, “recvW3zithBqZqvRI”, “recQVWTz8IdwIeCgf”, “recMzzvoma0Mg2nKv”, “recoEiEKLDXGZbKfm”, “recp37vk0eogqnNDS”, “
I have a base that I can retrieve records from using the API from Javascript code, but I’d like to get the value for other fields besides just “Location”. Using “console.log('Retrieved: ', record.get(‘Location’));”, how do I modify this line to include in the output the field values for a field called “Size” in addition to the “Location” field? I tried separating multiple fields with a comma, but that didn’t work.
Hi, I am having some trouble with a Patch request to update a Duration field. The error I’m getting is this: {error: {type: "INVALID_VALUE_FOR_COLUMN", message: "Field Time Spent can not accept value 5306"}} But what’s interesting is, if I change the field type to “Single line text,” it works fine and updates the field as expected. Here’s how my header looks in both cases: Am I formatting the value wrong for the ‘Duration’ field type? I tried converting 5306 seconds to “01:28:20” string but I got the same error. Any thoughts? Thanks, Roosevelt
Is there an API call/endpoint that will list all of the tables if given a BaseID, or do we need to wait until the Metadata API is public?
Hello, I’m trying to sanely bulk update a set of records from a source to Airtable. Mechanically, I have it working, but I’m thinking that I need to employ some better practices for managing these updates. Here’s the current state: Data Have a JSON payload of multiple rows, preprocessed to match the Airtable schema Do not have the Airtable record ID in that dataset, we have our own identifier Process/Script Loop over each record in the JSON payload, add a timestamp (for sanity checks) Run a select query on the API filtering by our ID If nothing found, issue a create request with the payload If found, issue an update request, passing the record ID from Airtable returned in 2 The problem As written a number of async requests get issued and we run into conflicts. Then data doesn’t get written. I want to make sure the sync is bullet proof so we don’t run into data loss issues or have to do a lot of additional QA. I mitigated by setting a timeout for the first request. I’m thinking of t
I have records that look something like this in Employee table. “records”: [ { “id”: “recxPbyRYLea1Y3u7”, “fields”: { “Name”: “Jane Doe”, “ID”: 1, “Roles”: [ “rec93YegEkI0lLKi0”, “recgUgOR7mEk9SYDm” ], … } } ] As you can see Roles link to other Table, so what I wanted to achieve is that filter Employee data including data that is linked from another table in this case Role. e.g. I wanted to show all Employee with Roles Id of ‘rec93YegEkI0lLKi0’ using ‘filterByFormula’. I’m using CURL PHP Thanks
Hello, working on small PHP site with https://github.com/DavidZadrazil/airtable-api-php/ When I’m trying to update Checkbox or Number field via $response = $request->updateRecord('recsH5WYbYpwWMlvb', ['Cancel' => '123']); $response->isSuccess(); // true / false I get this error; Fatal error: Uncaught GuzzleHttp\Exception\ClientException: Client error:PATCH https://api.airtable.com/v0/appXXXX/Invoices/recSMXnTwTiRrRvGBresulted in a422 Unprocessable Entityresponse: {"error":{"type":"INVALID_VALUE_FOR_COLUMN","message":"Field Cancel can not accept value 123"}} I can successfully update Name fields. Any ideas why i get 422 error? Thanks
Apologies if this is an ignorant question, but I want my call to the API to fetch all pages automatically, without extra user action. I started with the sample code base('allocations').select({ // Selecting the first 3 records in Main View: maxRecords: 3, view: "Main View" }).eachPage(function page(records, fetchNextPage) { // This function (`page`) will get called for each page of records. records.forEach(function(record) { console.log('Retrieved ', record.get('ID')); }); // To fetch the next page of records, call `fetchNextPage`. // If there are more records, `page` will get called again. // If there are no more records, `done` will get called. fetchNextPage(); }, function done(error) { if (error) { console.log(error); } }); The code appears to call fetchNextPage() after each page of results, which i expect will then call page() again. This does not happen; the next page is not fetched. What am I missing? Thanks,
Hello guys! Im trying to create a record through the Airtable’s API but I can’t get it. I am using Origami Studio and this is the message that airtable say: { “error” : { “message” : “Could not find field “fields” in the request body”, “type” : “INVALID_REQUEST_MISSING_FIELDS” } } And this is my json { “fields” : { “Name” : “Send” } } So… why it is happening? Thanks a lot!
Hi I have come across the need of filtering records based on a field’s value in a defined list of values, this is equivalent to SQL WHERE clause like WHERE field IN (value1, value2, value3), so I wonder how I achieve this with Airtable API.
Hi, I have a table with a column called Last Name. I want to search for all rows which the last name, for example, contains riva. Then it would have to return rows for the last names Trivax and Trivedi for example. I use the following cURL command: curl "https://api.airtable.com/v0/appXXX/MyTable?maxRecords=3&filterByFormula='SEARCH('riva', {Last Name})'" -H "Authorization: Bearer MyAPIKey" But it doesn’t work. I also have tried replacing { and } and space with proper url encoding, but still no luck. Any suggestion how the cURL command for this should be written? Thanks
Let’s say there are 1000 records in Airtable that I need to fetch via the API on a regular schedule (to sync to an SQL DB). How is one supposed to keep within the API limits? Since Airtable seems limited to only fetching 100 records at a time, this will need 10 requests, and I would assume that fetching them in quick succession could potentially hit the API limit of no more than 5 requests per second. Can anyone confirm the best way around this? Is it necessary to introduce deliberate delays between the requests in order to combat this? (The limit of only 100 records at a time is quite frustrating and bothersome IMHO.) Simon.
Has anyone figured out how to create a Slackbot that can query Airtable via API? Our first use-case is a glossary. We’d like to create a database of internal acronyms and industry jargon, that can be searched via Slack. It’s my understanding that the Slack dev team has built such a bot for their internal use, but assume that their glossary dataset is not an Airtable base. We’ve looked at tools like Howdy’s Botkit, and API.AI, but neither plays nice with Airtable out of the box… A Zapier workflow would be ideal, but we’re open to any solve that does not require custom code. Thanks in advance!
How can I add a filter to the api that will filter records id an Attachment field is not empty. Can Find that option.
I want to make a dynamic progress bar for my website. We are counting number of donations with a goal of 200. I think I can use airtable api to do this, but struggling to figure out how. I have figured out how to use vue.js to get info from my base and display it on my site, but how can I link a progress bar to my base to count the number of donors and link it to my progress bar? Any help is greatly appreciated.
When querying the metadata api for view metadata, currently the only information included is the view id, name, and type. It would be great to get list of the filters used, and the fields referenced in the filters, similar to how we get ‘fieldIdsReferencedByFormulaText’ for the metadata of a formula field! "views": [ { "id": "viwQpsuEDqHFqegkp", "name": "Grid view", "type": "grid" } ] For context, please see how we are using the metadata api to get a high level view of the structure of our bases here
(This is a copy of my question on Stackoverflow. It’s not getting any attention there so I decided to bring it here.) First, let me start with what I want to achieve. I want to query a table in Airtable that includes data from a linked table. Airtable returns the IDs of records in linked tables so I need to do a second lookup on each of those records to get the data I want (e.g. Name). Ultimately, I want to return to the client the ID and the other fields from the linked record. Problem is, I’m failing to achieve this because of the asynchronous nature of the API and my lack of understanding. The best I’ve been able to do so far is execute a bit of code in the done() callback of their API. The problem is that this isn’t scalable because it means I’ll get myself into callback-hell. (At least, that’s what I think I’ve been able to determine so far.) Here’s my code (FYI this is code to be run in an Azure Function): var Airtable = require("airtable"); var airtableApiKey = process.env.airta
I’m using the API to store the created time of a record in a separate field right after creation. It duplicates the value of the original created timestamp. Sometimes the formula is different when querying the record later though. Please have a look at the screenshot. The 2 formula fields show the timestamps in detail. The first row shows that the created time now is 1 second later than it was when the value was queried when it was copied earlier… It doesn’t happen consistently though. Could it be a rounding issue?
Hi I have a field that contains attachments that were uploaded via the an airtable form. I am created an front-end that connects to this table via API. The data is all returned and I can see the data for the uploaded attachment that has filename,id,size,type,url however, the url returned does not play/download the file. The same link when opened inside the airtable works fine. Are there restrictions on accessing these files?
I am trying to understand the way to formulate either an API call that matches a filtered view on a table I have set up – a base that has date serving, name, venue name, address, zip code, time starting, time ending and cache. I have the filter by in the view of the table set to filter by a specific day and zip code to filter for the first three numbers of the zip code and of course this provides exactly the information I want. My question is, how do I translate this view into an API call so that in a table with multiple entries I receive the information that translates to this more limited scope?
Is there any way in the API to retrieve the record at a particular row number? I know I could get all the rows up to that row number using the maxRecords option of the select method, but that would obviously be quite inefficient. Thanks in advance. -Mark
The ‘4/25/2018’ records are updated with the API. The (correctly displayed) top ones are picked by hand in the browser. The linked table has a formula with a date format as primary field.
Hello, I am working on a report using the airtable api. When you click on a record to expand the record, it opens a form-like view that allows for easy editing. That expanded view has a custom url. Can I get that url via the airtable api? I want to link from my report, directly to allow users to edit that record in expanded view. Thank you,
If there are any other Ruby on Rails devs out there that could help me out, I’m trying to use the airtable-ruby gem to post data from a custom form to an airtable base. I’m new to web development, self-taught, and working alone, so I’m sure my code is a mess and I’m doing things all wrong, but I feel like I have this set up in a way that it should be working. I have as much of it stripped down to the bare bones as possible, but I still can’t figure out what’s failing. Here’s my controller: The form: The log results from submitting: My table: I worked on this for several hours today and cannot for the life of me figure out why it won’t submit records. If you can offer any help, I’d be much obliged!
Hi Really simple requirement but just can’t get my head round it (put it down to advancing years) I want a simple HTML and JavaScript page with a search field that just searches a particular field in an airtable table and returns results Anyone got an example to hand they can share? Thanks Mike
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.