Google Chat · Webhooks

Send Google Forms Responses to a Google Chat Space

Your team lives in Google Chat? Post every Google Forms response to a Chat space with an incoming webhook. It works on the free plan.

By · Makers of Slacify · · 2 min read

Not every team is on Slack. If yours runs on Google Workspace, Google Chat spaces accept incoming webhooks too, and they understand the same simple {"text": "…"} message that Slacify sends by default. So a regular Slack-style notification works with Chat without any JSON.

Step 1: Add a webhook to the space

  1. Open the space in Google Chat and click the space name at the top.
  2. Choose Apps & integrations, then Webhooks (or Add webhooks).
  3. Give the webhook a name, such as “Form responses”, and optionally an avatar URL. Save.
  4. Copy the webhook URL. It starts with https://chat.googleapis.com/v1/spaces/.

Step 2: Create the notification

In your form, open Add-ons → Slacify → Configure notifications, click Add notification, paste the Chat webhook URL and keep the payload type on Slack message. Google Chat formatting is close to Slack’s: *bold*, _italic_, ~strikethrough~ and <https://example.com|links> all work.

*New IT request* from {{Name}}
Device: {{Device}} · Urgency: {{Urgency}}
<{{Response Link}}|Open response>

Step 3: Test and save

Send a test to check the message in the space, then save. Every new response is posted automatically. Responses are sent straight from your Google account to Google Chat; they never pass through Slacify’s servers.

Keep each form in its own thread

By default, every webhook message starts a new conversation in the space. To keep all responses for one form together, add two parameters to the end of the webhook URL: &threadKey=demo-requests&messageReplyOption=REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD. Messages with the same thread key are posted as replies in one thread, so a busy space stays readable. Use a different key per form.

Mentions

To notify everyone in the space, put <users/all> in the message. Individual people can be mentioned with <users/USER_ID>, where the ID is the numeric Google user ID; @name typed in the template will not create a mention.

If it doesn’t arrive

  • 400: usually malformed JSON in a custom payload. Plain Slack-message notifications always send valid JSON.
  • 403 or 404: the webhook was deleted from the space, or the space itself was deleted. Add a new webhook and update the notification.
  • 429: Google Chat limits how fast a single space accepts messages. This only matters for forms receiving many responses per second.

Want cards with buttons instead of a text line? Switch to Custom JSON on a paid plan and send a Google Chat card payload, with your {{variables}} inside the text fields. For other destinations, see Google Forms to Discord or the Slack setup guide.

Send Google Forms responses to Slack

Custom messages with the answers built in, posted seconds after someone hits Submit. Free 7-day trial.

You may also like

See all posts →