dusk bot
integrationsquery calendar availability

dusk botintegrationsgoogle calendar

ask ai which google calendars are busy at a given time

find a room without reading everyone's meeting titles. name the calendars, dates and time zone. the bot returns busy intervals, which you can compare before booking.

by the dusk bot team · checked · how we made this

use find free slots for calculated openings. dusk classes this query as a write. allow this action alone, or use find free slots to keep the bot read only.

pixel art: a yellow pixel bot, a green pixel bot and a blue pixel bot beside the Google Calendar mark on a white tile, an alarm clock and a calendar and a chart on an easel, on a grassy meadow in front of little green islands on a lake, one saying "busy without meeting titles"

what it does

busy times can answer the question without exposing the meeting. this reads accessible calendars or groups within an exact window. it returns busy stretches and any access errors. it doesn't name appointments or calculate openings.

name the calendars or let the bot list them first. it needs at least free-busy access to each one. ask it to explain the intervals here; use find free slots for calculated openings.

when you would use it

  • choose between workshop rooms. compare two calendars without collecting their meeting subjects.
  • find an interview window. compare the busy periods for the colleagues you name.
  • plan a handover call. see booked intervals on the shared duty calendar.
  • keep private appointments private. ask for availability alone when meeting details add nothing.

try it

paste this into a chat with your bot

every monday at 1, read the busy times for studio east and studio west for this friday, 13:00 to 17:00, london time. return each room's busy intervals here.

list access failures separately. never call a calendar free when its lookup failed. don't create, move or cancel events.
when
mondays at 13:00; covers friday afternoon in london time
needs
google calendar read and write for this query only; free-busy access to both room calendars

what comes back looks like this (an example)

friday, london time

- studio east: busy 13:00-14:00
- studio west: access error; availability unknown

elodie needs access to studio west before choosing. no titles read and no room booked.

set it up

  1. connect the calendar account. name both calendars and the time zone you want in the answer.
  2. allow this specific query. read only blocks it. an exact action list avoids granting event creation or edits.
  3. try a short window. look for a result or named access error beside each calendar.
  4. schedule the room comparison. pause it when the rooms or planning window change.

what it needs from you

inputrequiredwhat it is
itemsyesList of calendars and/or groups to query.
timeMaxyesThe end of the interval for the query formatted as per RFC3339.
timeMinyesThe start of the interval for the query formatted as per RFC3339.
timeZonenoTime zone used in the response.
groupExpansionMaxnoMaximal number of calendar identifiers to be provided for a single group.
calendarExpansionMaxnoMaximal number of calendars for which FreeBusy information is to be provided.

from composio's catalog for Google Calendar (action GOOGLECALENDAR_FREE_BUSY_QUERY, read 12 november 20264). your bot fills these in from what you tell it.

how dusk bot handles it

dusk bot counts Query Calendar Availability as a change: it alters something in Google Calendar, and the sending setting does not cover it. a bot you allow only to read can never call it.

the permissions Google Calendar asks for to run it: calendar, calendar.readonly, calendar.freebusy, calendar.events.freebusy.

where it stops

  • no time zone means utc. name yours so afternoon meetings stay in the afternoon.
  • keep the span around 90 days or less. longer requests can return empty or weaker results.
  • one request covers up to 50 calendars. an access error leaves that calendar unknown.
  • book separately when you choose. the query holds no room; someone else can book between the result and your decision.

try it in 2 minutes

  1. name two room calendars
  2. pick one date and a two-hour window
  3. state the time zone
  4. ask for busy times and errors, with no booking

before you offer a time

  • both calendars returned successful results
  • the dates and response time zone match your request
  • you understand the busy intervals
  • you will still need to book the room

mistakes people make

calling an empty result free time

look for a successful lookup before offering the slot. an access error leaves availability unknown.

forgetting the time zone

state it in the request. the response otherwise uses utc.

questions

can it tell me why someone is busy?

no, this returns times alone. reading titles needs an event-listing action and access to those details.

why does an availability check need write access in dusk?

dusk classifies this query as a write. restrict access to this action. you can leave event creation and editing off.

sources

  1. dusk bot docs: files and apps
  2. dusk bot docs: routines
  3. dusk bot docs: a bot's computer
  4. composio, Google Calendar toolkit (catalog version 20261103_00), checked 12 november 2026

drafted with ai help from the dusk bot docs and the sources listed on this page, then checked against them. if something here is wrong or out of date, write to [email protected].