openapi: 3.0.1 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' 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 nullable: true items: $ref: '#/components/schemas/TaskStatus' - name: project in: query schema: type: integer format: int64 nullable: true - name: priority in: query schema: nullable: true allOf: - $ref: '#/components/schemas/PriorityLevel' - name: id in: query schema: type: array nullable: true items: type: integer format: int64 - name: instances in: query deprecated: true schema: type: boolean nullable: true 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 nullable: true - name: notificationKey in: query schema: type: string nullable: true 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 format: date-time nullable: true - name: notificationKey in: query schema: type: string nullable: true 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: nullable: true 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 format: double nullable: true 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 nullable: true 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 nullable: true responses: '200': description: OK response content: application/json: schema: nullable: true 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 nullable: true - name: notificationKey in: query schema: type: string nullable: true 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 nullable: true - name: notificationKey in: query schema: type: string nullable: true 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: 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 DefaultRsvpAvailability: type: object properties: treatNeedsActionRsvpAs: $ref: '#/components/schemas/AvailabilityType' SchedulingWindowWeeks: type: string enum: - ONE - TWO - THREE - FOUR - FIVE - SIX - SEVEN - EIGHT - NINE - TEN - ELEVEN - TWELVE EventKey: required: - calendarId - eventId type: object properties: eventId: type: string calendarId: type: integer format: int64 WebhookSettings: type: object properties: enabled: type: boolean all: $ref: '#/components/schemas/WebhookSettings' 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 UserInterests: type: object properties: tasks: type: boolean priorities: type: boolean office365: type: boolean calendar: type: boolean asana: type: boolean trello: type: boolean todoist: type: boolean jira: type: boolean linear: type: boolean clickup: type: boolean monday: type: boolean MSTeams: type: boolean AvailabilitySettings: type: object properties: redisCacheEnabled: type: boolean UserProfileDepartment: type: string enum: - PRODUCT - ENGINEERING - SUPPORT - MARKETING - SALES - DESIGN - HR - OPERATIONS - ACCOUNTING_AND_FINANCE - FOUNDER - EXECUTIVE_ASSISTANT - IT_SECURITY - OTHER x-deprecated: - OTHER TaskSourceType: type: string enum: - TODOIST - TRELLO - GTASKS - LINEAR - ASANA - CLICK_UP - JIRA - RECLAIM_APP - SLACK - RECLAIM_ASSIST - RECLAIM_ASSISTANT Colorized: type: object properties: color: $ref: '#/components/schemas/EventColor' TaskAutoWorkflowSettings: type: object properties: category: $ref: '#/components/schemas/TaskAutoWorkflowType' durationToWaitInDays: type: integer format: int32 EventType: type: string enum: - MEETING - WORK - LOGISTICS - PERSONAL CreateTaskAtTimeView: required: - events - task type: object properties: task: $ref: '#/components/schemas/Task' events: type: array items: $ref: '#/components/schemas/Event' RecurringAssignmentType: type: string enum: - ONE_ON_ONE - DAILY_HABIT - TASK AsanaSettings: type: object properties: enabled: type: boolean TimezonePreference: type: string enum: - USE_PRIMARY_CALENDAR_TZ - USE_RECLAIM_TZ UserProvisioningDetails: required: - hasTeamProvisionedMetadata type: object properties: hasTeamProvisionedMetadata: type: boolean PriorityLevel: type: string enum: - P1 - P2 - P3 - P4 - PRIORITIZE - DEFAULT x-deprecated: - PRIORITIZE - DEFAULT EventAttendee: required: - email type: object properties: email: type: string self: type: boolean nullable: true displayName: type: string nullable: true responseStatus: nullable: true allOf: - $ref: '#/components/schemas/ResponseStatus' comment: type: string nullable: true optional: type: boolean nullable: true additionalGuests: type: integer format: int32 nullable: true organizer: type: boolean nullable: true resource: type: boolean nullable: true UserMetadataUsecase: type: string enum: - EDUCATION - WORK - NON_PROFIT - TEAM - SOLO_WORK - PERSONAL x-deprecated: - EDUCATION - NON_PROFIT ExperimentalSettings: type: object properties: treatOptionalSmartMeetingAttendeesAsFree: type: boolean lookAheadForSmartMeetingIdealDayOnWeeklyMeetings: type: boolean PrioritiesSettings: type: object properties: enabled: type: boolean EventSubType: type: string enum: - ONE_ON_ONE - STAFF_MEETING - OP_REVIEW - EXTERNAL - IDEATION - FOCUS - PRODUCTIVITY - TRAVEL - FLIGHT - TRAIN - RECLAIM - VACATION - HEALTH - ERRAND - OTHER_PERSONAL - UNKNOWN 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 TaskStatus: type: string enum: - NEW - SCHEDULED - IN_PROGRESS - COMPLETE - CANCELLED - ARCHIVED SchedulingWindowWeeksOverride: type: string enum: - ONE - TWO - THREE - FOUR - FIVE - SIX - SEVEN - EIGHT - NINE - TEN - ELEVEN - TWELVE UserAccountLock.AccountLockType: type: string enum: - PIPELINE_MIGRATION SignupMethod: type: string enum: - SCIM - ADMIN_API - SLACK - SELF UserMetadata: type: object properties: jobTitle: type: string companyName: type: string companySize: $ref: '#/components/schemas/UserMetadataCompanySize' usecase: $ref: '#/components/schemas/UserMetadataUsecase' role: nullable: true allOf: - $ref: '#/components/schemas/UserProfileRole' goals: type: array items: $ref: '#/components/schemas/UserProfileGoal' isWorkspace: type: boolean department: nullable: true allOf: - $ref: '#/components/schemas/UserProfileDepartment' orgMetadata: $ref: '#/components/schemas/OrgMetadata' UserMetadataCompanySize: type: string enum: - SUB_10 - SUB_50 - SUB_100 - SUB_500 - SUB_1000 - THOUSAND_PLUS EventResponseStatus: type: string enum: - None - Organizer - Accepted - Declined - TentativelyAccepted - NotResponded x-enum-varnames: - None - Organizer - Accepted - Declined - TentativelyAccepted - NotResponded CalendarEntrySettings: type: object properties: pipelineEnabled: type: boolean pipelineWatchEnabled: type: boolean autoMigrate: type: boolean shouldMigrate: type: boolean selfServiceMigrate: type: boolean dailyAudit: type: boolean microsoftPipelineBatching: type: boolean scoredTopContacts: type: boolean googleGhCutoff: type: boolean usePipelineCleanCalendar: type: boolean dedicatedUpsertEnabled: 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' AssistSettings: type: object properties: travel: type: boolean otherTravelDuration: type: integer format: int32 conferenceBuffer: type: boolean conferenceBufferDuration: type: integer format: int32 assignmentPaddingDuration: type: integer format: int32 conferenceBufferPrivate: type: boolean conferenceBufferType: $ref: '#/components/schemas/ConferenceBufferType' customConferenceBufferTitle: type: string focus: type: boolean allOneOnOnesBusy: type: boolean autoLockForMeetings: $ref: '#/components/schemas/AutoLock' autoLockForNonMeetings: $ref: '#/components/schemas/AutoLock' sendMeetingNotifications: type: boolean useFreeBusyEmojis: type: boolean useLockEmoji: type: boolean includeDescription: type: boolean includeAttribution: type: boolean smartSeries: type: boolean smartMeetingRecurrenceType: $ref: '#/components/schemas/SmartSeriesRecurrenceType' smartHabitRecurrenceType: $ref: '#/components/schemas/SmartSeriesRecurrenceType' showClassicHabits: type: boolean allowSmartSeriesOptIn: type: boolean smartSeriesMigrateComplete: type: boolean neverSeenClassicHabits: type: boolean notificationSettings: $ref: '#/components/schemas/AssistNotificationSettings' assistDays: type: integer format: int32 bypassed: type: boolean dayZero: type: string format: date schedulerDisabled: type: boolean schedulerSuppressedUntil: type: string format: date-time schedulerSuppressed: type: boolean rescheduleUnstarted: type: boolean rescheduleUnstartedOkToSchedule: type: boolean dampSmartMeetings: type: boolean scheduleSmartMeetingsAtMostDaily: type: boolean scheduleSmartMeetingsOnce: type: boolean manualAssistRunsEnabled: type: boolean schedulerWindowWeeks: nullable: true allOf: - $ref: '#/components/schemas/SchedulingWindowWeeksOverride' extendedSmartMeetingCooldown: type: boolean includeOrganizerInSmartSeries: type: boolean deprecated: true debugScheduler: type: boolean smartHabitGen2ToGen3MigrationDate: type: string format: date-time smartMeetingGen2ToGen3MigrationDate: type: string format: date-time gen1HabitsAndMeetingsToGen3AutoMigrate: type: boolean smartHabitsToGen3AutoMigrate: type: boolean smartMeetingsToGen3AutoMigrate: type: boolean DayOfWeek: type: string enum: - MONDAY - TUESDAY - WEDNESDAY - THURSDAY - FRIDAY - SATURDAY - SUNDAY AdventureSetting: required: - complete type: object properties: complete: type: boolean AssistNotificationSettings: required: - detectedDigest - instanceChanges - instanceWindowInDays - needsAttentionDigest type: object properties: instanceChanges: type: boolean instanceWindowInDays: type: integer format: int32 needsAttentionDigest: type: boolean detectedDigest: type: boolean User: required: - edition - editionUsage - schedulerWindowWeeks - sku type: object properties: id: type: string email: type: string principal: type: string provider: type: string baseProvider: type: string name: type: string firstName: type: string entitlements: $ref: '#/components/schemas/Entitlements' detailedEntitlements: $ref: '#/components/schemas/DetailedEntitlements' editionEntitlements: properties: MAX_TEAM_SIZE: $ref: '#/components/schemas/EntitlementValue_Object_' SCHEDULER_WEEKS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_TASKS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_CALENDARS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_SYNCS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_HABITS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_TASKS_WEEK: $ref: '#/components/schemas/EntitlementValue_Object_' TRAVEL_TIME: $ref: '#/components/schemas/EntitlementValue_Object_' DECOMPRESSION_TIME: $ref: '#/components/schemas/EntitlementValue_Object_' CUSTOM_BLOCKING: $ref: '#/components/schemas/EntitlementValue_Object_' CUSTOM_BLOCKING_DECOMPRESSION: $ref: '#/components/schemas/EntitlementValue_Object_' CUSTOM_BLOCKING_HABITS: $ref: '#/components/schemas/EntitlementValue_Object_' CUSTOM_BLOCKING_CALENDAR_SYNC: $ref: '#/components/schemas/EntitlementValue_Object_' CUSTOM_SLACK_STATUS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_SCHEDULING_LINKS: $ref: '#/components/schemas/EntitlementValue_Object_' DERIVATIVE_SCHEDULING_LINKS: $ref: '#/components/schemas/EntitlementValue_Object_' SCHEDULING_LINK_SURVEY: $ref: '#/components/schemas/EntitlementValue_Object_' SCHEDULING_LINK_REDIRECT: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_SCHEDULING_LINK_MEETINGS_QUARTER: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_1_ON_1_ORGANIZE: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_1_ON_1_ATTEND: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_CUSTOM_TIME_SCHEMES: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATIONS: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_GOOGLE_TASKS: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_GOOGLE_ADD_ON: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_SLACK: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_RAYCAST: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_ZOOM: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_TODOIST: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_LINEAR: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_JIRA: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_CLICKUP: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_ASANA: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_OFFICE_365: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_MONDAY: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_TRELLO: $ref: '#/components/schemas/EntitlementValue_Object_' INTEGRATION_DROPBOX: $ref: '#/components/schemas/EntitlementValue_Object_' SUPPORT: $ref: '#/components/schemas/EntitlementValue_Object_' SSO: $ref: '#/components/schemas/EntitlementValue_Object_' TEAM_ANALYTICS: $ref: '#/components/schemas/EntitlementValue_Object_' EVENT_PREFERENCES: $ref: '#/components/schemas/EntitlementValue_Object_' DELEGATED_ACCESS: $ref: '#/components/schemas/EntitlementValue_Object_' SCHEDULING_LINK_ROUND_ROBIN: $ref: '#/components/schemas/EntitlementValue_Object_' SCHEDULING_LINK_BRANDING: $ref: '#/components/schemas/EntitlementValue_Object_' SMART_MEETING_ATTENDEE_USERS: $ref: '#/components/schemas/EntitlementValue_Object_' WEBHOOKS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_STATS_WINDOW: $ref: '#/components/schemas/EntitlementValue_Object_' FOCUS_TIME: $ref: '#/components/schemas/EntitlementValue_Object_' OOO_CALENDAR: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_AGENTS: $ref: '#/components/schemas/EntitlementValue_Object_' MAX_DAILY_LLM_COST_MICROS: $ref: '#/components/schemas/EntitlementValue_Object_' PROACTIVE_LLM: $ref: '#/components/schemas/EntitlementValue_Object_' MCP: $ref: '#/components/schemas/EntitlementValue_Object_' lastName: type: string avatarUrl: type: string admin: type: boolean slackEnabled: type: boolean impersonated: type: boolean timestampOffsetMs: type: integer format: int64 features: $ref: '#/components/schemas/UserSettings' settings: $ref: '#/components/schemas/Settings' metadata: $ref: '#/components/schemas/UserMetadata' created: type: string format: date-time deleted: type: string format: date-time onboarded: type: boolean trackingCode: type: string locale: type: string likelyPersonal: type: boolean apiKey: type: string sku: deprecated: true allOf: - $ref: '#/components/schemas/ReclaimEdition' edition: $ref: '#/components/schemas/ReclaimEdition' editionAfterTrial: nullable: true allOf: - $ref: '#/components/schemas/ReclaimEdition' editionUsage: $ref: '#/components/schemas/ReclaimEdition' preDowngradeEditionUsage: $ref: '#/components/schemas/ReclaimEdition' overage: type: boolean logContextUser: nullable: true allOf: - $ref: '#/components/schemas/ObservedUser' refCode: type: string hostedDomain: type: string nullable: true primaryCalendar: nullable: true allOf: - $ref: '#/components/schemas/ThinCalendar' primaryCalendarId: type: string timezone: type: string startOfWeek: $ref: '#/components/schemas/DayOfWeek' usingDelegatedAccess: type: boolean firstLogin: type: string format: date-time nullable: true signupMethod: nullable: true allOf: - $ref: '#/components/schemas/SignupMethod' providerCreated: type: string format: date-time nullable: true schedulerWindowWeeks: $ref: '#/components/schemas/SchedulingWindowWeeks' userDateTimeFormatter: $ref: '#/components/schemas/UserDateTimeFormatter' userProvisioningDetails: $ref: '#/components/schemas/UserProvisioningDetails' TaskAutoWorkflowType: type: string enum: - NOTHING - REOPEN - CLOSE EventStatus: type: string enum: - PUBLISHED - CANCELLED MicrosoftSettings: type: object properties: smartSeriesDetectionEnabled: type: boolean useFullyExpandedSeriesMasterForInterop: type: boolean resolveReclaimForNonMemberUsingCalendarView: type: boolean GoogleAddOnSettings: type: object properties: enabled: type: boolean UserProfileGoal: type: string enum: - HEADS_DOWN_TIME - MEETINGS - WORK_LIFE_BALANCE - MULTIPLE_CALENDARS TimezoneSettings: required: - timeZonePreference type: object properties: zoneId: type: string nullable: true timeZonePreference: $ref: '#/components/schemas/TimezonePreference' timezonePreference: $ref: '#/components/schemas/TimezonePreference' EntitlementDetails: required: - minimumEdition - name type: object properties: minimumEdition: type: string name: type: string enabledForUser: type: boolean ConferenceBufferType: type: string enum: - ALL_MEETINGS - CONFERENCE_MEETINGS UserDateTimeFormatter: type: object properties: locale: type: string AvailabilityType: type: string enum: - BUSY - FREE AssistType: type: string enum: - TASK - CUSTOM_DAILY - CATCHUP_AM - CATCHUP_PM - LUNCH - FOCUS - TRAVEL_PRE - TRAVEL_POST - CONBUF - SMART_HABIT - SMART_MEETING - RECLAIM_FOCUS SyncFeatureSettings: type: object properties: enabled: type: boolean hasVipPrivileges: type: boolean daysBackwardOverride: type: integer format: int32 GoogleCalendarEventMetadata: required: - guestsCanInviteOthers - guestsCanModify - guestsCanSeeOtherGuests type: object properties: guestsCanModify: type: boolean guestsCanInviteOthers: type: boolean guestsCanSeeOtherGuests: type: boolean SlackStatusSetting: type: object properties: emoji: type: string template: type: string dnd: type: boolean enabled: type: boolean UserPostOnboard: type: object properties: welcomed: $ref: '#/components/schemas/UserPostOnboardState' focus: $ref: '#/components/schemas/UserPostOnboardState' hours: $ref: '#/components/schemas/UserPostOnboardState' habits: $ref: '#/components/schemas/UserPostOnboardState' firstTask: $ref: '#/components/schemas/UserPostOnboardState' integration: $ref: '#/components/schemas/UserPostOnboardState' smartMeetings: $ref: '#/components/schemas/UserPostOnboardState' schedulingLinks: $ref: '#/components/schemas/UserPostOnboardState' slackStatusSync: $ref: '#/components/schemas/UserPostOnboardState' travelTime: $ref: '#/components/schemas/UserPostOnboardState' zoom: $ref: '#/components/schemas/UserPostOnboardState' connectCalendars: $ref: '#/components/schemas/UserPostOnboardState' colors: $ref: '#/components/schemas/UserPostOnboardState' reclaimFree: $ref: '#/components/schemas/UserPostOnboardState' guidedTours: $ref: '#/components/schemas/UserPostOnboardState' AnalyticsSettings: type: object properties: teamAnalyticsV4ViewEnabled: type: boolean teamAnalyticsV4FiltersEnabled: type: boolean AutoLock: type: string enum: - 'OFF' - SAME_DAY - SAME_WEEK - TOMORROW - ROLLING_3_DAYS QuestSettings: type: object properties: enabled: type: boolean SchedulingLinkSettings: type: object properties: enabled: type: boolean note: type: string remindersMigrated: type: boolean messageTemplates: type: object additionalProperties: type: string nameVisibility: nullable: true allOf: - $ref: '#/components/schemas/SchedulingLinkNameVisibility' DateFieldOrder: type: string enum: - MDY - DMY - YMD Reindex: required: - reindexDirection - relativeTaskId type: object properties: relativeTaskId: type: integer format: int64 reindexDirection: $ref: '#/components/schemas/ReindexDirection' TaskDefaults: type: object properties: timeChunksRequired: type: integer format: int32 commsTimeChunksRequired: type: integer format: int32 delayedStartInMinutes: type: integer format: int32 dueInDays: type: integer format: int32 nullable: true category: deprecated: true allOf: - $ref: '#/components/schemas/EventCategory' alwaysPrivate: type: boolean minChunkSize: type: integer format: int32 maxChunkSize: type: integer format: int32 timeSchemeId: type: string nullable: true priority: type: string onDeck: type: boolean splitUp: type: boolean googleTaskIntegrationNoDueDateWhenMissing: type: boolean UserOnboard: type: object properties: habits: type: boolean tasks: type: boolean googleTasks: type: boolean planItemPrioritized: type: boolean smartOneOnOnes: type: boolean bufferTime: type: boolean tasksReindex: type: boolean googleAddOn: type: boolean v16Scheduler: type: boolean helpMenus: type: boolean smartMeetingsJustNewQuest: type: boolean smartHabitsJustNewQuest: type: boolean smartMeetingsNavItem: type: boolean smartMeetingsPricingWarning: type: boolean showDowngradeAcknowledgement: type: boolean showUpgradeRestoreModal: type: boolean setupGuideV2: type: boolean accountAndPersonalSettings: type: boolean webhooks: type: boolean focus: type: boolean eventCreationInPlanner: type: boolean assistantIntegrations: type: boolean assistMigrationWelcomePending: type: boolean assistantPreviewChanges: type: boolean schedulingLinks: type: boolean 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 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' OrgMetadata.OrgManager: required: - displayName - managerId - ref type: object properties: managerId: type: string displayName: type: string ref: type: string 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: nullable: true 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 format: date-time nullable: true created: type: string format: date-time updated: type: string format: date-time finished: type: string format: date-time nullable: true snoozeUntil: type: string format: date-time nullable: true 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 Event: required: - allocatedTimeChunks - assist - calendarId - categoryOverride - description - etag - eventEnd - eventId - eventStart - key - location - meetingType - organizer - priority - recurrence - recurrenceMax - recurringEventId - requiresTravel - rsvpStatus - sourceDetails - status - subType - timeChunks - title - titleSeenByOthers - type - updated type: object properties: googleMetadata: description: Returns Google Calendar-specific metadata that doesn't fit into a common event model, but that services and UI might be interested in introspecting. If the event isn't a Google Calendar event, this method will return an empty value. nullable: true allOf: - $ref: '#/components/schemas/GoogleCalendarEventMetadata' schedulingLinkId: type: string nullable: true schedulingLinkMeetingId: type: string nullable: true underAssistControl: type: boolean assist: $ref: '#/components/schemas/AssistDetails' reclaimEventType: $ref: '#/components/schemas/ReclaimEventType' personalSync: type: boolean reclaimManaged: type: boolean description: Reclaim likely created and manages this event but important to note that this event might not be organized by this user so very important to check also [isReclaimManagedAndSelfOrganized](#isReclaimManagedAndSelfOrganized) if the calling class would do something different for a Reclaim managed event if the person attached to this event is an attendee, rather than the organizer. reclaimManagedAndSelfOrganized: type: boolean description: Important to note that there are Reclaim "managed" events like smart meetings and scheduling link events where the user associated with the event is *not* the organizer, and as a result, we may need to do things like color coding or scoring. eventId: type: string calendarId: type: integer format: int64 key: $ref: '#/components/schemas/EventKey' priority: $ref: '#/components/schemas/PriorityLevel' prioritySource: nullable: true allOf: - $ref: '#/components/schemas/PrioritySource' title: type: string titleSeenByOthers: type: string location: type: string onlineMeetingUrlRaw: type: string onlineMeetingUrl: type: string description: type: string descriptionOmitted: type: boolean titleTruncated: type: boolean sourceDetails: $ref: '#/components/schemas/EventSourceDetails' mergeDetails: $ref: '#/components/schemas/MergeDetails' status: $ref: '#/components/schemas/EventStatus' published: type: boolean type: $ref: '#/components/schemas/EventType' subType: $ref: '#/components/schemas/EventSubType' meetingType: $ref: '#/components/schemas/MeetingType' categoryOverride: $ref: '#/components/schemas/EventCategory' eventStart: type: string format: date-time eventEnd: type: string format: date-time timeChunks: type: integer format: int32 allocatedTimeChunks: type: integer format: int32 recurringEventId: type: string updated: type: string format: date-time recurringException: type: boolean recurrence: type: string recurrenceMax: type: string format: date-time recurring: type: boolean recurringInstance: type: boolean private: type: boolean public: type: boolean color: $ref: '#/components/schemas/EventColor' organizer: type: string numAttendees: type: integer format: int32 attendees: type: array items: $ref: '#/components/schemas/EventAttendee' free: type: boolean category: $ref: '#/components/schemas/EventCategory' rsvpStatus: $ref: '#/components/schemas/EventResponseStatus' requiresTravel: type: boolean conferenceCall: type: boolean etag: type: string nullable: true smartSeriesId: type: integer format: int64 nullable: true sourceEventType: $ref: '#/components/schemas/PlatformEventType' version: type: string manuallyStarted: type: boolean inheritedExternalId: type: string description: 'Retrieves the inherited external ID for the event. The inherited external ID is used in scenarios where a non-pipeline user is invited to an event created by Reclaim on a pipeline user''s Microsoft calendar. In such cases, the inherited external ID represents the "external-id" of the organizer''s event, which is crucial for supporting event ID parsing. This mechanism ensures compatibility with Reclaim''s existing logic for detecting and parsing event information, even when the event ID cannot be directly relied upon (e.g., in Microsoft calendars).' nullable: true UserAccountLock: required: - accountLockType - lockMessage type: object properties: accountLockType: $ref: '#/components/schemas/UserAccountLock.AccountLockType' lockMessage: type: string SmartSeriesRecurrenceType: type: string enum: - SINGLE_INSTANCES - RECURRING_SERIES ReindexDirection: type: string enum: - before - after x-enum-varnames: - before - after CalendarPermissionSettings: type: object properties: enabled: type: boolean TaskSettings: required: - defaults type: object properties: enabled: type: boolean googleTasks: type: boolean defaults: $ref: '#/components/schemas/TaskDefaults' autoWorkflowSettings: $ref: '#/components/schemas/TaskAutoWorkflowSettings' scheduleWorkQueueOnly: type: boolean cooldown: $ref: '#/components/schemas/TaskCooldown' 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 description: The source event id for a travel assist event. nullable: true conferenceEventId: type: string description: The source event id for a conference (decompression time) event. nullable: true lastControlledUpdate: type: string format: date-time lastControlledHash: type: integer format: int32 defended: type: boolean pinned: type: boolean lockState: nullable: true allOf: - $ref: '#/components/schemas/LockState' dailyHabitId: type: integer format: int64 nullable: true seriesLineageId: type: integer format: int64 nullable: true seriesId: type: integer format: int64 nullable: true taskId: type: integer format: int64 nullable: true taskIndex: type: integer format: int32 nullable: true policyOverride: nullable: true 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 format: int64 nullable: true assistReferenceValid: type: boolean description: This entity maps to the assist_events table. TaskCooldown: type: string enum: - NONE - LEGACY - HALF_HOUR - ONE_HOUR - TWO_HOURS - FOUR_HOURS - ONCE_A_DAY EventCategory: $ref: '#/components/schemas/Colorized' ThinCalendar: required: - calendarId - credentialEmail - credentialId - id - lastSynced - timezone type: object properties: id: type: integer format: int64 timezone: type: string calendarId: type: string lastSynced: type: string format: date-time credentialId: type: integer format: int64 credentialEmail: type: string SlotScorerVersion: type: string enum: - V1 ResponseStatus: type: string enum: - DECLINED - NEEDS_ACTION - TENTATIVE - ACCEPTED - UNKNOWN UserProfileRole: type: string enum: - EXEC - MANAGER - NON_MANAGER - CONSULTANT - STUDENT ReclaimEventType: type: string enum: - USER - SYNC - HABIT_ASSIGNMENT - SMART_HABIT - ONE_ON_ONE_ASSIGNMENT - SMART_MEETING - TASK_ASSIGNMENT - CONF_BUFFER - TRAVEL_BUFFER - SCHEDULING_LINK_MEETING - UNKNOWN - FOCUS AppNotificationsSettings: type: object properties: enabled: type: boolean unscheduledPriority: type: boolean audioAlertEnabled: type: boolean titleTagAlertEnabled: type: boolean UserSettings: required: - accountLocks - analyticsSettings - appNotifications - asana - assistSettings - assistant - availabilitySettings - billing - calendar - calendarEntrySettings - calendarPermissionSettings - colors - dropboxSettings - eventDisplayPreferences - experimentalSettings - focus - googleAddOnSettings - interests - microsoft - onboard - postOnboard - priorities - projects - quests - rsvpSetting - schedulingLinks - slackSettings - smartOneOnOnes - sync - taskSettings - temporal - timezoneSettings - todoistSettings - webhookSettings - weeklyReport type: object properties: assistSettings: $ref: '#/components/schemas/AssistSettings' scheduler: type: integer format: int32 prioritizationEnabled: type: boolean extraScopes: type: boolean peopleScopes: type: boolean directoryScopes: type: boolean taskSettings: $ref: '#/components/schemas/TaskSettings' priorities: $ref: '#/components/schemas/PrioritiesSettings' colors: $ref: '#/components/schemas/ColorsSettings' calendar: $ref: '#/components/schemas/CalendarSettings' focus: $ref: '#/components/schemas/FocusSettings' asana: $ref: '#/components/schemas/AsanaSettings' webhookSettings: $ref: '#/components/schemas/WebhookSettings' billing: $ref: '#/components/schemas/BillingSettings' projects: $ref: '#/components/schemas/ProjectsSettings' sync: $ref: '#/components/schemas/SyncFeatureSettings' slackSettings: $ref: '#/components/schemas/SlackSettings' todoistSettings: $ref: '#/components/schemas/TodoistSettings' appNotifications: $ref: '#/components/schemas/AppNotificationsSettings' interests: $ref: '#/components/schemas/UserInterests' onboard: $ref: '#/components/schemas/UserOnboard' postOnboard: $ref: '#/components/schemas/UserPostOnboard' weeklyReport: $ref: '#/components/schemas/WeeklyReport' smartOneOnOnes: $ref: '#/components/schemas/SmartOneOnOneSettings' schedulingLinks: $ref: '#/components/schemas/SchedulingLinkSettings' quests: $ref: '#/components/schemas/QuestSettings' googleAddOnSettings: $ref: '#/components/schemas/GoogleAddOnSettings' calendarEntrySettings: $ref: '#/components/schemas/CalendarEntrySettings' microsoft: $ref: '#/components/schemas/MicrosoftSettings' eventDisplayPreferences: $ref: '#/components/schemas/EventDisplayPreferences' timezoneSettings: $ref: '#/components/schemas/TimezoneSettings' rsvpSetting: $ref: '#/components/schemas/RSVPSetting' experimentalSettings: $ref: '#/components/schemas/ExperimentalSettings' dropboxSettings: $ref: '#/components/schemas/DropboxSettings' assistant: $ref: '#/components/schemas/ScheduleAssistantSettings' availabilitySettings: $ref: '#/components/schemas/AvailabilitySettings' calendarPermissionSettings: $ref: '#/components/schemas/CalendarPermissionSettings' analyticsSettings: $ref: '#/components/schemas/AnalyticsSettings' temporal: $ref: '#/components/schemas/TemporalSettings' accountLocks: type: array items: $ref: '#/components/schemas/UserAccountLock' adventures: $ref: '#/components/schemas/UserAdventures' appNotificationsSettings: $ref: '#/components/schemas/AppNotificationsSettings' maskSuppressUntil: type: string format: date-time availableMeetingTimes: type: array items: type: integer format: int32 FocusSettings: type: object properties: enabled: type: boolean debug: type: boolean MeetingType: type: string enum: - DIRECT_11 - PEER_11 - SKIP_11 - XFUNC_11 - OTHER_11 - TEAM - XFUNC_TEAM - EXEC - SKIP_TEAM - ALL_HANDS - ONBOARDING_TRAINING - COMPANY_EVENT - BOARD_MEETING - OTHER_STAFF - DEAL_REVIEW - EXECUTION_REVIEW - DEMO - PLANNING_MEETING - RETRO - EMERGENCY - PEOPLE_REVIEW - OTHER_OP - ROADMAP - CUST_MEETING - CUST_RESEARCH - CUST_URGENT - RECRUIT_SCREEN - OTHER_EXTERNAL - DESIGN_BRAIN - TECH_REVIEW - KICKOFF - REQ_BRAIN - OTHER_IDEATION - UNKNOWN EntitlementValue_Object_: required: - nextEdition - nextValue - value type: object properties: value: {} nextValue: nullable: true nextEdition: nullable: true allOf: - $ref: '#/components/schemas/ReclaimEdition' RSVPSetting: type: object properties: calendarSync: $ref: '#/components/schemas/DefaultRsvpAvailability' 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' TodoistSettings: type: object properties: apiV1Enabled: type: boolean TaskSource: type: object properties: type: nullable: true allOf: - $ref: '#/components/schemas/TaskSourceType' id: type: string nullable: true url: type: string nullable: true OrgMetadata: type: object properties: employeeNumber: type: string nullable: true costCenter: type: string nullable: true organization: type: string nullable: true division: type: string nullable: true department: type: string nullable: true manager: nullable: true allOf: - $ref: '#/components/schemas/OrgMetadata.OrgManager' customValues: type: object additionalProperties: true nullable: true AssistStatus: type: string enum: - CONTROLLED - RELEASED - ARCHIVED UserPostOnboardState: type: string enum: - NEVER_SHOWN - NEVER_INTERACTED - PASS - CHECK - CTA DropboxSettings: type: object properties: enabled: type: boolean SlackOutsideHoursSetting: required: - dnd - policy type: object properties: policy: type: string message: type: string nullable: true dnd: type: boolean TaskPatch: required: - patch - taskId type: object properties: taskId: type: integer format: int64 patch: type: object additionalProperties: true notificationKey: type: string nullable: true BillingSettings: type: object properties: enabled: type: boolean 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' SchedulingLinkNameVisibility: type: string enum: - NEVER - USER_IS_LINK_OWNER - VISIBLE_TO_TEAM_MEMBERS - VISIBLE_ON_TEAM_MEMBERS_LINKS - ALWAYS SlackSettings.StatusSync: type: string enum: - 'OFF' - DEFAULT - BUSY - CUSTOM - TEAM ProjectsSettings: type: object properties: enabled: type: boolean SmartOneOnOneSettings: type: object properties: enabled: type: boolean EventColor: type: string enum: - NONE - LAVENDER - SAGE - GRAPE - FLAMINGO - BANANA - TANGERINE - PEACOCK - GRAPHITE - BLUEBERRY - BASIL - TOMATO PrioritySource: type: string enum: - MANUAL - AI - RULES ScheduleAssistantScoringSettings: type: object properties: version: $ref: '#/components/schemas/SlotScorerVersion' 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 SlackSettings: type: object properties: enabled: type: boolean newSlackExperienceEnabled: type: boolean customSlackStatusWaterMark: type: string nullable: true previousStatusWaterMarks: type: array nullable: true items: type: string oooMessageTemplate: type: string nullable: true 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 ObservedUser: type: object allOf: - $ref: '#/components/schemas/LogContext' - properties: id: type: string trackingCode: type: string edition: $ref: '#/components/schemas/ReclaimEdition' TemporalSettings: type: object properties: eventTransitionsEnabled: type: boolean CalendarSettings: type: object properties: enabled: type: boolean calendarCleanupRunning: type: string format: date-time LockState: type: string enum: - MANUALLY_LOCKED - ADJUSTED - UPCOMING_WINDOW - MANUALLY_UNLOCKED - DELETED - DECLINED - IN_THE_PAST LogContext: type: object AssistPolicyOverride: required: - durationMax - durationMin - forceDefend - idealTime - windowEnd - windowStart type: object properties: windowStart: type: string format: partial-time idealTime: type: string format: partial-time windowEnd: type: string format: partial-time durationMin: type: integer format: int32 durationMax: type: integer format: int32 forceDefend: type: boolean MergeDetails.EventType: type: string enum: - ORGANIZER_EVENT - ATTENDEE_EVENT - SYNC_EVENT PlatformEventType: type: string enum: - DEFAULT - OUT_OF_OFFICE - FROM_MAIL - WORKING_LOCATION - FOCUS_TIME - BIRTHDAY 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 WeeklyReport: type: object properties: enabled: type: boolean sendReport: type: boolean securitySchemes: Authorization: type: oauth2