Activity Messenger forms can send completed form submissions to other applications using a webhook. This can be used to automatically send registration or form data to tools such as Google Sheets, Zapier, and other applications that can receive webhook data. The two most common approaches are Zapier and Google Apps Script.
You need:
Treat the Zapier Catch Hook URL as a secret. Anyone with the URL can send data to the Zap.
Use Catch Hook, not Retrieve Poll. Activity Messenger sends an HTTP POST with a JSON request body.
Learn how to connect Activity Messenger to Zapier using webhooks and automatically send your data to other applications, such as Google Sheets.
The setting belongs to this form. Repeat these steps for every form that should trigger a Zap.
The payload includes:
idemailmobilefirst_namelast_namecreated_atform_answersform_answers contains the answers collected by the form. Submit a realistic
test response so Zapier can discover the answer fields you plan to use.
To add every registration to a spreadsheet, create a Catch Hook trigger, paste
its URL into the registration form, and submit a test registration. In the next
Zap step, map first_name, last_name, email, and the required
form_answers values to spreadsheet columns.
Google Sheets exposes Apps Script through Extensions → Apps Script. A script can be deployed as a web app with a doPost(e) function that receives an HTTP POST; the deployed web-app URL can then act as the webhook URL.
Create the spreadsheet where you want Activity Messenger form responses to appear.
Open the Google Sheet where you want Activity Messenger form responses to be saved.
From the top menu, go to:
Extensions → Apps Script
Google will open the Apps Script editor in a new tab.
Delete any code that is already in the editor, then paste in the following script:
function doPost(e) {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
const data = JSON.parse(e.postData.contents);
const row = [
data.created_at || '',
data.first_name || '',
data.last_name || '',
data.email || '',
data.mobile || '',
JSON.stringify(data.form_answers || {})
];
sheet.appendRow(row);
return ContentService
.createTextOutput('Success')
.setMimeType(ContentService.MimeType.TEXT);
}This script receives the information sent by Activity Messenger when somoene submits your form and adds it asa. new row in your google sheet.
In your Goolge Sheet add these headings in Row 1 before testing:
Submitted at | First name | Last name | Email | Mobile |Form answers
To avoid having all form answers in one cell you may need to adjust the script and row headings for each data point. ie.
"form_answers": {
"Participant name": "Jane Smith",
"Date of birth": "2015-03-12",
"Program": "Beginner Gymnastics"
}In Apps Script:
In Activity Messenger:
Forms → Open your form → Options → Confirmation
Enable the webhook option and paste the Google Apps Script Web app URL into the webhook URL field.
Save your changes.
Submit a test response through your Activity Messenger form.
Open your Google Sheet and confirm that a new row has been added.
If the connection is working, each new form submission will automatically create a new row.