How to Add a Meeting Bot to Google Meet in 5 Minutes
A step-by-step guide to sending a bot to any Google Meet using the Gregnote API. Get a transcript webhook in under 10 lines of code.
Gregnote Team
20 August 2026
What you'll build
By the end of this guide, a bot will join a Google Meet, record the audio, and fire a webhook to your server with the full diarised transcript — automatically, every time.
You'll need a Gregnote API key (free, no card required) and a publicly reachable URL for your webhook. Use ngrok or Cloudflare Tunnel during development.
Step 1 — Get your API key
Sign up at app.gregnote.com. Your API key is on the dashboard home page. It starts with gk_live_.
Step 2 — Send the bot to a meeting
curl -X POST https://api.gregnote.com/v1/bots \
-H "Authorization: Bearer gk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"meeting_url": "https://meet.google.com/abc-def-ghi",
"bot_name": "Notetaker",
"webhook_url": "https://yourdomain.com/hooks/gregnote"
}'You get back a bot ID and status joining immediately. The bot appears in the meeting participant list within seconds.
Step 3 — Handle the webhook
When the meeting ends, Gregnote fires a meeting.completed event to your webhook URL. The payload includes the full transcript:
{
"event": "meeting.completed",
"transcript": {
"segments": [
{ "speaker": "Alice", "text": "Let's kick off the Q3 review.", "start": 0.0 },
{ "speaker": "Bob", "text": "Sounds good. First item — pipeline.", "start": 4.2 }
]
},
"billable_seconds": 1800
}Parse it however you like — push to Notion, summarise with an LLM, log to your CRM.
Step 4 — Verify the signature
Every webhook is signed with HMAC-SHA256. Always verify before processing:
const sig = request.headers["x-gregnote-signature"];
const [tPart, vPart] = sig.split(",");
const timestamp = tPart.split("=")[1];
const received = vPart.split("=")[1];
const expected = crypto
.createHmac("sha256", process.env.GREGNOTE_WEBHOOK_SECRET)
.update(timestamp + "." + rawBody)
.digest("hex");
if (received !== expected) return res.sendStatus(401);You're done
Four steps, one API call, one webhook handler. The bot joins, records, transcribes, and delivers — you just react to the event.
Try it yourself
API key in 30 seconds. Free credit on sign-up. No card required.