#Google Chat bot appears and webhook works, but no replies and channel logs stay empty

1 messages · Page 1 of 1 (latest)

alpine raptor
#

Hi, I’m setting up Google Chat on OpenClaw 2026.4.12 (Docker) and I’m stuck at the last mile.

Confirmed:

  • channels.googlechat enabled
  • service account configured
  • audienceType=project-number and audience is set
  • Google Chat app is Live
  • common HTTP endpoint URL is set to https://<my-domain>/googlechat
  • public HTTPS works
  • GET /googlechat returns 405
  • internal POST {} returns 400 invalid payload
  • openclaw channels status --probe says: enabled, configured, running, dm:open, works
  • openclaw doctor --non-interactive ends with: Google Chat: ok

Observed behavior:

  • bot appears in Google Chat
  • I can send it messages
  • it never replies
  • openclaw channels logs --channel googlechat returns no lines
  • openclaw logs --follow shows no new googlechat lines when sending a DM

Has anyone seen this pattern before?
I’m trying to determine whether this is:

  1. a Google Chat app event delivery/config issue
  2. a known OpenClaw googlechat quirk
  3. or a version-specific bug in 2026.4.12
reef sorrelBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> ✅ Mark Solution

alpine raptor
#

More context:

What I’m trying to do
I want Google Chat connected to OpenClaw so the bot can receive a DM and reply normally in the same chat.

What happens instead
The bot appears in Google Chat and accepts messages visually, but it never replies. There is no explicit in-chat error. On the OpenClaw side, I do not see googlechat channel activity when I send a DM.

What I ran / changed
OpenClaw Google Chat config:

  • channels.googlechat.enabled = true
  • serviceAccountFile is set
  • audienceType = "project-number"
  • audience is set
  • webhookPath = "/googlechat"

I temporarily changed dm.policy from pairing to open to remove pairing as a variable.

Public setup:

  • Docker-based OpenClaw on a DigitalOcean droplet
  • Caddy reverse proxy exposing only /googlechat
  • https://<my-domain>/googlechat is the public endpoint
  • / intentionally returns 404

Validation already done

  • public GET /googlechat returns 405 Method Not Allowed
  • internal POST {} to webhook returns 400 invalid payload
  • openclaw channels status --probe says Google Chat is enabled/configured/running/dm:open/works
  • openclaw doctor --non-interactive ends with Google Chat: ok

Environment

  • OpenClaw: 2026.4.12
  • Install method: Docker
  • Host: DigitalOcean droplet
  • Public HTTPS via Caddy
  • Google Chat app is Live
  • Common HTTP endpoint URL is configured
  • Interactive features are enabled

Relevant logs / signals

  • openclaw channels logs --channel googlechat --lines 200 --json returns "lines": []
  • openclaw logs --follow shows no new googlechat lines when I send a DM
  • tcpdump suggests traffic from Google hits the droplet on 443 around message time
  • the container also appears to make outbound connections to Google right after that

So it feels like infra/public webhook is working and OpenClaw thinks Google Chat is healthy, but actual message events are not surfacing in channel logs and no reply is produced.

alpine raptor
#

@analog tree @copper locust What do you think?

alpine raptor
#

Hello!! @analog tree @copper locust please help!

analog treeBOT
#

Yep — this smells pre-agent / inbound webhook, not model/session.

Two important tells:

  • GET /googlechat -> 405 and local POST {} -> 400 only prove the route exists; Google sends a signed POST, so the real question is what Google gets back.
  • channels status --probe can still say “works” because Google Chat probing mostly proves config/outbound, not that Google’s inbound webhook is being accepted. There’s a recent Google Chat issue where inbound auth rejects returned silent 401s with no useful OpenClaw log line. That was fixed/merged Apr 24, 2026, after 2026.4.12. (github.com)

I’d triage like this:

  1. Check your reverse proxy / tunnel access log while sending a DM.

    • No POST /googlechat at all → Google Chat app delivery/config issue.
    • POST /googlechat with 401 → likely Google Chat webhook auth/audience/principal mismatch; 2026.4.12 may hide the reason.
    • POST /googlechat with 200/202 but no reply → then look at pairing/DM policy/session routing.
  2. Since you’re on 2026.4.12, try a temporary upgrade/pinned test to a build containing the Google Chat auth logging fix. It should turn the silent failure into a WARN like “webhook auth rejected: …”, without changing successful behavior. (github.com)

  3. For your current config: with audienceType=project-number, double-check audience is the numeric Cloud project number, not project ID/name/URL. Also make sure your proxy forwards the Authorization: Bearer ... header untouched. The docs note Google signs webhook POSTs and OpenClaw verifies them against audienceType + audience. (docs.openclaw.ai)

GitHub

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞 - Issues · openclaw/openclaw