Skip to main content
Solved

Async functions work in automations scripts but not scripting app?


I’ve written an automation script that I’d like to migrate over to the scripting app. I know that there are some differences between the two, but I’m having a lot more trouble than I thought. The script connects to an external API and pulls data from the API into my base. I seem to be running into issues with the async functions I’ve written to connect to the API and pull the data in. The code works when it’s not wrapped up in a function, but fails when it looks like the example below:


async function testFunction(){

let response = await fetch('https://api.github.com/orgs/Airtable');

console.log(await response.json());

}

testFunction();


This code above works as an automation script, but not in the scripting app.

Best answer by Dominik_Bosnjak

Await the testFunction() invocation?

View original
Did this topic help you find an answer to your question?

4 replies

Await the testFunction() invocation?


kuovonne
Forum|alt.badge.img+17
  • Inspiring
  • 5983 replies
  • August 13, 2021

You should await the testFunction, as Dominik mentioned.


Also, fetch works differently in automation scripts versus scripting app. Try using remoteFetchAsync instead of fetch. See the documentation for more details.


  • Author
  • Inspiring
  • 21 replies
  • August 14, 2021

Adding await solved it, thanks! Kuovonne, I can see why remoteFetchAsync might work better on an automation since it’s coming from the Airtable server itself. Thanks to you both for the help!


kuovonne
Forum|alt.badge.img+17
  • Inspiring
  • 5983 replies
  • August 14, 2021
Noah_Coleman wrote:

Adding await solved it, thanks! Kuovonne, I can see why remoteFetchAsync might work better on an automation since it’s coming from the Airtable server itself. Thanks to you both for the help!


Glad to hear your problem is fixed.



It’s actually the other way around. remoteFetchAsync is for use in scripting app, not in an automation script. It is most useful when fetch in scripting app causes CORS errors that don’t happen in automation scripts.


Reply