Google Chat (Chat API)
Status: ready for DMs + spaces via Google Chat API webhooks (HTTP only).
ClawCentral connects to Google Chat as an HTTP app. Google Chat POSTs events to ClawCentral's managed platform; ClawCentral verifies the Google OIDC JWT on every inbound request automatically. No local server or tunnel is needed.
Webhook URL
https://<your-tenant>.clawcentral.io/webhooks/google-chat
Replace <your-tenant> with your ClawCentral tenant slug.
Required credentials
Set these in Admin UI → Settings → Tenant Settings → Secrets:
| Secret | Description |
|---|---|
GOOGLE_CHAT_PROJECT_NUMBER | Your Google Cloud project number |
GOOGLE_CHAT_SERVICE_ACCOUNT_KEY | Full JSON content of the service account key file |
Setup
Step 1: Create a Google Cloud project and enable the Chat API
- Go to Google Chat API in Google Cloud Console
- Enable the API if it is not already enabled.
Step 2: Create a Service Account
- Click Create Credentials > Service Account
- Name it (e.g.,
clawcentral-chat) - Leave permissions blank → Continue → Done
Step 3: Create and download the JSON Key
- In the list of service accounts, click on the one you just created
- Go to the Keys tab
- Click Add Key > Create new key
- Select JSON and press Create — a
.jsonfile downloads automatically
Step 4: Configure the Google Chat App
- Go to Google Cloud Console Chat Configuration
- Fill in the Application info:
- App name: e.g.,
ClawCentral - Avatar URL: your logo URL
- Description: e.g.,
Personal AI Assistant
- App name: e.g.,
- Enable Interactive features
- Under Functionality, check Join spaces and group conversations
- Under Connection settings, select HTTP endpoint URL
- Under Triggers, select Use a common HTTP endpoint URL for all triggers and set it to:
https://<your-tenant>.clawcentral.io/webhooks/google-chat - Under Visibility, check Make this Chat app available to specific people and groups in <Your Domain>
- Enter your email address in the text box
- Click Save
Step 5: Enable the app status
- After saving, refresh the page
- Find the App status section
- Change the status to Live - available to users
- Click Save again
Step 6: Note your Google Cloud project number
- In Google Cloud Console → Home → Dashboard
- Copy the Project number (not the project ID)
Step 7: Enter credentials in Admin UI
- Open your Admin UI at
https://<your-tenant>.clawcentral.io/ - Go to Settings → Tenant Settings → Secrets
- Add
GOOGLE_CHAT_PROJECT_NUMBERwith your project number as the value - Add
GOOGLE_CHAT_SERVICE_ACCOUNT_KEYwith the full contents of the downloaded service account JSON file as the value - Save each secret
Add to Google Chat
Once your credentials are saved and the app is live:
- Go to Google Chat
- Click the + (plus) icon next to Direct Messages
- Search for the App name you configured in the Google Cloud Console
- Note: The bot will not appear in the "Marketplace" browse list because it is a private app. You must search for it by name.
- Select your bot from the results
- Click Add or Chat to start a 1:1 conversation
- Send "Hello" to trigger the assistant
How it works
- Google Chat sends webhook POSTs to ClawCentral. Each request includes an
Authorization: Bearer <token>header. - ClawCentral verifies the OIDC token against the configured Google Cloud project number automatically.
- Messages are routed by space:
- DMs use session key
googlechat:direct:<spaceId> - Spaces use session key
googlechat:group:<spaceId>
- DMs use session key
- DM access uses pairing by default. Unknown senders receive a pairing code; approve it via the Admin UI.
- Group spaces require @-mention by default.
Targets
Use these identifiers for allowlists:
- Direct messages:
users/<userId>(recommended — stable) - Spaces:
spaces/<spaceId> - Raw email addresses (
name@example.com) are mutable and should not be used for allowlist matching
Capabilities
| Feature | Status |
|---|---|
| Direct messages | Supported |
| Spaces | Supported |
| @-mentions | Supported (required in spaces by default) |
| Reactions | Supported (when enabled) |
| Media | Supported (size-capped per configuration) |
| Typing indicator | Supported (message mode by default) |
Troubleshooting
405 Method Not Allowed
If Google Cloud Logs Explorer shows errors like:
status code: 405, reason phrase: HTTP error response: HTTP/1.1 405 Method Not Allowed
This means the webhook URL is not correct. Verify that the Chat app's HTTP endpoint URL in Google Cloud Console exactly matches:
https://<your-tenant>.clawcentral.io/webhooks/google-chat
No messages arriving
- Confirm the Chat app's status is Live in Google Cloud Console
- Verify your email is in the visibility list
- Check that
GOOGLE_CHAT_PROJECT_NUMBERandGOOGLE_CHAT_SERVICE_ACCOUNT_KEYare correctly saved in Admin UI → Settings → Tenant Settings → Secrets
Mention gating blocks replies
The bot only responds to @-mentions in spaces by default. To allow all messages in a space, contact support or adjust the group policy via the Admin UI.
Authentication errors
ClawCentral verifies the Google OIDC JWT using the project number. If you see auth errors, confirm the GOOGLE_CHAT_PROJECT_NUMBER value is the numeric project number (e.g., 123456789012), not the project ID string.