I am currently developing a restaurant app in Bravo connected to Airtable, and I could use some assistance. I've created a script on Airtable that selects a random record from my database of restaurants. The objective is to display the image of a randomly chosen restaurant from Airtable when a specific button is clicked within my Bravo app.
I'm facing two challenges:
I need to make an API call to my Airtable script, but I'm unsure how to obtain the API URL for the script. In the image enclosed it's said "your script code (including any sensitive data or API keys) will be visible in shared base links" but I don't see the result of the Airtable script in Bravo. Is it due to my billing plan?
I'm struggling with data binding to trigger the event in Bravo and execute the script.
Your guidance on these matters would be greatly appreciated. Thank you in advance for your assistance!
There are two types of scripts in an Airtable base: scripting extension and automation scripts.
It looks like you wrote your script in scripting extension. These scripts only run when a person pushes a button in the base (either the button for the extension itself or a button field in a data view). These scripts cannot be triggered from outside the base.
Automation scripts run as part of an Airtable automation. These scripts run when the automation itself is triggered. It is possible to trigger an automation with a webhook, but that not going to work either. The automation script does not have a way of returning a value as a response to the code calling the webhook. There is usually a several second delay between triggering the automation and the automation actually running. Each time the webhook is called uses an automation run, and you get a limited number of automation runs per month.
You should also take into account the fact that any public image URLs for an attachment image will expire in a few hours.
Typically , when an outside source wants a random Airtable record, that outside source must handle the randomness itself. I’ve never used Bravo, so I cannot help you on that side.