Reclaim.ai events API

The events API from Reclaim.ai — 18 operation(s) for events.

OpenAPI Specification

reclaim-ai-events-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Reclaim account-time-schemes events API
  description: Reclaim's awesome API
  contact:
    name: Reclaim.ai Inc.
    url: http://reclaim.ai
    email: info@reclaim.ai
  license:
    name: Reclaim 9.9
    url: http://reclaim.ai
  version: '0.1'
tags:
- name: events
paths:
  /api/events:
    get:
      tags:
      - events
      operationId: query
      parameters:
      - name: calendar
        in: query
        deprecated: true
        schema:
          type: integer
          format: int64
          nullable: true
      - name: calendarIds
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      - name: allConnected
        in: query
        schema:
          type: boolean
          nullable: true
      - name: priorities
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      - name: type
        in: query
        schema:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/EventType'
      - name: project
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: sourceDetails
        in: query
        schema:
          type: boolean
          nullable: true
      - name: thin
        in: query
        schema:
          type: boolean
          nullable: true
      - name: habitIds
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      - name: recurringOneOnOneIds
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      - name: taskIds
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      responses:
        '200':
          description: query 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Event'
      security:
      - Authorization: []
  /api/events/fetch-instances/raw-event/{credentialId}/{calendarId}/{eventId}:
    get:
      tags:
      - events
      operationId: fetchInstancesEventRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: eventField
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      responses:
        '200':
          description: fetchInstancesEventRaw 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
      security:
      - Authorization: []
  /api/events/fetch-instances/raw-google/{credentialId}/{calendarId}/{eventId}:
    get:
      tags:
      - events
      operationId: fetchInstancesGoogleRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: eventField
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      responses:
        '200':
          description: fetchInstancesGoogleRaw 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
      deprecated: true
      security:
      - Authorization: []
  /api/events/personal:
    get:
      tags:
      - events
      operationId: getPersonal_1
      parameters:
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: limit
        in: query
        schema:
          type: integer
          format: int32
          nullable: true
      responses:
        '200':
          description: getPersonal_1 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Event'
      security:
      - Authorization: []
  /api/events/raw-event/{credentialId}/{calendarId}/{eventId}:
    get:
      tags:
      - events
      operationId: fetchEventRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: eventField
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      responses:
        '200':
          description: fetchEventRaw 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
    patch:
      tags:
      - events
      operationId: patchEventRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: string
              format: binary
        required: true
      responses:
        '200':
          description: patchEventRaw 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventWithData'
      security:
      - Authorization: []
  /api/events/raw-events/{credentialId}/{calendarId}:
    get:
      tags:
      - events
      operationId: queryEventsRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: q
        in: query
        schema:
          type: string
          nullable: true
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: singleEvents
        in: query
        schema:
          type: boolean
          nullable: true
      - name: eventField
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      - name: privateExtendedProperty
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      - name: sharedExtendedProperty
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      responses:
        '200':
          description: queryEventsRaw 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
      security:
      - Authorization: []
  /api/events/raw-google/{credentialId}/{calendarId}:
    get:
      tags:
      - events
      operationId: queryGoogleRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: q
        in: query
        schema:
          type: string
          nullable: true
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: singleEvents
        in: query
        schema:
          type: boolean
          nullable: true
      - name: eventField
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      - name: privateExtendedProperty
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      - name: sharedExtendedProperty
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      responses:
        '200':
          description: queryGoogleRaw 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
      deprecated: true
      security:
      - Authorization: []
  /api/events/raw-google/{credentialId}/{calendarId}/{eventId}:
    get:
      tags:
      - events
      operationId: fetchGoogleRaw
      parameters:
      - name: credentialId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: calendarId
        in: path
        required: true
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: eventField
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: string
      responses:
        '200':
          description: fetchGoogleRaw 200 response
          content:
            application/json:
              schema:
                type: object
      deprecated: true
      security:
      - Authorization: []
  /api/events/recurring-series:
    get:
      tags:
      - events
      operationId: queryRecurringSeries
      parameters:
      - name: count
        in: query
        schema:
          type: integer
          format: int32
          nullable: true
      - name: after
        in: query
        schema:
          type: string
          nullable: true
      - name: order
        in: query
        schema:
          nullable: true
          allOf:
          - $ref: '#/components/schemas/SortOrder'
      - name: titleQuery
        in: query
        description: Case-insensitive substring match against the event title
        schema:
          type: string
          nullable: true
      - name: minAttendees
        in: query
        description: Minimum number of attendees (inclusive)
        schema:
          type: integer
          format: int32
          nullable: true
      - name: maxAttendees
        in: query
        description: Maximum number of attendees (inclusive)
        schema:
          type: integer
          format: int32
          nullable: true
      - name: organizer
        in: query
        description: Organizer email to match, 'SELF' for events organized by the querying user, or 'NOT_SELF' to exclude them
        schema:
          type: string
          nullable: true
      - name: nextEventAfter
        in: query
        description: Only include series whose next instance starts at or after this instant (inclusive)
        schema:
          type: string
          format: date-time
          nullable: true
      - name: nextEventBefore
        in: query
        description: Only include series whose next instance starts before this instant (exclusive)
        schema:
          type: string
          format: date-time
          nullable: true
      - name: managementTypes
        in: query
        description: Include only series matching these management types
        schema:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/SeriesManagementType'
      responses:
        '200':
          description: queryRecurringSeries 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Page_RecurringSeriesView_'
      security:
      - Authorization: []
  /api/events/smart-series:
    get:
      tags:
      - events
      operationId: querySmartSeriesEventsByLineageIds
      parameters:
      - name: start
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: end
        in: query
        schema:
          type: string
          format: date
          nullable: true
      - name: lineageIds
        in: query
        required: true
        schema:
          type: array
          items:
            type: integer
            format: int64
      responses:
        '200':
          description: querySmartSeriesEventsByLineageIds 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Event'
      security:
      - Authorization: []
  /api/events/utils/to-v2:
    post:
      tags:
      - events
      operationId: toCalendarEvent
      parameters:
      - name: fromCacheMiss
        in: query
        schema:
          type: boolean
          nullable: true
      - name: associations
        in: query
        schema:
          type: boolean
          nullable: true
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/EventKey'
        required: true
      responses:
        '200':
          description: toCalendarEvent 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CalendarEventV2'
      security:
      - Authorization: []
  /api/events/v2:
    get:
      tags:
      - events
      operationId: queryV2
      parameters:
      - name: calendarIds
        in: query
        schema:
          type: array
          nullable: true
          items:
            type: integer
            format: int64
      - name: allConnected
        in: query
        schema:
          type: boolean
          nullable: true
      - name: start
        in: query
        required: true
        schema:
          type: string
          format: date
      - name: end
        in: query
        required: true
        schema:
          type: string
          format: date
      - name: forceLegacyQuery
        in: query
        schema:
          type: boolean
          nullable: true
      - name: useCache
        in: query
        schema:
          type: boolean
          nullable: true
      responses:
        '200':
          description: queryV2 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CalendarEventV2'
      security:
      - Authorization: []
  /api/events/view/{calendarId}/{eventId}:
    get:
      tags:
      - events
      operationId: gcalViewRedirect
      parameters:
      - name: calendarId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: skipSourceRedirect
        in: query
        schema:
          type: boolean
          nullable: true
      responses:
        '200':
          description: gcalViewRedirect 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
  /api/events/{calendarId}/{eventId}:
    get:
      tags:
      - events
      operationId: getForCalendar
      parameters:
      - name: calendarId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: sourceDetails
        in: query
        schema:
          type: boolean
          nullable: true
      - name: thin
        in: query
        schema:
          type: boolean
          nullable: true
      responses:
        '200':
          description: getForCalendar 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
      security:
      - Authorization: []
  /api/events/{calendarId}/{eventId}/buffer:
    post:
      tags:
      - events
      operationId: adjustConferenceBuffer
      parameters:
      - name: calendarId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: duration
        in: query
        required: true
        schema:
          type: integer
          format: int64
      - name: notificationKey
        in: query
        schema:
          type: string
          nullable: true
      responses:
        '200':
          description: adjustConferenceBuffer 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
  /api/events/{calendarId}/{eventId}/priority:
    post:
      tags:
      - events
      operationId: adjustPriority
      parameters:
      - name: calendarId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: priority
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/PriorityLevel'
      - name: period
        in: query
        schema:
          nullable: true
          allOf:
          - $ref: '#/components/schemas/RecurringEventUpdatePeriod'
      - name: notificationKey
        in: query
        schema:
          type: string
          nullable: true
      responses:
        '200':
          description: adjustPriority 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
  /api/events/{calendarId}/{eventId}/travel/{type}:
    post:
      tags:
      - events
      operationId: adjustTravelTime
      parameters:
      - name: calendarId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: type
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/AssistType'
      - name: duration
        in: query
        required: true
        schema:
          type: integer
          format: int64
      - name: notificationKey
        in: query
        schema:
          type: string
          nullable: true
      responses:
        '200':
          description: adjustTravelTime 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
  /api/events/{eventId}:
    get:
      tags:
      - events
      operationId: get_1
      parameters:
      - name: eventId
        in: path
        required: true
        schema:
          type: string
      - name: sourceDetails
        in: query
        schema:
          type: boolean
          nullable: true
      - name: thin
        in: query
        schema:
          type: boolean
          nullable: true
      responses:
        '200':
          description: get_1 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
      deprecated: true
      security:
      - Authorization: []
