Schedule CSV Import app using scripting block

Hello!

I am looking for a way to import data using a URL that connects to a CSV and merge existing records on a recurring basis. This can be through a click of a button or the script running in the background. The CSV could also come from google sheets.

Which of the following would be easiest to automate the importing of the CSV?

  • Using the Scripting block and creating a button that will trigger the CSV import app?
  • The automation with run a script every hour to trigger the CSV import app?
  • Google scripts on the Google sheets with the Airtable API to import the CSV?

If anyone has a built a similar script and is willing to share the script please do!

The ideal would then be to have additional columns in the base that only sit in Airtable. Due to data privacy concerns, we cannot use a third-party extension.

Thanks in advance!

Welcome to the Airtable community!

Here is some food for thought.

Scripts can be run as automations or from buttons. Scripting block/app scripts can only be run from buttons, and thus cannot be run on a schedule.

Scripts cannot interact with other Airtable apps, such as the CSV import app.

Airtable automations have run limits, and if you run an automation every hour, you will run out of automation runs.

Of the options you list, your best bet is your last one: having a Google script run on a schedule, and have that script parse the CSV and use the Airtable REST API to create the records.

1 Like

Hi Kuovonne,

Thanks for coming back to me! Some questions I had:

  • If I were on a Pro plan with 50,000 automation runs a month, running an automation every hour would be possible right?
  • Would the google script option allow for any existing and amended records to be updated and not just create a new row for new records? There is a unique identifier for each record.

Thanks again!

Yes, you can run a single automation every hour for a month and not run out of automations: (1 run / hour) * (24 hours / day) * (31 days / month) = 744 runs / month.

However, the automation run limit is per workspace, not per base. So you also need to take into account all the automations you will be running across all of your bases in the workspace. Some people have bases with a lot of automations each. Other people have only one base with only one automation in the entire workspace. Scheduled automations also have not yet been out for very long, and it can be hard to determine if they are reliable enough for every situation.

If you use the Google Script option, the Google script would need to use Airtable’s REST API. The REST API can create, update, and delete records. It does have rate limits and other restrictions that make it more difficult to use than scripting app.

Thanks Kuovonne! If anyone is willing to share a similar script that can be modified to bring in records from Google Sheets to Airtable, I would really appreciate it.