Oct 30, 2020 06:03 PM
Is it possible to only complete an action based on the output of a previous action? I would like to run a script when a field is updated, but I want to send an email based on the output of the script. If the script runs and doesn’t find any conflicts I don’t want to send an email.
In this case I don’t really see a way to break out of an automation or send an email inside a script other than using outside API calls.
How would you accomplish this? Would Airtable throw errors if I just put in a blank email in the to: field so that the step is executed, but it doesn’t actually send to anyone?
Nov 05, 2020 02:49 PM
Hmmm, I use them all the time.
Nov 05, 2020 04:09 PM
Super cool! I must have missed this in the documentation. This is awesome. Thanks for pointing it out!
Nov 06, 2020 07:34 AM
Old dog teaching new dog old trick? :winking_face:
Dec 07, 2020 04:53 AM
Hi @Bill.French I am actually struggling quite a bit with the idea of composing a properly formatted multi-line email body in script as markdown and passing that over to the gmail automation - especially for a proper signature including logos and such.
Could you share any snippets? How do i compile a email body with multiple line breaks and pass it to output.set?
Any help would be much appreciated!
Thanks!
Dec 07, 2020 06:24 AM
This is thee best you can do with regard to email messages because Airtable has chosen to deeply sanitize all content in email bodies.
Oddly, Airtable has no issue with embedding their own brand and logo, while the rest of us are left to create brandless, mundane, and completely boring notifications. For my clients, I avoid [Airtable’s] email automation like I avoid Covid. Instead, I opt for 100% control through Gmail using Google Apps Script and tight integration processes.
The trick to control newlines and embedded (but extremely limited) markdown content in Airtable is to compose the entire message in a script variable and use it – AND ONLY IT – in the message body.
// compose a markdown email message...
let thisMessage = "Hi Martin!\n\n";
thisMessage += "This message includes an embedded link to [Global Technologies Corporation](http://globaltc.com), my website."
thisMessage += "Tux, the [Linux mascot](https://drive.google.com/file/d/1NO5DEtDp8L59UHmhqQj55jlyBK_k31yZ/view?usp=sharing) \n\n";
thisMessage += "Cheers!\n\nbf..."
output.set("message",thisMessage)
Dec 07, 2020 06:42 AM
@Bill.French You are my personal hero of the day (du jour), I am much happier using the gmail integration if I can control line breaks, logos, links this way. Thanks a ton, you’ve made my day!
Dec 07, 2020 06:48 AM
Wait a second, a follow-up question, would you be happy to share a similar code example that you pass to gmail instead? Would passing a public image (logo) be possible via the native gmail module in automations or is App Scripts really the only way @Bill.French?
Dec 07, 2020 06:49 AM
The day is still young. I hope the bar is far higher than the utterances that emerge from my pie-hole. :winking_face:
Dec 07, 2020 07:06 AM
This is a deep topic that requires a host of supporting stuff and a few hours of documentation, so no. I am trying to get my team to package exactly such an example solution and publish it on Gumroad with a customer-decides-the-price model (like shareware). We hope to toss that over the way in a week or so.
Bear in mind, that I promote this as a remedy to lacklustre email and reporting support in Airtable for – and only for - processes that require pixel-precise reporting or communications. When brand and image matters, you’re not likely to achieve your objectives with off-the-shelf no/low-code automation crap. And I mean “automation crap” with the greatest respect; no company can do everything for everyone. There are many ways to achieve good communications from no-code platforms so my approach is not ideal in every situation. One reason I get calls to build this better crap is there are mitigating issues such as additional integrations with other SDKs, email analytics, email steps where human triage is required, etc.
The general approach is:
Might look like this…
Sadly, I believe this is not possible in Airtable’s native tools. But, it may be possible with Integromat. @ScottWorld can probably tell us.
Dec 07, 2020 07:25 AM
Yes, all of this is possible with Integromat. In fact, I have many of my clients using Integromat for this, due to the limitations of Airtable’s email automations.
@Martin_Kranz If you have a budget for this project and you’d like to hire an Airtable consultant & Registered Integromat Partner to help you create this, please feel free to contact me through my website at ScottWorld.com.