Agenda

List calendar events

External calendar events fetched live from the authenticated user's connected Google / Office365 credentials via the sync-engine — there's no DB table. Optional `limit` and `dateRange.{start,end}` (IS

GET /v2/agenda/calendar/events

Parameters

Query parameters

limit
integer
searchQuery
string
dateRange
object

Responses

200 — Successful response

Content-Type: application/json

data
object required
data.calendar_events
array<object> required
data.calendar_events[].providerId
string required
data.calendar_events[].type
string enum required
Possible values: "EMAIL", "CALENDAR"
data.calendar_events[].subjectOrTitle
string required
data.calendar_events[].dateTime
string (date-time) required
data.calendar_events[].endDateTime
string (date-time)
data.calendar_events[].isAllDay
boolean | null
data.calendar_events[].participants
array<object> required
data.calendar_events[].participants[].email
string required
data.calendar_events[].participants[].name
string | null
data.calendar_events[].providerLink
string | null
data.calendar_events[].email
string required
data.calendar_events[].iCalUID
string | null
data.calendar_events[].summaryOfEvent
string | null
data.calendar_events[].descriptionOfEvent
string | null
data.calendar_events[].conferenceData
object | null
data.calendar_events[].conferenceData.conferenceId
string | null
data.calendar_events[].conferenceData.entryPoints
array<object> | null
data.calendar_events[].conferenceData.entryPoints[].uri
string | null
data.calendar_events[].conferenceData.entryPoints[].label
string | null
data.calendar_events[].conferenceData.entryPoints[].accessCode
string | null
data.calendar_events[].isRecurring
boolean | null
data.calendar_events[].provider
string | null
data.pagination
object
data.pagination.nextCursor
string | null
data.pagination.count
integer
data.warnings
array<string>
Incomplete results: some connected calendars could not be read.

Example

{
  "data": {
    "calendar_events": [
      {
        "providerId": "string",
        "type": "EMAIL",
        "subjectOrTitle": "string",
        "dateTime": "2026-09-17T02:39:21.248Z",
        "participants": [
          {
            "email": "string"
          }
        ],
        "email": "string"
      }
    ]
  }
}

400 — Request body failed validation.

Content-Type: application/json

(body)
any

401 — Missing or invalid API key.

Content-Type: application/json

(body)
any

403 — Valid key, insufficient permission.

Content-Type: application/json

(body)
any

404 — Resource does not exist.

Content-Type: application/json

(body)
any

409 — Request conflicts with the current state of the resource.

Content-Type: application/json

(body)
any

429 — Rate limit exceeded.

Content-Type: application/json

(body)
any

500 — Unexpected server error.

Content-Type: application/json

(body)
any

Code samples

curl https://api.prod.getdex.com/v2/agenda/calendar/events \
  --header 'Authorization: Bearer YOUR_API_KEY'
Copyright © 2026