dusk bot
integrationslist events across calendars

dusk botintegrationsgoogle calendar

see events from your google calendars together

put your gallery visits, travel and classes on one list. a bot can gather events across selected google calendars and remove duplicates.

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

give it start and end times with your time zone. ask it to put calendar errors before the appointments. this action only looks, but dusk counts it as a write, so allow it by name.

pixel art: a blue pixel bot and a purple pixel bot beside the Google Calendar mark on a white tile, an alarm clock and a calendar and a folder of papers, on a sandy path in front of white cliffs with a waterfall, one saying "across your calendars"

where it helps

  • exhibition planning: gather next month's gallery and travel appointments.
  • a customer handover: find their named appointments across calendars.
  • class planning: list recurring classes beside one-off workshops.

the short version

see the appointments together without moving them. studio, teaching and personal bookings can sit side by side. duplicate events appear once.

  • name the calendars, or let the bot use your calendar list
  • give start and end times with your time zone
  • ask for full details when the compact summary leaves out the location

the bot can expand recurring events into individual dates.

step by step

  1. connect narrowly. this listing needs read and write in dusk. allow only the listing actions it needs.
  2. choose calendars. ask which it can see, then name the two you want.
  3. set the window. include your time zone. ask it to fetch the remaining results and report errors.
  4. compare once. compare one appointment from each selected calendar with google calendar before scheduling it. edit the routine card if needed.

send this to your bot

paste this into a chat with your bot

every second thursday at 6, gather the next fortnight's events from my gallery and travel google calendars. use london time. group them by date here. include full details when they help explain the location. keep fetching results from each calendar until none remain. put calendar errors or missing results before the list. never create, move or cancel events.
when
alternate thursdays at 18:00
needs
google calendar read and write; allow only this combined listing and the calendar lookups it needs

what comes back looks like this (an example)

mossglass gallery: next fortnight
- tuesday, 10:00: lighting visit, gallery calendar
- thursday, 14:00: courier appointment, travel calendar

coverage: both selected calendars returned results.

what can go wrong

  • no time-zone offset means utc. that can shift the dates you meant.
  • ask for the whole window. the bot needs to fetch the remaining batches from each calendar.
  • recurring events expand by default. expect individual class dates, rather than one repeating entry.

permissions and asking first

dusk bot counts List Events from All Calendars 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.calendarlist, calendar.calendarlist.readonly.

allow the list, without allowing calendar edits. an exact action list can keep event creation and deletion out of reach.

inputs

inputrequiredwhat it is
time_maxyesUpper bound (exclusive) for an event's start time to filter by.
time_minyesLower bound (inclusive) for an event's end time to filter by.
qnoFree text search terms to find events that match these terms in any field, except for extended properties.
event_typesnoEvent types to return.
calendar_idsnoOptional list of specific calendar IDs to query.
show_deletednoWhether to include deleted events (with status equals 'cancelled') in the result.

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

try it in 2 minutes

  1. name two calendars and tomorrow's date window
  2. include your time zone
  3. ask for a combined list with any errors first
  4. compare one appointment with google calendar

quick checklist

  • the intended calendars appear
  • the start, end and time zone match my request
  • the bot fetched all result batches
  • any failed calendar appears before the list

mistakes people make

trusting an empty list

look for a result or error beside every calendar name.

saying "next week" without a time zone

state the dates and local time zone.

questions

why does a calendar listing need write access in dusk?

dusk counts this action as a write. allow it by name rather than enabling every calendar change.

does an empty combined list mean i am free?

look at the coverage note first. every intended calendar must return results for the right dates and time zone. a failed calendar leaves your availability unknown.

sources

  1. dusk bot docs: files and apps
  2. dusk bot docs: routines
  3. dusk bot docs: computer permissions
  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].