Google Signed-In Bots

View as Markdown

This guide applies to Google Meet.

By default, MeetStream bots join as anonymous users. A signed-in bot logs into a real Google account before joining — so it appears as a named participant, not a guest.

Use this when:

  • The meeting blocks anonymous/guest users
  • You want the bot to appear with a name and avatar instead of “Unknown”


Prerequisites

  • A Google Workspace account with a custom domain (e.g. yourcompany.com)
  • Access to your Google Workspace Admin Console
  • Terminal access to run an OpenSSL command

Setup

1

Open Google Workspace Admin

Navigate to admin.google.com.

workspace admin
3

Open the Legacy SSO Profile

Select SSO with third-party IdPs, then open Legacy SSO profile.

legacy sso profile
4

Enable the Legacy SSO Profile

Turn on Enable legacy SSO profile and fill in these URLs:

Sign-in page URL

https://api.meetstream.ai/api/v1/bot/gmeet-sign-in

Sign-out page URL

https://api.meetstream.ai/api/v1/bot/gmeet-sign-out

Also enable Domain-specific issuer on the same page.

legacy sso profile
legacy sso profile
5

Generate a Certificate

Run this command in your terminal:

$openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -sha256 -days 3650 -nodes

This creates two files:

  • key.pem — your private key
  • cert.pem — your certificate

Save both. You’ll need them in the next steps.

6

MeetStream Dashboard Integration

In the MeetStream dashboard, go to Integrations → Google Signed-In Bots.

dashboard
7

Add Your Domain

Enter the custom domain you use with your Google Workspace account.

add domain
8

Add Mail IDs and Upload Certificates

Add each email address you use to invite the bot. For every email you add, upload the key.pem and cert.pem certificate generated in Step 5.

Upload the certificate each time you add a new mail ID under a domain.

adding user

Deploy Your Signed-In Bot

Now you are ready to use Google meet using configured email identity! When calling the Create Bot endpoint, pass the following parameter to activate Google Meet sign-in:

1"google_meet": {
2 "login_required": true,
3 "google_login_domain": "your domain name"
4 }

Here is an example with a full working payload that supports signed-in bots for google meet:

1{
2 "meeting_link": "{{meeting_link}}",
3 "bot_name": "{{bot_name}} Agent",
4 "video_required": {{video_required}},
5 "bot_message": "Hey Everyone, I'm a speaking agent",
6 "bot_image_url":"{{bot_profile}}",
7 "google_meet": {
8 "login_required": true,
9 "google_login_domain": "salesrobin.ai"
10 },
11 "custom_attributes": {
12 "tag": "Meetstream",
13 "sample": "testing",
14 "user": "{{user_id}}"
15 },
16 "recording_config": {
17 "retention": {
18 "type": "timed",
19 "hours": 48
20 }
21 },
22 "automatic_leave": {
23 "waiting_room_timeout": 100, // sec
24 "everyone_left_timeout": 100, // secs
25 "voice_inactivity_timeout": 51, // secs
26 "in_call_recording_timeout": 14400, // secs
27 "recording_permission_denied_timeout": 60 // only for zoom
28 }
29}

For general bot setup, see the Create Your First Bot guide and webhook event handling, see Webhooks and Events.