Need development and API help? Ask your questions here!
Recently active
My JS needs some help :frowning: I’m trying to create a new record in one table for each of the records I pulled out of a view in another table. I’ve tried using people.map(person => {}), people.forEach(person => {}), and for (const person of people) {}, but I get the same error in all 3 cases: Error: <root> must be an array at Mutations._assertMutationIsValid (https://localhost:9000/__runFrame/bundle.js:4139:53) at _callee$ (https://localhost:9000/__runFrame/bundle.js:3852:21) at tryCatch (https://localhost:9000/__runFrame/bundle.js:75258:40) at Generator.invoke [as _invoke] (https://localhost:9000/__runFrame/bundle.js:75484:22) at Generator.prototype.<computed> [as next] (https://localhost:9000/__runFrame/bundle.js:75310:21) at tryCatch (https://localhost:9000/__runFrame/bundle.js:75258:40) at invoke (https://localhost:9000/__runFrame/bundle.js:75348:20) at https://localhost:9000/__runFrame/bundle.js:75383:11 at new Promise (<
Hi Everyone! :wave: I am trying to use Airtable for my VueJS app’s database. I have it set to retrieve data using Axios. Everything renders find for the client, but I am wanting to have my site index on Google. I tested it using Google’s Mobile Friendly Test (search(dot)google(dot)com/test/mobile-friendly to see how the content and meta tags would render, but I receive an error message. This is for Googlebot. Expected Result See my site’s rendered HTML and show the content that shows when a normal user visits. Actual Result Error: X page resources couldn’t be loaded Resource: https://api.airtable.com/v0/mybaseandviewandstuff Type: XHR Status: Googlebot blocked by robots.txt It links me here (api(dot)airtable(dot)com/robots.txt) where i can see: User-agent: * Disallow: / What I’ve Tried I’ve tried: Updating my apps robots.txt to add the below: # Group 1 User-agent: Googlebot Disallow: /nogooglebot/ # Group 2 User-agent: Airtable Allow: / # Group 3 User-agent: * Allow: / I
If I have a field customized to this type: 1. Date 2. Time component 3. 12 hr and I use the key/value pair in my JSON/POST, what do I send there to get this to work? I have this working if I send a string in the correct format, but as soon as I include "typecast": true" it fails. I am including "typecast":true to get fkey lookups to work. I have a field in a Postgres database defined as: inserted_date TIMESTAMP NOT NULL default now() and then I am pulling it out like this (string), to send to Airtable using the REST API (POST): (select to_char(table_name.inserted_date, 'MM/DD/YYYY HH12:MI am')) "Inserted Date", and it works, but as soon as I include: "typecast":true, it fails. If I pull out not using select to_char(... , and just use: <table_name>.inserted_date it fails also. It appears I need to send a native date format, time component, but what would that be? Having a field defined as Date, 12 hr time component, and also when using typecast, these Strings (in the JSON)
Thank you for participating in the custom blocks beta! To celebrate the holidays and ring in the next decade, the latest version of custom blocks has all kinds of presents :gift: Upgrade to the latest version and get all the goodies below. Just open up your terminal and run: cd <your-block-folder> npm install @airtable/blocks npm install -g @airtable/blocks-cli Be sure to check the changelog for any minor breaking changes. Now on to the fun stuff! New examples and documentation :memo: Our documentation has a shiny new home at Airtable Blocks SDK. No more clicking back and forth through markdown files trying to figure out the interface for a LinkedRecordsQueryResult . The new docs site has native search with autocomplete, an improved hierarchy view for the SDK, and beautiful formatting. We also added a new table structure example block that reads and displays the metadata for the user’s current table. Check it out if you’re looking for inspiration, along with all our exist
Buen dia, estoy dispuesto a pagar por quien me ayude a crear un formulario en curl para enviar datos a Airtable desde una pagina en servidor
For the last couple of weeks, I’ve been getting new 404 errors on API calls that used to work perfectly every time. The API calls run every 5 minutes or so, and 90% of the time it works great, but now 10% of the time I’m getting back an error that says the table cannot be found. This is crazy as the table remains and in just a few seconds/minutes when the next webhook runs it will find the table and run correctly. These 404s are causing significant problems, especially when I’m testing for a record and I get back a 404 my script thinks the record does not exist… but that’s not true. In my oponion this should be more of a 500 level server error. Here’s the calls I’m making and the errors I’m receiving: (yes these are from Zapier, and yes I had to spoof the user-agent to make it work) I’m calling https://api.airtable.com/v0/appU29NNGxB8qigRN/Main%20Table I get a 404, “We made a request to api.airtable.com and received (404) Not Found.” Specifically saying: “Could not find table Main Tab
Hello everyone, I have a very simple JSON POST to the Airtable API but am unable to Post an object into the Fields. { “fields”: { “Time”: “{time}”, “DeviceID”: “{device}”, “Payload”: “{data}”, “computedLocation”:{computedLocation} } } In my Airtable, “Time”, “DeviceID”, “Payload” are all fields, yet {computedLocation} is an object which has the following variables: “lat”, “lng”, “radius”, “source” and "status. My question is how do I parse an object into specific fields in Airtable? Something like “Lat”:"{computedLocation.lat}" isn’t working.
Using the curl -vvv command generated in my personalized API documentation, I get the following output: Trying 3.230.102.85… Connected to api.airtable . com (3.230.102.85) port 443 (#0) found 148 certificates in /etc/ssl/certs/ca-certificates.crt found 594 certificates in /etc/ssl/certs ALPN, offering http/1.1 gnutls_handshake() failed: Error in the pull function. Closing connection 0 curl: (35) gnutls_handshake() failed: Error in the pull function. I’m making the call from an Ubuntu 18.04 LTS VM. Running openssl s_client -connect api.airtable . com:443 results in: CONNECTED(00000003) write:errno=104 no peer certificate available No client certificate CA names sent SSL handshake has read 0 bytes and written 305 bytes New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : 0000 Session-ID: Session-ID-ctx: Master-Key: Key-Arg : None PSK identity: None PSK identity hint: None
Hi ! I have 4000 fields in my product table from 1 to 4001 personnal ID I need to know the place to find the record ID recXXXX created by Airtable for all of my fields For example the 3876 is the recdg5jLFDdg34 record and I need to make a list like 1 = rec XXX 2 = recYYY Please help ! Have a nice day
please, I need help. The id created by airtable for each of my entries does not suit me and I would like to replace it with the entry of my column ID! How to do? How to make a single entry? when one of my clients chooses an ID I do not want another one to choose the same one!
Hi All, I am having an issue with creating new entries into my airtable. I am able to GET the data from my airtable with the axios code: getTable() { axios.defaults.headers = { Authorization: ‘Bearer key$$$$$#@@@@’ } axios.get(‘api.airtablenolinksallowed/v0/applHDrandomTWT/tasks’) .then(response => { console.log(response); }) }, However, when I try to post to the same table I am getting the error: POST api.airtablenolinksallowed/v0/applxDrxrandomzTWT/tasks 422 (Unprocessable Entity) Here is my axios for post: postTable() { axios.defaults.headers = { ‘Content-Type’: ‘application/json’, Authorization: ‘Bearer key$$####$$$#’ } let data = {}; data.Name = ‘TestName’; data.Notes = ‘ASXXZSXSZX’ console.log(data); axios.post(‘api.airtablenolinksallowed/v0/applHDrrandomTWT/tasks’, data) .then(response => { console.log(response); }) }, What am I doing wrong with my axios post?
Has anyone experienced Airtable doing strange things with dates… it appears there is an invisible conversion happening… I have a string ‘2019-12-13T15:00:00.000Z’ I pass it via airtable API check this out to a date field with time… = “12/13/2019 . 9:00 AM” ( Include timefield is on… GMT is off ) to a string field next to it… = ‘2019-12-13T15:00:00’ When I copy the string field to a new table and change the type to date I get the correct date and time… the only issue is when sending a valid string to a datetime column it adds some sort of offset… See screenshot The Calendly Start Event time is wrong… All 3 columns are fed the exact same datetime string to the airtable API
Hello! I’m trying to find a record based on the value of a particular field. I’m using filterByFormula with select, and I think my syntax is wonky. This should be the easiest thing in the world with a DB. What am I doing wrong? Thanks in advance for your help – Cindy base(‘New Playlists’).select({ filterByFormula: ‘ID = MyFunIDValue’, }).eachPage(function page(records, fetchNextPage) { records.forEach(function(record) { console.log(‘Retrieved this playist record’, record.get(‘ID’)); }); }, function done(error) { });
How can I get the All of my Spreadsheet lists via API call, I didn’t found That in Documentation, Suppose, I had five Spreadsheet in the workSpace and I want to get all the Spreadsheet names with their Respective Id How may I do that. Thanks.
This week, we’ve added an example that shows the table description as well as field names, descriptions, types and options for the table and view the user is currently viewing. It is ideal for large teams collaborating on a single base who want to introduce new viewers and editors quickly to how the base operates. You can pull in this example as a template and see how we built it here: https://github.com/Airtable/blocks/tree/master/examples/table-structure-block
Thanks to all that tuned in for the inaugural Airtable custom blocks webinar. If you missed it, you can watch the replay (https://airtable.wistia.com/medias/23n94jsbrc) and follow up with any questions on this thread. We received many insightful questions from the webinar. Here are three of our favorites: Q: Can you create a block that calls another base? A: Yes. You can use the public API in tandem with a custom block such that when you click a button in the custom block, it makes a call to another base. Q: What are the permissions for custom blocks? A: Your custom block respects the permissions of the end-user who is interacting with the custom block. Q: Can you release a block to different bases? A: Yes, many developers choose to develop in a dummy base first and then release it to another base afterwards. When you create a block, it lives inside one base by default. We do have a function in the blocks cli tool called remotes. If you’re familiar with git, it works very similarly. In
I’m trying to update the duration fields via standard hh:mm:ss and my updates are failing. By no means an expert here so forgive my ignorance as the API documentation isn’t telling me much. What type of number should I be using in order for this to work? Should I be converting time to a UNIX timestamp or something else? Thanks in advance!
Hi all, I have recently come across AirTable and love it for the simplicity it offers for managing a semi-complex product catalog (i.e. flexible categories, groupings, pictures, etc.). I’m exploring migrating my current catalog to AirTable from my current self-developed database. However, I wanted to ask if there’s an easy way to pull a Block into a web page to display on my public website? I know it’s possible to export the PDF, but I’d really like to export a product sheet into a tile on my website. I know I can leverage the API to pull the data and do the coding on my side, but it would be so much easier to pull in the Block altogether. Thanks, Max
I want to fetch data based on last_modified_time but the timezone is wrong, is there a way to change the timezone?
Hi, assuming I just have the reference id of an entry, but I don’t which table it is from, is there a way to load or update the entry? Or to figure out the table it belongs to? Thanks!
What is going on today??? Why won’t Airtable work?
I’m close, but no cigar. Hey guys – what am I doing wrong here? I’m trying to find a specific record, with a specific date. I’m able to find one side of the formula at a time, but when I try them together my code crashes. I know it’s some dumb syntax thing. What is it? let myFilterByFormula = “{Playlists} = “1WHXgsAyhX66lcrOKeGpOb”, AND(DATETIME_DIFF(TODAY(),{Monitor Date}, ‘days’) = 2)” Thanks in advance! Cindy
I’m seeing error “LIST_RECORDS_ITERATOR_NOT_AVAILABLE” pop up once or twice a day at different clients since Friday. None of them got an update from my side and all of them have been running without issues for months or even years. IMHO something on your side has changed; it’s no timeout as there are only seconds between the API calls. Just FYI.
I’m receiving a 422 error when I send a POST request to create a new record. I believe this is due to a specific field. When I submit a POST request with the following data: data = { "records": [ { "fields": { "access_key": "an access key", "user": [ "rec123ABC" ], "server_name": [ "rec456DEF" ], "Status": "Live" } } ] } The request successfully goes through. However, if I add the following field to the data request: 'outline_id': 3, I receive a 422 response. outline_id is a new column that I’ve recently created. It is in Integer format. Additionally, when viewing my API documentation for my base called ‘access_keys’, table called ‘access_keys’, I see that under the ‘Create records’ documentation, the outline_id column is not shown in the e
Hi, I’d like to remove the limit of 100 Rows on pagination in PowerBI. Can anybody please provide some code as I’m not good at code. Here is my current code: let Source = Json.Document(Web.Contents("https://api.airtable.com/v0/appqRdDk5cCOPccJ5/Third Inning Report?api_key=my_key_here")), #"Converted to Table" = Record.ToTable(Source), Value = #"Converted to Table"{0}[Value], #"Converted to Table1" = Table.FromList(Value, Splitter.SplitByNothing(), null, null, ExtraValues.Error), #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table1", "Column1", {"id", "fields", "createdTime"}, {"Column1.id", "Column1.fields", "Column1.createdTime"}), #"Expanded Column1.fields" = Table.ExpandRecordColumn(#"Expanded Column1", "Column1.fields", {"OpportunityID", "New Category", "Anticipated Timing", "Country", "Existing LP", "Client", "Reporting Name", "Low", "High", "Expected", "Comment", "Account", "BAI Status", "Status"}, {"Column1.fields.OpportunityID", "Column1.fields.New Category", "C
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.