Apr 22, 2016 04:29 AM
I’m a front end UX guy who would like to create an IOS app backed by a database without having to learn a lot about backend coding. Say I wanted to build an like YELP where the schema includes things like business name, address, phone, rating etc.
Could I use airtable to create the backend and store all the data and use the API’s to add/retrieve the records for my app or am I missing something? Is the API designed for this type of scenario?Would it scale if my app had 1,000’s of users? Could I do an API call like get all stores within 10 miles of me? Thanks!
Aug 23, 2017 08:41 PM
My experience has taught me that Airtable is a phenomenal interface, but it falls short if you expect it to respond like a high-performance database or even high-volume API.
If you really can’t bear to pass on Airtable’s interface (which really is stellar), but you need higher performance, look into creating a caching server that will manage your applications API request rate, caching refresh, etc. That way you can control the scalable availability of your application while still allowing data to be managed via the Airtable API.
Also, Airtable’s API has some rather limiting issues such as 100 records per request max, 1 table per request, no schema/metadata API, etc. To keep your mobile apps simple (and for dozens of other reasons) you’ll want a layer between your data and your frontend anyway.
May 10, 2018 03:20 AM
That makes a lot of sense although just as an FYI, I’m finding that with the use-cases I’ve been trying to apply it to, Airtable starts to hit a ceiling that a more performant API could unlock.
I’m probably Airtable’s biggest evangelist in London but I see very real problems when used for meaningful applications inside companies.
You can’t easily create views that combine data from different tables. So let’s say you’re building a CRM and want to show a client together with who’s servicing them and then your past interactions, it’s hard to show it in a useful way
You can’t submit data to more than one table at once without hacks. So in the CRM example above, entering a new lead, contact and company needs either some Zaps to hack around the problem or to enter the entities into the three different tables
(biggest issue by far) Airtable’s extreme flexibility and malleability means that it’s very easy to break. Because there aren’t fine grained permissions and views auto-save every change then it’s incredibly easy for someone to alter the DB without meaning to. Once you’re working with 10+ tables and 10+ columns in each it’s very hard to keep the whole system robust. It’s also challenging to give users both write-permissions and access to only certain parts of the DB.
I know these are big hard problems to crack and I’m sure you’re working on root solutions however a combination of Airtable for the account owner / admin and then a bespoke app for the users / employees is a strong proposition.
I’ve experimented with building a simple Angular app to build beautifully rendered, combined views of data and to create specific read/write permissions. It’s an amazing tool for doing this but the rate limits on the API and lack of callbacks on data changes make it hard to really deploy.
I do think that there’s a really viable middle-ground case for Airtable as a back end where some people in the organisation have full access to the Airtable interface and where employees more broadly access it through a bespoke app. It would be great to be able to do that.
Best
Peter
Jul 25, 2019 07:46 AM
It sounds like Airtable might be a good backend for a Progressive Web App on iOS. iOS has had support since version 11.2. Thoughts?