Lists calendar events with meeting links. Supports pagination, time filtering, and incremental sync with Google Calendar.
GET /calendar/events or GET /calendar/events/list
Headers:
| Parameter | Type | Default | Description |
|---|---|---|---|
time_min | ISO 8601 | Now - 1 day | Start of time range for filtering events |
time_max | ISO 8601 | Now + 28 days | End of time range for filtering events |
calendar_id | string | All calendars | Filter by specific calendar ID |
sync | boolean | false | Force sync from Google Calendar |
cleanup_duplicates | boolean | false | Clean up duplicate events |
limit | integer | 50 | Number of events per page (1-100) |
cursor | string | null | Pagination cursor for next page |
| Field | Type | Description |
|---|---|---|
next | string | null | Base64-encoded cursor for the next page, or null if no more pages |
previous | string | null | Base64-encoded cursor for the previous page, or null if no previous page |
results | array | List of calendar events |
results[].id | string | Event ID |
results[].start_time | ISO 8601 | Event start time |
results[].end_time | ISO 8601 | Event end time |
results[].calendar_id | string | Calendar ID this event belongs to |
results[].platform | string | Calendar platform (e.g., “google_calendar”) |
results[].platform_id | string | Original platform event ID |
results[].ical_uid | string | iCal UID for the event |
results[].meeting_platform | string | Detected meeting platform (google_meet, zoom, microsoft_teams, etc.) |
results[].meeting_url | string | Meeting link URL |
results[].created_at | ISO 8601 | When the event was created in the system |
results[].updated_at | ISO 8601 | When the event was last updated |
results[].is_deleted | boolean | Whether the event has been deleted |
results[].bots | array | List of bots scheduled for this event |
results[].bots[].id | string | Bot ID |
results[].bots[].status | string | Bot status (e.g., “Scheduled”, “InMeeting”) |
results[].bots[].scheduled_join_time | ISO 8601 | When the bot is scheduled to join |
results[].bots[].bot_username | string | Bot display name |
results[].bots[].platform | string | Meeting platform |
results[].bots[].meeting_link | string | Meeting link |
results[].bots[].is_scheduled | boolean | Whether the bot is scheduled |
results[].raw | object | Original calendar event data from Google Calendar |
has_more | boolean | Whether there are more results available |
user_id in token or invalid authentication.
cursor parameter to paginate through results:
cursor parameternext value from the previous response as the cursor parameterprevious value as the cursor parameterhangoutLink field (Google Meet)conferenceData.entryPoints (video conference data)location field (meeting URLs)description field (meeting URLs)meet.google.com)zoom.us)teams.microsoft.com)RecurrenceRule (RRULE) and are marked with IsRecurring: trueIsExpanded: "true" and MasterEventIDAll API endpoints are authenticated using API Keys. The key should be included in the 'Authorization' header, prefixed with 'Token '. Example: 'Authorization: Token YOUR_API_KEY'.
Start of time range for filtering events (ISO 8601)
End of time range for filtering events (ISO 8601)
Filter by specific calendar ID
Force sync from Google Calendar
Clean up duplicate events
Number of events per page (1-100)
1 <= x <= 100Pagination cursor for next page
Returns the list of calendar events.