Command-line interface for Google Calendar operations.
Installation
npm install -g @mariozechner/gccli
Setup
Google Cloud Console (one-time)
-
Create a new project (or select existing)
-
Set app name in OAuth branding
-
Add test users (all Gmail addresses you want to use)
Click "Create Client"
-
Application type: "Desktop app"
-
Download the JSON file
Configure gccli
First check if already configured:
gccli accounts list
If no accounts, guide the user through setup:
-
Ask if they have a Google Cloud project with Calendar API enabled
-
If not, walk them through the Google Cloud Console steps above
-
Have them download the OAuth credentials JSON
-
Run:
gccli accounts credentials ~/path/to/credentials.json -
Run:
gccli accounts add <email>(use--manualfor browserless OAuth)
Usage
Run gccli --help for full command reference.
Common operations:
-
gccli <email> calendars- List all calendars -
gccli <email> events <calendarId> [--from <dt>] [--to <dt>]- List events -
gccli <email> event <calendarId> <eventId>- Get event details -
gccli <email> create <calendarId> --summary <s> --start <dt> --end <dt>- Create event -
gccli <email> freebusy <calendarIds> --from <dt> --to <dt>- Check availability
Use primary as calendarId for the main calendar.
Date/Time Format
-
Timed events:
YYYY-MM-DDTHH:MM:SSZ(UTC) orYYYY-MM-DDTHH:MM:SS(local) -
All-day events:
YYYY-MM-DDwith--all-dayflag
Data Storage
-
~/.gccli/credentials.json- OAuth client credentials -
~/.gccli/accounts.json- Account tokens