components:
  schemas:
    RecurrenceContinuityData:
      type: object
      properties:
        lastPendingSync:
          type: string
          format: date-time
          nullable: true
        successorExternalId:
          type: string
          nullable: true
    EventSourceDetails:
      required:
      - base64Id
      - calendarId
      - description
      - etag
      - eventId
      - eventKey
      - title
      - url
      - writable
      type: object
      properties:
        writable:
          type: boolean
        calendarId:
          type: integer
          format: int64
        eventId:
          type: string
        etag:
          type: string
        eventKey:
          $ref: '#/components/schemas/EventKey'
        base64Id:
          type: string
        url:
          type: string
        title:
          type: string
        description:
          type: string
    EventKey:
      required:
      - calendarId
      - eventId
      type: object
      properties:
        eventId:
          type: string
        calendarId:
          type: integer
          format: int64
    SchedulePolicyType:
      type: string
      enum:
      - AttendeeAvailabilityWarningPolicy
      - BasicEventWarningPolicy
      - BufferEventPolicy
      - EventConflictPolicy
      - FocusTimePolicy
      - HabitPolicy
      - LacksRsvpPolicy
      - LacksVideoConferencePolicy
      - ManagedEventSchedulingPolicy
      - ShieldsUpPolicy
      - SmartMeetingPolicy
      - UNKNOWN
      x-enum-varnames:
      - AttendeeAvailabilityWarningPolicy
      - BasicEventWarningPolicy
      - BufferEventPolicy
      - EventConflictPolicy
      - FocusTimePolicy
      - HabitPolicy
      - LacksRsvpPolicy
      - LacksVideoConferencePolicy
      - ManagedEventSchedulingPolicy
      - ShieldsUpPolicy
      - SmartMeetingPolicy
      - UNKNOWN
    VersionData:
      type: object
      properties:
        syncStatus:
          nullable: true
          allOf:
          - $ref: '#/components/schemas/SyncStatus'
        ceVersion:
          type: integer
          format: int32
          nullable: true
    TaskId:
      required:
      - id
      type: object
      properties:
        id:
          type: integer
          format: int64
        type:
          type: string
    SchedulingLinkId:
      required:
      - id
      type: object
      properties:
        id:
          type: string
        type:
          type: string
    MergeableEventView.MergeType:
      type: string
      enum:
      - ORGANIZER_EVENT
      - ATTENDEE_EVENT
      - SYNC_EVENT
    MergeDetails:
      required:
      - key
      - sourceCalendarId
      - sourceReclaimCalendarId
      - type
      type: object
      properties:
        key:
          type: string
        type:
          $ref: '#/components/schemas/MergeDetails.EventType'
        sourceCalendarId:
          type: string
          nullable: true
        sourceReclaimCalendarId:
          type: integer
          format: int64
          nullable: true
    SipEntryPoint:
      required:
      - uri
      type: object
      properties:
        uri:
          type: string
        label:
          type: string
          nullable: true
        passcode:
          type: string
          nullable: true
        type:
          type: string
    ReclaimRecurrence:
      required:
      - frequency
      type: object
      properties:
        interval:
          type: integer
          description: 'Repeat interval: 1 means every, 2 means every other, 3 means every 3rd. Defaults to 1.'
          format: int32
        frequency:
          description: 'How often the event recurs: DAILY, WEEKLY, MONTHLY, or YEARLY'
          allOf:
          - $ref: '#/components/schemas/RecurrenceFrequency'
        days:
          type: array
          description: Days of the week for WEEKLY frequency (e.g. MONDAY, WEDNESDAY, FRIDAY)
          items:
            $ref: '#/components/schemas/DayOfWeek'
        monthlyDay:
          description: Day of the month for MONTHLY frequency
          nullable: true
          allOf:
          - $ref: '#/components/schemas/MonthlyDay'
        yearlyDay:
          description: Day of the year for YEARLY frequency
          nullable: true
          allOf:
          - $ref: '#/components/schemas/YearlyDay'
        until:
          type: string
          description: When the recurrence ends (yyyy-MM-ddTHH:mm:ssZ format, e.g. 2026-06-30T23:59:59Z). Mutually exclusive with count. Omit for no end date.
          format: date-time
        count:
          type: integer
          description: Total number of occurrences. Mutually exclusive with until. Omit for no end date.
          format: int32
        valid:
          type: boolean
      description: 'Recurrence pattern for a recurring event.

        - frequency is always required

        - For WEEKLY: days is required (which days of the week)

        - For MONTHLY: monthlyDay is required (which day of the month)

        - For YEARLY: yearlyDay is required (which day of the year)

        - interval defaults to 1 (every occurrence)

        - Optionally set count or until to limit occurrences'
    MeetConferenceData:
      required:
      - conferenceUrl
      - entryPoints
      type: object
      properties:
        conferenceUrl:
          type: string
        entryPoints:
          type: array
          items:
            $ref: '#/components/schemas/ConferenceEntryPoint'
        type:
          type: string
    ConferenceData:
      type: object
      discriminator:
        propertyName: type
        mapping:
          MeetConferenceData: '#/components/schemas/MeetConferenceData'
          TeamsConferenceData: '#/components/schemas/TeamsConferenceData'
          ZoomConferenceData: '#/components/schemas/ZoomConferenceData'
          PendingConferenceData: '#/components/schemas/PendingConferenceData'
      oneOf:
      - $ref: '#/components/schemas/MeetConferenceData'
      - $ref: '#/components/schemas/TeamsConferenceData'
      - $ref: '#/components/schemas/ZoomConferenceData'
      - $ref: '#/components/schemas/PendingConferenceData'
    RecurringSeriesView:
      required:
      - event
      - recurrence
      type: object
      properties:
        event:
          $ref: '#/components/schemas/CalendarEventV2'
        recurrence:
          $ref: '#/components/schemas/RecurringSeriesView.RecurrenceMetadataView'
    GoogleEventData:
      required:
      - guestPermissions
      type: object
      properties:
        guestPermissions:
          $ref: '#/components/schemas/GuestPermissions'
        focusTimeProperties:
          nullable: true
          allOf:
          - $ref: '#/components/schemas/FocusTimeProperties'
        type:
          type: string
    AllowedEditTypesView:
      required:
      - reason
      - types
      type: object
      properties:
        types:
          type: array
          items:
            $ref: '#/components/schemas/EventEditType'
        reason:
          $ref: '#/components/schemas/AllowedEditTypeReason'
    Colorized:
      type: object
      properties:
        color:
          $ref: '#/components/schemas/EventColor'
    EventDateRange:
      type: object
      discriminator:
        propertyName: type
        mapping:
          FixedDateTimeRange: '#/components/schemas/FixedDateTimeRange'
          AllDayDateRange: '#/components/schemas/AllDayDateRange'
      oneOf:
      - $ref: '#/components/schemas/FixedDateTimeRange'
      - $ref: '#/components/schemas/AllDayDateRange'
    ManagedEventData:
      type: object
      properties:
        originalDurationMinutes:
          type: integer
          format: int64
          nullable: true
        linkedSuccessorExternalId:
          type: string
          nullable: true
    BufferEventType:
      type: string
      enum:
      - BEFORE
      - AFTER
      - BEFORE_AND_AFTER
    ConferenceRequestType:
      type: string
      enum:
      - MeetConferenceRequest
      - TeamsConferenceRequest
      - ZoomConferenceRequest
      x-enum-varnames:
      - MeetConferenceRequest
      - TeamsConferenceRequest
      - ZoomConferenceRequest
    EventType:
      type: string
      enum:
      - MEETING
      - WORK
      - LOGISTICS
      - PERSONAL
    FocusTimeProperties:
      type: object
      properties:
        autoDeclineMode:
          nullable: true
          allOf:
          - $ref: '#/components/schemas/AutoDeclineMode'
        declineMessage:
          type: string
          nullable: true
        chatStatus:
          nullable: true
          allOf:
          - $ref: '#/components/schemas/FocusTimeChatStatus'
    RecurringAssignmentType:
      type: string
      enum:
      - ONE_ON_ONE
      - DAILY_HABIT
      - TASK
    SmartSeriesId:
      required:
      - lineageId
      - seriesId
      type: object
      properties:
        seriesId:
          type: integer
          format: int64
        lineageId:
          type: integer
          format: int64
        type:
          type: string
    Month:
      type: string
      enum:
      - JANUARY
      - FEBRUARY
      - MARCH
      - APRIL
      - MAY
      - JUNE
      - JULY
      - AUGUST
      - SEPTEMBER
      - OCTOBER
      - NOVEMBER
      - DECEMBER
    RecurrenceFrequency:
      type: string
      enum:
      - DAILY
      - WEEKLY
      - MONTHLY
      - YEARLY
    ReclaimSchedulerData:
      required:
      - assistType
      - manuallyStarted
      - pinned
      type: object
      properties:
        assistType:
          $ref: '#/components/schemas/AssistType'
        pinned:
          type: boolean
        manuallyStarted:
          type: boolean
    EventResourceParticipant:
      required:
      - email
      type: object
      properties:
        displayName:
          type: string
          nullable: true
        email:
          type: string
        capacity:
          type: integer
          format: int32
          nullable: true
        buildingId:
          type: string
          nullable: true
        buildingName:
          type: string
          nullable: true
        buildingDescription:
          type: string
          nullable: true
        floorName:
          type: string
          nullable: true
        category:
          type: string
          nullable: true
        type:
          type: string
    PriorityLevel:
      type: string
      enum:
      - P1
      - P2
      - P3
      - P4
      - PRIORITIZE
      - DEFAULT
      x-deprecated:
      - PRIORITIZE
      - DEFAULT
    EntryStatus:
      type: string
      enum:
      - CONFIRMED
      - TENTATIVE
      - CANCELLED
    EventAttendee:
      required:
      - email
      type: object
      properties:
        email:
          type: string
        self:
          type: boolean
          nullable: true
        displayName:
          type: string
          nullable: true
        responseStatus:
          nullable

# --- truncated at 32 KB (64 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/reclaim-ai/refs/heads/main/openapi/reclaim-ai-events-api-openapi.yml