Airtable User Specific workaround

Hello all

I regularly get scuppered by the fact that any columns added in a Glide table that is sync’d from Airtable - are forced to be user specific. Am sure there is a good reason why they have to be user specific - but it’s a pain in the bum!

My use case -

  • Long list of “Condition Reports” stored in Airtable. Each condition report is linked to one object that is on display in a museum. So, many condition reports are written against one object.
  • I have a Glide app that the museum uses to write a new condition report. They need to be able to upload several photos to one field. Glide works perfectly for this.

But the limitations I run into are -

  • Using Glides Multi Image picker doesn’t work with Airtable’s Attachment field
  • It takes a minute or two to sync back from Airtable to Glide so some automated Airtable fields don’t appear for a while (ie - date created)

I work round this by including a column in the Condition Report table for Glide Photos (which can upload mulitple attachments). Then on submit, a row is added to a different Native Glide table (Glide Condition Photos) with just the row ID of the condition report. I can then reference to the Condition Report table and lookup the photos. I then have an “Admin” page - which shows all the rows of the “Glide Condition Photos” table - and three buttons. First button sends a webhook to Airtable with the Airtable Record ID and URLs of the photos - which then gets added to the Airtable base. The second button deletes just the photo from the Glide table, the third button deletes the row (I do this manually as I like to be sure it has all sync’d over)

But of course the problem is - photos uploaded by the museum are not visible to me, as they are stored in a user specific column. So I have to go into the Glide app builder and view the data as each user. All a bit fiddly.

I can’t set up an automation within Glide to send the webhook to Airtable whenever a record is created - not possible in Glide I believe (all automations have to be triggered by direct user action)

I want to keep all the data stored in Airtable, as I like to keep that as a back end, and use Glide as a Front End (for many reasons - It’s MUCH easier to wade through the raw data in Airtable for starters - but I am quite invested in Airtable and find myself flipping between different front ends and don’t want to be tied to one)

If you made it to the end of this post - thanks! You must be hard core (and there are some seriously fantastic people on this forum - you know who you are!

Keen to hear of anyones thoughts for a better way. There are going to be lots and lots of condition reports written over the next few weeks - so keen to get a better solution. Previously - I linked to an Airtable form - but I want to keep the front end all in Glide for obvious reasons.

Hope this all makes sense

Thanks in advance!

I’m not well-versed in Airtable, but if you’re uploading it in a form environment, wouldn’t it be possible to trigger an on-submit action?

Thanks for this

I am already using the “On submit” action to add a row in another table with the multi image photos to an admin table. Also - I need to be sure the automation only fires when all fields necessary (Airtable recordID etc) are sync’d over - so if it fires on submit, it would fail.

Thanks again @ThinhDinh

You made me realise I don’t need that second temporary table at all! instead, I had just got a table with a filter showing just records that need their photos copying to Airtable.

I still can’t quite use your suggestion though, as if the web hook fires as soon as the photos are uploaded - it would fail as the web hook relies on having the Airtable Record ID - which takes a minute or two to sync over. So I am still having to do it manually.

So your issue now looks like you can’t find the right Airtable Record ID/Row ID to write the info to because there’s no ID that syncs between Glide and Airtable?

1 Like

Thanks again for your help with this (and my other posts!)

You’re quite right. I can not use the “On submit” action to fire a web hook, as the Airtable RecordID takes a minute or two to sync back to Glide (Writing data to Airtable within Glide sync’s instantly - but when data is added to Airtable without Glide knowing - it takes a few mins. As the RecordID is only generated by Airtable it takes a few mins)

There doesn’t seem to be a way of triggering an action in Glide such as “When this field is updated”

But my workaround is fine - I just manually run the automation on a button when all the data has synced.

But my main point of this post was why fields created in Glide, in a table that is sync’d to Glide, have to be User Specific. In my use case, museum staff are adding to a “Condition Report” table, which is sync’d to Airtable (and needs to remain that way).

If user 1 or user 2 submits a condition report - I can only see photos they upload if I go into the Glide App builder. (You can not use the Glide Multiple Images field type on an Airtable sync’d table.

A little painful to say the least!

It seems like the reason is Glide hasn’t found a way to deal with Multiple Images columns in external data sources. They’re in a grey area between computed columns and basic columns, they’re neither of these.

Plus, the Airtable API does not allow Glide to add new fields to your Airtable base. Because of this, any new basic columns you create in Glide will not appear in Airtable. Instead, they will become user-specific columns that are only accessible in the Data Editor in Glide.

1 Like

Thanks @ThinhDinh

Don’t think it’s going to change soon but I can cope with the work around.

Not worried at all about new fields in glide not being created in Airtable. Don’t need them to be (I keep all my data in Airtable so only create fields in glide if I need to - as per this case when glide can’t write multiple images to Airtable attachment)

Just not sure WHY they have to be user specific (fields created in a Glide table that is sync’d to Airtable)

Am sure there’s a good reason and it has been like that for as long as I can remember (that’s about 9am this morning at my age)

Don’t want to waste anymore of your time though.

Thanks again
Andrew

1 Like