Connect a user's calendar, check availability, schedule a meeting, and V100 handles the rest -- room creation, link injection, and calendar sync.
// npm install v100-sdk
import { V100 } from 'v100-sdk';
const v100 = new V100('YOUR_API_KEY');
// Connect a user's Google Calendar
const authUrl = await v100.calendar.connect({
provider: 'google', // 'google' or 'microsoft'
userId: 'user_abc123',
redirectUri: 'https://app.example.com/calendar/callback'
});
// Redirect user to authUrl for OAuth consent
// Check availability across participants
const availability = await v100.calendar.checkAvailability({
participants: ['user_abc', 'user_def', 'user_ghi'],
dateRange: {
from: '2026-03-29T09:00:00',
to: '2026-03-29T17:00:00'
},
timezone: 'America/New_York',
duration: 30 // minutes
});
// availability.slots → [
// { start: "10:00", end: "10:30", allFree: true },
// { start: "14:00", end: "14:30", allFree: true }
// ]
// Schedule a meeting on the calendar
const event = await v100.calendar.schedule({
title: 'Product Review',
start: '2026-03-29T10:00:00',
end: '2026-03-29T10:30:00',
timezone: 'America/New_York',
participants: ['user_abc', 'user_def'],
recurrence: 'RRULE:FREQ=WEEKLY;BYDAY=TU', // Every Tuesday
autoRecord: true,
transcription: true
});
// event.meetingId → "mtg_xyz789"
// event.joinUrl → "https://meet.v100.ai/mtg_xyz789"
// event.calendarId → "evt_cal_abc"