Query Free/Busy

Returns free/busy information for a set of calendars

Usage #

// Import the typed helper
import { queryFreebusy } from "@hotglue/sdk/google_calendar";
const result = await client.execute({
...queryFreebusy({
time_min: string,
time_max: string,
items: array,
// ...
}),
userId: "user_123",
});
// result is typed as QueryFreebusyOutput
const result = await client.execute({
integration: "google_calendar",
tool: "query_freebusy",
userId: "user_123",
input: {
time_min: string,
time_max: string,
items: array,
// ...
},
});
// The agent will automatically use this tool when needed
const agent = new Agent({
tools: () => hotglueTools({
integrations: ["google_calendar"],
userId: "user_123",
}),
});
await agent.generate("run the Query Free/Busy tool");

Required Permissions #

https://www.googleapis.com/auth/calendar.events.readonly

Input Schema #

time_min string required

Start of the interval (RFC3339 timestamp)

time_max string required

End of the interval (RFC3339 timestamp)

items object[] required

List of calendars to query

time_zone string

Time zone for the response (default UTC)

calendar_expansion_max int

Maximum number of calendars for which FreeBusy info is returned (max 50)

group_expansion_max int

Maximum number of calendar identifiers per group (max 100)

This tool calls: #

POST https://www.googleapis.com/calendar/v3/freeBusy