How to replace Airtable public CDN by your own

How to replace Airtable public CDN by your own

Tags
Airtable
Software Development
Published
Oct 23, 2022

What’s the issue exactly?

Airtable always said that we should’t rely on their public CDN, and in April, 2022, they announced they were dropping support for their public CDN.
Actually, that’s not exactly what they said, it was well sugar-coated, but the fact remains that you won’t be able to use a url like that from your own website.
 
More precisely, you will be able to do that, but only within 2 hours after the attachment was uploaded. Afterwards, its public link will change and the former link will be invalidated.
 
💡
Supposedly done to avoid making every document public forever (they still are, but their url changes every 2h), this was clearly intended to reduce costs on Airtable’s end and reduce usage of attachment links within the Airtable ecosystem. 😬 I’m a bit bitter about this decision, because they could have achieved a better result by designing their system differently. There were other possibilities where Airtable would have saved/made much more money while making their customers happier (us). I don’t know if they’re blind or if they have so much that they don’t really care anymore.
 

My solution for our business

My solution worked very well for us, but is not necessarily the only solution, nor it is the best.
It was the best, for our use-case.
Unfortunately, our solution is deeply technical, and certainly not achievable using purely No-Code. We had to get our hands dirty this time. (using no-code would basically mean relying yet on another provider, which would incur additional costs)
Fortunately, we found various ways to use no-code everywhere that was possible, and overall the complexity is not that great (but still much higher than if Airtable was doing that job for us).
 
Without going too much into the technical details, we created our own Public CDN, hosted on AWS S3/CloudFront. Whenever an attachment is created/updated in the Airtable base, we trigger an Airtable automation, which triggers a webhook, which uploads the attachment to AWS. We store the url of the attachment stored on AWS in Airtable and voilà! That’s it. Simple, yet effective.
💡
“Simple” is not really the best word for it. Before coming out with this awesome solution, we had to analyze what was the best solution for us, and this analysis happened over the course of a few months. We were kind of hoping for Airtable to make a new announcement saying it was a big April 1st joke they forgot about. Fortunately, we had 6 month to react to that breaking change, and it’s only on October, 2022 that we decided to build our own solution. At this point, we had done enough analysis to know that there weren’t any “magic” tool that would take away that pain from us. 👉 Eventually, once the action plan was clearly defined, it took 5 days to implement the solution (end-to-end), test it thoroughly, and deploy it on all our customers.
Overall, we’re really happy with our solution, and we are lucky this breaking change only affects a single app in our whole business (all our apps using No-Code tools, such as Stacker and Noloco shouldn’t be affected. That’s what they promised me, anyway).

Other solutions

💡
If you got surprised by this breaking change, you can postpone the update for your Airtable Workspace for a few months (until January 2023).
 
There are no alternative solution that “just work”, as far as we know.
I’m actually surprised nobody released something to take care of this, there is probably a lot of money to make. Should I give it a try? 🤔
 

Postponing the update to 2023

Go to your workspace settings (https://airtable.com/wspXYZ/workspace/billing) and change the “Secure attachments opt out”.
notion image

On2Air

On2Air has opened a feature request but nothing has been released as of October 23rd, 2022.
 

Articles

Before going all out building our own stuff (I hate complexity), we discussed a lot with the community. Here are a few articles you might find interesting!