Reclaim.ai tasks API

The tasks API from Reclaim.ai — 11 operation(s) for tasks.

Operations 15

GET /api/tasks #
POST /api/tasks #
POST /api/tasks/at-time #
DELETE /api/tasks/batch #
PATCH /api/tasks/batch #
PATCH /api/tasks/batch/archive #
PATCH /api/tasks/batch/complete #
POST /api/tasks/interest #
GET /api/tasks/min-index #
PATCH /api/tasks/reindex-by-due #
GET /api/tasks/{id} #
DELETE /api/tasks/{id} #
PUT /api/tasks/{taskId} #
PATCH /api/tasks/{taskId} #
PATCH /api/tasks/{taskId}/reindex #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/reclaim-ai-tasks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

reclaim-ai-tasks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Reclaim account-time-schemes Tasks 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'
servers:
- url: https://api.app.reclaim.ai
  description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: tasks
paths:
  /api/tasks:
    get:
      tags:
      - tasks
      operationId: query_1
      parameters:
      - name: user
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/User'
      - name: status
        in: query
        schema:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/TaskStatus'
      - name: project
        in: query
        schema:
          type:
          - integer
          - 'null'
          format: int64
      - name: priority
        in: query
        schema:
          allOf:
          - $ref: '#/components/schemas/PriorityLevel'
      - name: id
        in: query
        schema:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int64
      - name: instances
        in: query
        deprecated: true
        schema:
          type:
          - boolean
          - 'null'
      responses:
        '200':
          description: query_1 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
    post:
      tags:
      - tasks
      operationId: create_2
      parameters:
      - name: instances
        in: query
        deprecated: true
        schema:
          type:
          - boolean
          - 'null'
      - name: notificationKey
        in: query
        schema:
          type:
          - string
          - 'null'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Task'
        required: true
      responses:
        '200':
          description: create_2 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
  /api/tasks/at-time:
    post:
      tags:
      - tasks
      operationId: createTaskAtTime
      parameters:
      - name: startTime
        in: query
        schema:
          type:
          - string
          - 'null'
          format: date-time
      - name: notificationKey
        in: query
        schema:
          type:
          - string
          - 'null'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Task'
        required: true
      responses:
        '200':
          description: createTaskAtTime 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateTaskAtTimeView'
      security:
      - Authorization: []
  /api/tasks/batch:
    delete:
      tags:
      - tasks
      operationId: deleteBatch
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/TaskPatch'
        required: true
      responses:
        '200':
          description: deleteBatch 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
    patch:
      tags:
      - tasks
      operationId: patchBatch
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/TaskPatch'
        required: true
      responses:
        '200':
          description: patchBatch 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
  /api/tasks/batch/archive:
    patch:
      tags:
      - tasks
      operationId: archiveBatch
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/TaskPatch'
        required: true
      responses:
        '200':
          description: archiveBatch 200 response
          content:
            application/json:
              schema:
                type: object
      security:
      - Authorization: []
  /api/tasks/batch/complete:
    patch:
      tags:
      - tasks
      operationId: completeBatch
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/TaskPatch'
        required: true
      responses:
        '200':
          description: completeBatch 200 response
          content:
            application/json:
              schema:
                type: object
      deprecated: true
      security:
      - Authorization: []
  /api/tasks/interest:
    post:
      tags:
      - tasks
      operationId: interest_1
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                user:
                  $ref: '#/components/schemas/User'
        required: true
      responses:
        '200':
          description: OK response
          content:
            application/json:
              schema: {}
      security:
      - Authorization: []
  /api/tasks/min-index:
    get:
      tags:
      - tasks
      operationId: findMinIndex
      parameters:
      - name: user
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/User'
      responses:
        '200':
          description: findMinIndex 200 response
          content:
            application/json:
              schema:
                type:
                - number
                - 'null'
                format: double
      security:
      - Authorization: []
  /api/tasks/reindex-by-due:
    patch:
      tags:
      - tasks
      operationId: reindexByDue
      responses:
        '200':
          description: reindexByDue 200 response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
  /api/tasks/{id}:
    get:
      tags:
      - tasks
      operationId: getTask
      parameters:
      - name: user
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/User'
      - name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: instances
        in: query
        deprecated: true
        schema:
          type:
          - boolean
          - 'null'
      responses:
        '200':
          description: getTask 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
    delete:
      tags:
      - tasks
      operationId: delete_4
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: notificationKey
        in: query
        schema:
          type:
          - string
          - 'null'
      responses:
        '200':
          description: OK response
          content:
            application/json:
              schema: {}
      security:
      - Authorization: []
  /api/tasks/{taskId}:
    put:
      tags:
      - tasks
      operationId: put_1
      parameters:
      - name: taskId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: instances
        in: query
        deprecated: true
        schema:
          type:
          - boolean
          - 'null'
      - name: notificationKey
        in: query
        schema:
          type:
          - string
          - 'null'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Task'
        required: true
      responses:
        '200':
          description: put_1 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
    patch:
      tags:
      - tasks
      operationId: patch_1
      parameters:
      - name: taskId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: instances
        in: query
        deprecated: true
        schema:
          type:
          - boolean
          - 'null'
      - name: notificationKey
        in: query
        schema:
          type:
          - string
          - 'null'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
        required: true
      responses:
        '200':
          description: patch_1 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
  /api/tasks/{taskId}/reindex:
    patch:
      tags:
      - tasks
      operationId: reindex
      parameters:
      - name: taskId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Reindex'
        required: true
      responses:
        '200':
          description: reindex 200 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Task'
      security:
      - Authorization: []
