Solution: How to get Glide Row IDs for synced Airtable records into Airtable

Hi folks ~

I was struggling with this yesterday and saw that there were a bunch of folks asking for a similar thing, so I figured I’d share the solution I created.

Problem: How to get row IDs from newly-created Airtable records synced with Glide back into Airtable, where they combine with a URL string to form a link to the corresponding page in the app.

Constraints:

  1. The Airtable row itself is created by an automation:
  • Glide form on a Glide table triggers an Action
  • Action triggers a webhook
  • Webhook triggers a Zap that (among other things) creates an Airtable record
  • Airtable record then syncs back to Glide, creating a new Glide row ID
  1. The sync that brings the new Airtable row into glide is delayed by anywhere from 2 to 10 minutes
  2. Synced Airtable rows are assigned a row ID by Glide, and are not automatically synced back to Airtable
  3. Glide updates cannot be used to trigger Zaps, so the action would have to begin within Glide

Solution:

Add a step to the already-existing Action that waits for the Airtable record to sync, and then another to set the newly-created row ID as a text value.

Here it is step by step:

  1. In the Glide table triggering the Action, create a relation column for the synced Airtable, and a lookup column pulling the newly-created row ID:

1a. Also create an empty Single Line Text column in the Airtable that will eventually receive the Glide row ID created when the new record syncs with Glide:

  1. In the Action, after the webhook which sends Zapier the data required to create the Airtable record, insert a “Wait for condition” step that will trigger when the synced Airtable record populates the relation column:

I set the timeout at 600 seconds because the synchronization seems to take somewhere up to 10 minutes, but never more.

  1. Create a final step in the Action to set the newly-created Glide row ID into a text field in the synced Airtable record:

  2. Throw together a formula column that puts the row ID at the end of your app’s unique URL string, and now you have a link to the app page for the Airtable record:

I’ll be happy to answer questions - and if someone has an easier way to do this, I’m completely open to learn!

Cheers,

Shawn :slightly_smiling_face:

2 Likes

Putting a link to this question just in case @Ric_1 is still looking for a solution to this problem. :slightly_smiling_face:

1 Like

Thanks for sharing! I just have one question, does your flow not allow you to create the Airtable row directly in Glide?

1 Like

Thanks for sharing @Kellar, appreciate it! I had given up on this and shall revisit the topic to give this a try.

1 Like

I don’t remember the exact reason why I needed to set it up this way, but I do remember trying to use the synced Airtable as the source and there was something that didn’t work the way I wanted it to.

1 Like

Great news! The scheduled Workflows provides a much simpler way to do this.

Step 1: Create a field in your Airtable for the Glide Row ID.

Step 2: Create a Workflow with a Scheduled trigger.

Step 3: Choose LOOP and a data source; add filters for the records you want Glide to pay attention to.

Step 4: Configure the workflow to Set Column Values for the Current Row


That works, but it would be nicer if you don’t have to trigger every 5 minutes… It’ll eat into your updates, for times when you don’t actually need it.

1 Like

Indeed. I only had it set for every five minutes to catch up on all the records that hadn’t yet been processed. :call_me_hand:t2:

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.