Skip to main content
OpenIndex ingests external calendar data through ICS URLs. External calendar events are merged with your scheduled work items so you see everything in one place — no separate calendar app required.
Calendar integration is read-only. OpenIndex ingests events from ICS sources but does not write back to external calendar providers.

What you get

Once you add a calendar source, OpenIndex:
  • Fetches and normalizes events from the ICS URL
  • Merges external events with your scheduled work items in the calendar day and calendar week views
  • Materializes availability blocks you can query via GET /availability-blocks
  • Re-syncs automatically every 5 minutes

Adding a calendar source

Creating a source triggers an immediate sync attempt in addition to the regular 5-minute cadence.

Listing calendar sources


Manually triggering a sync

If you want to pull the latest events without waiting for the next automatic sync:
The API equivalent is POST /calendar-sources/:id/sync.

Viewing the calendar

calendar week returns a 7-day window starting from --start-date. If you omit the date, it defaults to today. calendar event returns full details for a single event ID from the day or week output. Pass --include-raw-payload to see the raw ICS data for that event.

Viewing availability blocks

Availability blocks are derived from your calendar sources and scheduled work items. You can query them directly:

Sync cadence

Each sync run writes a success or failure audit record so you can track sync health over time.

Deleting a calendar source

The API equivalent is DELETE /calendar-sources/:id. Deleting a source removes it from future sync runs. Previously ingested events are also removed.