components:
  schemas:
    EventDisplayPreferences:
      required:
      - attribution
      - busyEmoji
      - description
      - doneEmoji
      - freeEmoji
      - lockEmoji
      - prefix
      - progressEmoji
      - warningEmoji
      type: object
      properties:
        progressEmoji:
          type: boolean
        lockEmoji:
          type: boolean
        freeEmoji:
          type: boolean
        busyEmoji:
          type: boolean
        doneEmoji:
          type: boolean
        warningEmoji:
          type: boolean
        description:
          type: boolean
        attribution:
          type: boolean
        prefix:
          type: boolean
    DetailedEntitlements:
      type: object
      properties:
        unlimitedHabitsEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        unlimitedSyncEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        unlimitedConnectedCalendarsEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        customSyncTransparencyEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        smart11CreationEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        customSlackSyncStatusEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        customConferenceBufferTitleEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        linearEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        jiraEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        todoistEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        asanaEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        clickupEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        trelloEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
        mondayEnabled:
          $ref: '#/components/schemas/EntitlementDetails'
    EntitlementValue_Object_:
      required:
      - nextEdition
      - nextValue
      - value
      type: object
      properties:
        value: {}
        nextValue: {}
        nextEdition:
          allOf:
          - $ref: '#/components/schemas/ReclaimEdition'
    EventResponseStatus:
      type: string
      enum:
      - None
      - Organizer
      - Accepted
      - Declined
      - TentativelyAccepted
      - NotResponded
      x-enum-varnames:
      - None
      - Organizer
      - Accepted
      - Declined
      - TentativelyAccepted
      - NotResponded
    UserAccountLock.AccountLockType:
      type: string
      enum:
      - PIPELINE_MIGRATION
    ReclaimEdition:
      type: string
      enum:
      - NONE
      - TRIAL
      - ASSISTANT
      - PRO
      - TEAM
      - REWARD
      - LEGACY_PRO_TRIAL
      - LEGACY_TEAM_TRIAL
      - LITE
      - STARTER
      - BUSINESS
      - TRIAL_BUSINESS
      - TRIAL_BUSINESS_12W
      - TRIAL_BUSINESS_FOR_LEGACY_PLANS
      - ENTERPRISE
      - TEAM_REWARD
      - LITE_V2
      - LITE_V3
    Task:
      required:
      - adjusted
      - alwaysPrivate
      - atRisk
      - created
      - deferred
      - deleted
      - eventCategory
      - eventSubType
      - id
      - index
      - maxChunkSize
      - minChunkSize
      - notes
      - notesOmitted
      - onDeck
      - priority
      - readOnlyFields
      - sortKey
      - status
      - taskSource
      - timeChunksRemaining
      - timeChunksRequired
      - timeChunksSpent
      - timeSchemeId
      - title
      - updated
      type: object
      properties:
        id:
          type: integer
          format: int64
        title:
          minLength: 1
          type: string
        notes:
          type: string
        notesOmitted:
          type: boolean
        eventCategory:
          $ref: '#/components/schemas/EventCategory'
        eventSubType:
          $ref: '#/components/schemas/EventSubType'
        eventColor:
          allOf:
          - $ref: '#/components/schemas/EventColor'
        status:
          $ref: '#/components/schemas/TaskStatus'
        timeChunksRequired:
          type: integer
          format: int32
        timeChunksSpent:
          type: integer
          format: int32
        timeChunksRemaining:
          type: integer
          format: int32
        minChunkSize:
          type: integer
          format: int32
        maxChunkSize:
          type: integer
          format: int32
        alwaysPrivate:
          type: boolean
        deleted:
          type: boolean
        index:
          type: number
          format: double
        due:
          type:
          - string
          - 'null'
          format: date-time
        created:
          type: string
          format: date-time
        updated:
          type: string
          format: date-time
        finished:
          type:
          - string
          - 'null'
          format: date-time
        snoozeUntil:
          type:
          - string
          - 'null'
          format: date-time
        adjusted:
          type: boolean
        atRisk:
          type: boolean
        timeSchemeId:
          type: string
        priority:
          $ref: '#/components/schemas/PriorityLevel'
        onDeck:
          type: boolean
        deferred:
          type: boolean
        sortKey:
          type: number
          format: double
        taskSource:
          $ref: '#/components/schemas/TaskSource'
        readOnlyFields:
          type: array
          items:
            type: string
        prioritizableType:
          type: string
        type:
          type: string
    CalendarPermissionSettings:
      type: object
      properties:
        enabled:
          type: boolean
    PrioritiesSettings:
      type: object
      properties:
        enabled:
          type: boolean
    OrgMetadata.OrgManager:
      required:
      - displayName
      - managerId
      - ref
      type: object
      properties:
        managerId:
          type: string
        displayName:
          type: string
        ref:
          type: string
    UserMetadata:
      type: object
      properties:
        jobTitle:
          type: string
        companyName:
          type: string
        companySize:
          $ref: '#/components/schemas/UserMetadataCompanySize'
        usecase:
          $ref: '#/components/schemas/UserMetadataUsecase'
        role:
          allOf:
          - $ref: '#/components/schemas/UserProfileRole'
        goals:
          type: array
          items:
            $ref: '#/components/schemas/UserProfileGoal'
        isWorkspace:
          type: boolean
        department:
          allOf:
          - $ref: '#/components/schemas/UserProfileDepartment'
        orgMetadata:
          $ref: '#/components/schemas/OrgMetadata'
    PrioritySource:
      type: string
      enum:
      - MANUAL
      - AI
      - RULES
    ScheduleAssistantSettings:
      type: object
      properties:
        enabled:
          type: boolean
        calendarUIEnabled:
          type: boolean
        scoringSettings:
          $ref: '#/components/schemas/ScheduleAssistantScoringSettings'
        experimentalFeaturesEnabled:
          type: boolean
        mcpDebug:
          type: boolean
        disableBackgroundAutomation:
          type: boolean
        orgRelationshipsEnabled:
          type: boolean
        enableExternalLlm:
          type: boolean
        selfServiceMigrationEnabled:
          type: boolean
        persistedToolApprovalsEnabled:
          type: boolean
    EventAttendee:
      required:
      - email
      type: object
      properties:
        email:
          type: string
        self:
          type:
          - boolean
          - 'null'
        displayName:
          type:
          - string
          - 'null'
        responseStatus:
          allOf:
          - $ref: '#/components/schemas/ResponseStatus'
        comment:
          type:
          - string
          - 'null'
        optional:
          type:
          - boolean
          - 'null'
        additionalGuests:
          type:
          - integer
          - 'null'
          format: int32
        organizer:
          type:
          - boolean
          - 'null'
        resource:
          type:
          - boolean
          - 'null'
    UserAdventures:
      type: object
      properties:
        adventures:
          properties:
            CORE_CONCEPTS:
              $ref: '#/components/schemas/AdventureSetting'
            CONNECT_PRIMARY_CALENDAR:
              $ref: '#/components/schemas/AdventureSetting'
            ADD_AGENT:
              $ref: '#/components/schemas/AdventureSetting'
            ADD_FOCUS_TIME:
              $ref: '#/components/schemas/AdventureSetting'
            ADD_BUFFERS:
              $ref: '#/components/schemas/AdventureSetting'
            ADD_HABIT:
              $ref: '#/components/schemas/AdventureSetting'
            HEAVY_MEETING_LOAD:
              $ref: '#/components/schemas/AdventureSetting'
            CONNECT_CALENDARS:
              $ref: '#/components/schemas/AdventureSetting'
            CALENDAR_SYNC:
              $ref: '#/components/schemas/AdventureSetting'
            SHARED_CALENDARS:
              $ref: '#/components/schemas/AdventureSetting'
            SCHEDULING_LINKS:
              $ref: '#/components/schemas/AdventureSetting'
            SCHEDULING_LINK_SETTINGS:
              $ref: '#/components/schemas/AdventureSetting'
            HOURS:
              $ref: '#/components/schemas/AdventureSetting'
            PROFILE:
              $ref: '#/components/schemas/AdventureSetting'
            PERMISSIONS:
              $ref: '#/components/schemas/AdventureSetting'
            SLACK:
              $ref: '#/components/schemas/AdventureSetting'
            INTEGRATIONS:
              $ref: '#/components/schemas/AdventureSetting'
            TASK_INTEGRATIONS:
              $ref: '#/components/schemas/AdventureSetting'
            CHAT:
              $ref: '#/components/schemas/AdventureSetting'
            LOG_WORK:
              $ref: '#/components/schemas/AdventureSetting'
            PREVIEW_MODE:
              $ref: '#/components/schemas/AdventureSetting'
    AdventureSetting:
      required:
      - complete
      type: object
      properties:
        complete:
          type: boolean
    SmartOneOnOneSettings:
      type: object
      properties:
        enabled:
          type: boolean
    GoogleCalendarEventMetadata:
      required:
      - guestsCanInviteOthers
      - guestsCanModify
      - guestsCanSeeOtherGuests
      type: object
      properties:
        guestsCanModify:
          type: boolean
        guestsCanInviteOthers:
          type: boolean
        guestsCanSeeOtherGuests:
          type: boolean
    SlackSettings.StatusSync:
      type: string
      enum:
      - 'OFF'
      - DEFAULT
      - BUSY
      - CUSTOM
      - TEAM
    SlackStatusSetting:
      type: object
      properties:
        emoji:
          type: string
        template:
          type: string
        dnd:
          type: boolean
        enabled:
          type: boolean
    TaskAutoWorkflowSettings:
      type: object
      properties:
        category:
          $ref: '#/components/schemas/TaskAutoWorkflowType'
        durationToWaitInDays:
          type: integer
          format: int32
    UserAccountLock:
      required:
      - accountLockType
      - lockMessage
      type: object
      properties:
        accountLockType:
          $ref: '#/components/schemas/UserAccountLock.AccountLockType'
        lockMessage:
          type: string
    ObservedUser:
      type: object
      allOf:
      - $ref: '#/components/schemas/LogContext'
      - properties:
          id:
            type: string
          trackingCode:
            type: string
          edition:
            $ref: '#/components/schemas/ReclaimEdition'
    TimezoneSettings:
      required:
      - timeZonePreference
      type: object
      properties:
        zoneId:
          type:
          - string
          - 'null'
        timeZonePreference:
          $ref: '#/components/schemas/TimezonePreference'
        timezonePreference:
          $ref: '#/components/schemas/TimezonePreference'
    ConferenceBufferType:
      type: string
      enum:
      - ALL_MEETINGS
      - CONFERENCE_MEETINGS
    TaskCooldown:
      type: string
      enum:
      - NONE
      - LEGACY
      - HALF_HOUR
      - ONE_HOUR
      - TWO_HOURS
      - FOUR_HOURS
      - ONCE_A_DAY
    UserDateTimeFormatter:
      type: object
      properties:
        locale:
          type: string
    TaskSourceType:
      type: string
      enum:
      - TODOIST
      - TRELLO
      - GTASKS
      - LINEAR
      - ASANA
      - CLICK_UP
      - JIRA
      - RECLAIM_APP
      - SLACK
      - RECLAIM_ASSIST
      - RECLAIM_ASSISTANT
    ColorsSettings:
      type: object
      properties:
        enabled:
          type: boolean
        categoriesEnabled:
          type: boolean
        lastModified:
          type: string
          format: date-time
        priorities:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/EventColor'
        categories:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/EventColor'
    EventColor:
      type: string
      enum:
      - NONE
      - LAVENDER
      - SAGE
      - GRAPE
      - FLAMINGO
      - BANANA
      - TANGERINE
      - PEACOCK
      - GRAPHITE
      - BLUEBERRY
      - BASIL
      - TOMATO
    TaskSource:
      type: object
      properties:
        type:
          allOf:
          - $ref: '#/components/schemas/TaskSourceType'
        id:
          type:
          - string
          - 'null'
        url:
          type:
          - string
          - 'null'
    Entitlements:
      type: object
      properties:
        unlimitedHabitsEnabled:
          type: boolean
        unlimitedConnectedCalendarsEnabled:
          type: boolean
        unlimitedSyncEnabled:
          type: boolean
        customSyncTransparencyEnabled:
          type: boolean
        smart11CreationEnabled:
          type: boolean
        customSlackSyncStatusEnabled:
          type: boolean
        customConferenceBufferTitleEnabled:
          type: boolean
        schedulingLinkSurveyEnabled:
          type: boolean
        maxDaysAheadForSchedulingLinks:
          type: integer
          format: int32
        linearEnabled:
          type: boolean
        jiraEnabled:
          type: boolean
        todoistEnabled:
          type: boolean
        asanaEnabled:
          type: boolean
        clickupEnabled:
          type: boolean
        trelloEnabled:
          type: boolean
        mondayEnabled:
          type: boolean
        dropboxEnabled:
          type: boolean
        SSOEnabled:
          type: boolean
    DefaultRsvpAvailability:
      type: object
      properties:
        treatNeedsActionRsvpAs:
          $ref: '#/components/schemas/AvailabilityType'
    AssistDetails:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/AssistType'
        customHabit:
          type: boolean
        smartSeries:
          type: boolean
        focus:
          type: boolean
        habitOrTask:
          type: boolean
        task:
          type: boolean
        conferenceBuffer:
          type: boolean
        travelBuffer:
          type: boolean
        status:
          $ref: '#/components/schemas/AssistStatus'
        travelNewEventId:
          type:
          - string
          - 'null'
          description: The source event id for a travel assist event.
        conferenceEventId:
          type:
          - string
          - 'null'
          description: The source event id for a conference (decompression time) event.
        lastControlledUpdate:
          type: string
          format: date-time
        lastControlledHash:
          type: integer
          format: int32
        defended:
          type: boolean
        pinned:
          type: boolean
        lockState:
          allOf:
          - $ref: '#/components/schemas/LockState'
        dailyHabitId:
          type:
          - integer
          - 'null'
          format: int64
        seriesLineageId:
          type:
          - integer
          - 'null'
          format: int64
        seriesId:
          type:
          - integer
          - 'null'
          format: int64
        taskId:
          type:
          - integer
          - 'null'
          format: int64
        taskIndex:
          type:
          - integer
          - 'null'
          format: int32
        policyOverride:
          allOf:
          - $ref: '#/components/schemas/AssistPolicyOverride'
        lastManualAdjustment:
          type: string
          format: date-time
        recurringAssignmentType:
          $ref: '#/components/schemas/RecurringAssignmentType'
        eventType:
          $ref: '#/components/schemas/ReclaimEventType'
        manuallyStarted:
          type: boolean
        focusId:
          type:
          - integer
          - 'null'
          format: int64
        assistReferenceValid:
          type: boolean
      description: This entity maps to the assist_events table.
    EntitlementDetails:
      required:
      - minimumEdition
      - name
      type: object
      properties:
        minimumEdition:
          type: string
        name:
          type: string
        enabledForUser:
          type: boolean
    DropboxSettings:
      type: object
      properties:
        enabled:
          type: boolean
    SlackSettings:
      type: object
      properties:
        enabled:
          type: boolean
        newSlackExperienceEnabled:
          type: boolean
        customSlackStatusWaterMark:
          type:
          - string
          - 'null'
        previousStatusWaterMarks:
          type:
          - array
          - 'null'
          items:
            type: string
        oooMessageTemplate:
          type:
          - string
          - 'null'
        personalSyncNotifyNew:
          type: boolean
        personalSyncNotifyUpdated:
          type: boolean
        personalSyncNotifyDeleted:
          type: boolean
        personalSyncNotificationsIncludingSelf:
          type: boolean
        habitNotifyUpcoming:
          type: boolean
        taskNotifyUpcoming:
          type: boolean
        travelNotify:
          type: boolean
        outsideHoursMigrated:
          type: boolean
        statusSync:
          $ref: '#/components/schemas/SlackSettings.StatusSync'
        statusEnabled:
          type: boolean
        privateStatus:
          $ref: '#/components/schemas/SlackStatusSetting'
        statuses:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/SlackStatusSetting'
        outSideHours:
          $ref: '#/components/schemas/SlackOutsideHoursSetting'
        stopNotifyingDisappearingAfterByType:
          type: object
          additionalProperties:
            type: string
            format: date
    CreateTaskAtTimeView:
      required:
      - events
      - task
      type: object
      properties:
        task:
          $ref: '#/components/schemas/Task'
        events:
          type: array
          items:
            $ref: '#/components/schemas/Event'
    BillingSettings:
      type: object
      properties:
        enabled:
          type: boolean
    EventType:
      type: string
      enum:
      - MEETING
      - WORK
      - LOGISTICS
      - PERSONAL
    WeeklyReport:
      type: object
      properties:
        enabled:
          type: boolean
        sendReport:
          type: boolean
    WebhookSettings:
      type: object
      properties:
        enabled:
          type: boolean
        all:
          $ref: '#/components/schemas/WebhookSettings'
    AssistNotificationSettings:
      required:
      - detectedDigest
      - instanceChanges
      - instanceWindowInDays
      - needsAttentionDigest
      type: object
      properties:
        instanceChanges:
          type: boolean
        instanceWindowInDays:
          type: integer
          format: int32
        needsAttentionDigest:
          type: boolean
        detectedDigest:
          type: boolean
    UserProvisioningDetails:
      required:
      - hasTeamProvisionedMetadata
      type: object
      properties:
        hasTeamProvisionedMetadata:
          type: boolean
    EventStatus:
      type: string
      enum:
      - PUBLISHED
      - CANCELLED
    EventKey:
      required:
      - calendarId
      - eventId
      type: object
      properties:
        eventId:
          type: string
        calendarId:
          type: integer
          format: int64
    Settings:
      type: object
      properties:
        autoAddHangouts:
          type: boolean
        defaultEventLength:
          type: integer
          format: int32
        weekStart:
          type: integer
          format: int32
        format24HourTime:
          type: boolean
        locale:
          type: string
        showDeclinedEvents:
          type: boolean
        timezone:
          type: string
        dateFieldOrder:
          $ref: '#/components/schemas/DateFieldOrder'
    AssistStatus:
      type: string
      enum:
      - CONTROLLED
      - RELEASED
      - ARCHIVED
    TaskDefaults:
      type: object
      properties:
        timeChunksRequired:
          type: integer
          format: int32
        commsTimeChunksRequired:
          type: integer
          format: int32
        delayedStartInMinutes:
          type: integer
          format: int32
        dueInDays:
          type:
          - integer
          - 'null'
          format: int32
        category:
          deprecated: true
          allOf:
          - $ref: '#/components/schemas/EventCategory'
        alwaysPrivate:
          type: boolean
        minChunkSize:
          type: integer
          format: int32
        maxChunkSize:
          type: integer
          format: int32
        timeSchemeId:
          type:
          - string
          - 'null'
        priority:
          type: string
        onDeck:
          type: boolean
        splitUp:
          type: boolean
        googleTaskIntegrationNoDueDateWhenMissing:
          type: boolean
    ReclaimEventType:
      type: stri

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