Skip to content

Google Chat integration

The Google Chat integration posts alerts into a space as cardsV2 messages. It needs one thing: the space’s incoming webhook URL.

  1. In Google Chat, open the space you want alerts in.

  2. Apps & integrations → Webhooks → Add webhook.

  3. Copy the URL. It looks like https://chat.googleapis.com/v1/spaces/....

In the dashboard, Integrations → Add Integrations → Google Chat. Name it, paste the URL into Webhook URL, and click Add. Or via the API:

Terminal window
curl -X POST https://api.siteqwality.com/integration/google_chat \
-H "Authorization: Bearer $SITEQWALITY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"friendly_name": "Acme Google Chat",
"url": "https://chat.googleapis.com/v1/spaces/..."
}'

Note the request field is url, while the stored and returned field is google_chat_webhook_url.

Both fields are required and must be non-empty. Nothing validates that the value is a URL at all, let alone a working one, so a typo shows up as a failed notification rather than an error at save time.

Terminal window
curl -X POST https://api.siteqwality.com/notification \
-H "Authorization: Bearer $SITEQWALITY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"notification_group_id": "<your-group-id>",
"type": "google_chat",
"details": { "google_chat_integration_id": "<google-chat-integration-id>" }
}'

Messages render as a Google Chat card with a header and a body section carrying the monitor name, URL, and status. Recovery messages use the same card shape.

Each attempt has a 15 second timeout, and any non-2xx response counts as a failure.

Google Chat channels fire for HTTP monitors, browser checks, and DNS/domain expiry. TLS expiry and cron/heartbeat monitors only support email, SMS, and Slack today; a Google Chat channel on a group used by those monitor types is skipped.