# Can you use the Submit Form as Zapier Trigger

**URL:** <https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722>\
**Category:** Ask for Help\
**Created:** [June 30, 2020, 12:09pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722 "2020-06-30T12:09:18Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Andre\_Ventura](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andre_ventura/32/424_2.png) [@Andre\_Ventura](https://community.glideapps.com/u/Andre_Ventura)\
**Post date:** [June 30, 2020, 12:09pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/1 "2020-06-30T12:09:18Z")

</div>

Hello! I know that you can use buttons, basic text and images as triggers for a zapier action, but as anyone acomplished to do that with the _submit_ form?

I know that you can integrate with G-Sheets but Support from Zapier told me that a new row to trigger takes 3 minutes in order to allow people to input data manually, so I’m looking to use the Glide integration to surpass this 3 minutes delay.

 ![imagem](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/2X/b/b520954c02a613495840cde7e8bec81b6289c5e6.jpeg)

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [June 30, 2020, 12:18pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/2 "2020-06-30T12:18:22Z")

</div>

What action do you want to trigger? Would a Google Script work?

---

<div class="post-metadata">

**Author:** ![Andre\_Ventura](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andre_ventura/32/424_2.png) [@Andre\_Ventura](https://community.glideapps.com/u/Andre_Ventura)\
**Post date:** [June 30, 2020, 1:06pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/3 "2020-06-30T13:06:57Z")

</div>

I’m going to ask the develop team, but the action I’m looking is to after someone submit the form it would trigger a zap with several actions like e-mail, sms and mailchimp.

Thanks @ThinhDinh!

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [June 30, 2020, 1:17pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/4 "2020-06-30T13:17:20Z")

</div>

You could always create a Zap outside of Glide…one that’s triggered by a new row in the spreadsheet.

I was actually helping my daughter achieve this for an app she was working on!  
😁 #prouddad

 ![IMG_1161](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/2X/4/4eab60df18d6b68cd58a66b0671c4e2d99adf1d5.jpeg)

---

<div class="post-metadata">

**Author:** ![Andre\_Ventura](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andre_ventura/32/424_2.png) [@Andre\_Ventura](https://community.glideapps.com/u/Andre_Ventura)\
**Post date:** [June 30, 2020, 1:50pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/5 "2020-06-30T13:50:34Z")

</div>

@Robert_Petitto Thanks! But the problem with that is that the trigger for a new row takes something like 3 minutes to actually trigger as I mentioned ☹ And I really need to supress this 3 minutes delay.

Congrats on Helping your daughter! ❤

---

<div class="post-metadata">

**Author:** ![Andre\_Ventura](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andre_ventura/32/424_2.png) [@Andre\_Ventura](https://community.glideapps.com/u/Andre_Ventura)\
**Post date:** [June 30, 2020, 1:51pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/6 "2020-06-30T13:51:26Z")

</div>

@ThinhDinh I’m sorry, but I would a G-Script work in this particular case? I know nothing about it ☹

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [June 30, 2020, 1:56pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/7 "2020-06-30T13:56:58Z")

</div>

I have only worked with sending automatic emails based on newly added rows, not sms or mailchimp (but I think SMS will work the same way as long as you have the carrier number’s email format).

Here’s an example.

> [@Concept: Sending digital membership card after subscription](https://community.glideapps.com/t/concept-sending-digital-membership-card-after-subscription/9539):
>
> Hi, today I would like to show a concept of delivering digital membership card after users have bought a subscription pack. This consists of a form in Glide, a script in Google Sheets, some work with Cloudinary to come to the final product: a personalized email, with the image of the “digital membership card” inside. Here’s how it works in real time. [ezgif-1-024248462a01] You can try it out yourself in my test app: [https://tdslab.glideapp.io/](https://tdslab.glideapp.io/) I am trying to deliver the same thing for order…

---

<div class="post-metadata">

**Author:** ![George\_B](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/george_b/32/534_2.png) [@George\_B](https://community.glideapps.com/u/George_B)\
**Post date:** [July 1, 2020, 12:53am UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/8 "2020-07-01T00:53:15Z")

</div>

I use Google project triggers to run google script functions all the time. [https://script.google.com/home/](https://script.google.com/home/)

What I normally do is run a timed trigger as frequently as every minute, 5 min, once a day, whatever makes sense for what you are trying to do. From there the Google Script function and pretty much do anything you want. I’ve used it to add new users to Mailchimp, send files to Amazons S3 service, send SMS messages using Twilio, send emails of course via the sheet owners email access functions, but if email limits are an issue I have used Sendgrid to send the emails. Pretty much anything that has an API and sample Javascript code examples, can be accessed via a Google script with the data coming from the Googles sheet. Instantaneous running of a script function is not possible at this time.

But to answer the original question Zapier would not be triggered on a Glide form submit.

---

<div class="post-metadata">

**Author:** ![Mauronic](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mauronic/32/21726_2.png) [@Mauronic](https://community.glideapps.com/u/Mauronic)\
**Post date:** [October 13, 2020, 9:55pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/9 "2020-10-13T21:55:10Z")

</div>

> [@George\_B](#):
>
> send SMS messages using Twilio

Could you talk more about how you implemented this? I need to send text notifications to users based on new rows being added.

I’m also curious how you handle permissions, opt-outs, etc.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [October 13, 2020, 10:52pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/10 "2020-10-13T22:52:52Z")

</div>

Probably @Manan_Mehta can also chime in. He used that for his Pluhg app.

---

<div class="post-metadata">

**Author:** ![Manan\_Mehta](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/manan_mehta/32/13957_2.png) [@Manan\_Mehta](https://community.glideapps.com/u/Manan_Mehta)\
**Post date:** [October 14, 2020, 1:43pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/11 "2020-10-14T13:43:29Z")

</div>

Twilio has it’s own Google Sheet integration with Apps Scripts

> **[How to Send SMS from a Google Spreadsheet](https://www.twilio.com/blog/2016/02/send-sms-from-a-google-spreadsheet.html)**
>
> How to send text messages from a Google spreadsheet in less than ten minutes, even if you've never written code before.

I am using this and manipulating it in my scripts to achieve what I want which includes notifications on:

1. Form submission (Addition of new rows)
2. Status change of row (Editing of existing rows)
3. Time based (reminders calculated based on status and time)

All of this manipulation has to be done in GSheets. Unfortunately that’s not possible in Glide Tables/GDE yet.  
In my app the lag is usually between 30 seconds and 1 min.

---

<div class="post-metadata">

**Author:** ![gp9293](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gp9293/32/16743_2.png) [@gp9293](https://community.glideapps.com/u/gp9293)\
**Post date:** [December 28, 2020, 1:03am UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/12 "2020-12-28T01:03:09Z")

</div>

Since you know Google Script, can you take a look at my script below? I took the Send SMS from Sheet example from Twilio. I just am not familiar enough yet with google scripts to spot the (likely obvious) error in the code. When I run the script, I get a “no phone number” error from Twilio. One question I have is how does the script know which sheet to use if the sheet is not specified in the script. Thank you for any help.

function sendSms(to, body) {  
var messages\_url = “[https://api.twilio.com/2010-04-01/Accounts/](https://api.twilio.com/2010-04-01/Accounts/)…/Messages.json”;

var payload = {  
“To”: to,  
“Body” : body,  
“From” : “18653250437”  
};

var options = {  
“method” : “post”,  
“payload” : payload  
};

options.headers = {  
“Authorization” : “Basic " + Utilities.base64Encode(”…:…")  
};

UrlFetchApp.fetch(messages\_url, options);  
}  
function sendAll() {  
var sheet = SpreadsheetApp.getActiveSheet();  
var startRow = 2;  
var numRows = sheet.getLastRow() - 1;  
var dataRange = sheet.getRange(startRow, 1, numRows, 2)  
var data = dataRange.getValues();

for (i in data) {  
var row = data[i];  
try {  
response\_data = sendSms(row[4], row[12]);  
status = “sent”;  
} catch(err) {  
Logger.log(err);  
status = “error”;  
}  
sheet.getRange(startRow + Number(i), 3).setValue(status);  
}  
}

function myFunction() {  
sendAll();  
}

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [December 28, 2020, 1:26am UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/13 "2020-12-28T01:26:57Z")

</div>

> [@gp9293](#):
>
> When I run the script, I get a “no phone number” error from Twilio.

Do you have an empty row somewhere in the sheet?  
Try adding something like `console.log([row[4], row[12]]);` immediately after the line where you call the `sendSms()` function, and then examine the log afterwards. This will allow you to pinpoint which row is triggering the error.

> [@gp9293](#):
>
> One question I have is how does the script know which sheet to use if the sheet is not specified in the script.

Because this…

> [@gp9293](#):
>
> var sheet = SpreadsheetApp.getActiveSheet();

The answer is that it _doesn’t_ know which sheet to use. It just uses whichever sheet happens to be open (active) at the time, which may or may not be the correct one. Much better to do something like:

`var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('YOUR_SHEET_NAME');`

---

<div class="post-metadata">

**Author:** ![gp9293](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gp9293/32/16743_2.png) [@gp9293](https://community.glideapps.com/u/gp9293)\
**Post date:** [December 29, 2020, 1:30pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/14 "2020-12-29T13:30:23Z")

</div>

Very helpful. Was able to get the basics working. Not fighting through learning how to qualify onChange so it only triggers when a new row is added.

Thank you

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [December 29, 2020, 1:35pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/15 "2020-12-29T13:35:58Z")

</div>

Feel free to give a shout if you get stuck.  
I’ve done a little bit of work with triggers…

---

<div class="post-metadata">

**Author:** ![gp9293](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gp9293/32/16743_2.png) [@gp9293](https://community.glideapps.com/u/gp9293)\
**Post date:** [December 29, 2020, 1:53pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/16 "2020-12-29T13:53:44Z")

</div>

Now that you offered…

I am trying to qualify the onChange trigger to run a script ONLY when a new row is added. It currently triggers when a new row is added and when changes are made to cells. I ran across changeType and am stumped on making it work. Relevant code:

function newRow(to, body) {  
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();  
if(e.changeType === ‘INSERT\_ROW’){

Any help appreciated.

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [December 29, 2020, 2:04pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/17 "2020-12-29T14:04:29Z")

</div>

Yes, I saw your post in the other thread.  
I replied and so did George - did you see the replies?

---

<div class="post-metadata">

**Author:** ![Lydia\_21](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/lydia_21/32/21635_2.png) [@Lydia\_21](https://community.glideapps.com/u/Lydia_21)\
**Post date:** [May 3, 2021, 11:33am UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/18 "2021-05-03T11:33:48Z")

</div>

Hi,

I was looking to do something similar - use the “On submit” action as a Zappier trigger but it doesn’t seem to work even though you technically can select Zapier as an action in the on submit action options. I just want to send a confirmation e-mail to the user once they submit the form.

My question is, will this capability be enabled in future? The answer wasn’t clear to me in the thread so thought I’d ask.

Thanks in advance!

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [May 3, 2021, 11:48am UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/19 "2021-05-03T11:48:19Z")

</div>

Disclaimer: I don’t use Zapier, so this is just a wild guess…

Have you tried create a custom action, and sending your zap as a part of that action?

---

<div class="post-metadata">

**Author:** ![Lydia\_21](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/lydia_21/32/21635_2.png) [@Lydia\_21](https://community.glideapps.com/u/Lydia_21)\
**Post date:** [May 3, 2021, 12:04pm UTC](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722/20 "2021-05-03T12:04:01Z")

</div>

Yeah, I tried that and I got an error.

I mentioned it in this topic - [Geting errors when Zaps are triggered](https://community.glideapps.com/t/geting-errors-when-zaps-are-triggered/26334)

I’ve tried setting it up on the submit as a custom action and on its own using the on submit Zapier options but I get the above error each time. I get the same error when I try to trigger the zap on a button so wasn’t sure if i’m doing something wrong or i’m trying to do something that can’t be done yet.

[Next page](https://community.glideapps.com/t/can-you-use-the-submit-form-as-zapier-trigger/11722.md?page=2)
