calendar
Calendar models for the Open WebUI scheduling system.
Calendars contain events with optional recurrence (RRULE), attendees with RSVP
status, and access-control grants for sharing. A virtual "Scheduled Tasks"
calendar (__scheduled_tasks__) surfaces automation runs as read-only events.
Classes
CalendarModel
Bases: BaseModel
A user-owned or shared calendar.
The virtual Scheduled Tasks calendar has is_system=True and a fixed
id of __scheduled_tasks__. All other calendars are user-created.
- Code Reference routers calendar Classes CalendarClient Functions
Attributes
is_default
Whether this is the user's default calendar. Only one default per user.
is_system
True for the virtual Scheduled Tasks calendar, False for user-created.
data
Arbitrary calendar data.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
meta
Arbitrary calendar metadata.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
access_grants
List of access grants controlling sharing. Each grant is a dict.
Dict Fields
target_type(str, required): Grant target type, e.g. 'user' or 'group'target_id(str, required): ID of the user or grouppermission(str, required): 'read' or 'write'
CalendarEventAttendeeModel
Bases: BaseModel
An attendee on a calendar event with RSVP status.
- Code Reference models calendar Classes CalendarEventModel Attributes attendees
Attributes
meta
Arbitrary attendee metadata.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
CalendarEventModel
Bases: BaseModel
A calendar event with optional recurrence and attendees.
Timestamps are nanoseconds since epoch. Recurring events use an RRULE string (RFC 5545); the backend expands instances server-side.
- Code Reference routers calendar Classes CalendarClient Functions
- Code Reference models calendar Classes CalendarEventUserResponse
Attributes
rrule
RRULE recurrence rule (RFC 5545), e.g. FREQ=DAILY;DTSTART=20260101T090000Z.
data
Arbitrary event data.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
meta
Event metadata.
Dict Fields
alert_minutes(int, optional): Minutes before event to send a reminder. 0 = at time of event, -1 = no reminder. Defaults to 10 if absent.automation_id(str, optional): Set on virtual Scheduled Tasks events to link back to the source automation.run_id(str, optional): Set on virtual past-run events to link to the automation run record.chat_id(str, optional): Set on virtual past-run events for the associated chat.status(str, optional): Set on virtual past-run events, 'success' or 'error'.
attendees
attendees: list[CalendarEventAttendeeModel] = Field(
default_factory=list
)
List of event attendees with RSVP status.
CalendarForm
Bases: BaseModel
Form for creating a new calendar.
- Code Reference routers calendar Classes CalendarClient Functions create_calendar
Attributes
data
Arbitrary calendar data.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
meta
Arbitrary calendar metadata.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
access_grants
Access grants for sharing the calendar. Each dict defines a grant.
Dict Fields
target_type(str, required): Grant target type, e.g. 'user' or 'group'target_id(str, required): ID of the user or grouppermission(str, required): 'read' or 'write'
CalendarUpdateForm
Bases: BaseModel
Form for updating an existing calendar. Only set fields are applied.
- Code Reference routers calendar Classes CalendarClient Functions update_calendar
Attributes
data
Merged into existing data. New keys overwrite old ones.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
meta
Merged into existing metadata. New keys overwrite old ones.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
access_grants
Replaces all existing access grants. Each dict defines a grant.
Dict Fields
target_type(str, required): Grant target type, e.g. 'user' or 'group'target_id(str, required): ID of the user or grouppermission(str, required): 'read' or 'write'
CalendarEventForm
Bases: BaseModel
Form for creating a new calendar event.
- Code Reference routers calendar Classes CalendarClient Functions create_event
Attributes
rrule
RRULE recurrence rule (RFC 5545), e.g. FREQ=WEEKLY;DTSTART=20260101T090000Z.
data
Arbitrary event data.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
meta
Event metadata.
Dict Fields
alert_minutes(int, optional): Minutes before event to send a reminder. 0 = at time of event, -1 = no reminder. Defaults to 10 if absent.
CalendarEventUpdateForm
Bases: BaseModel
Form for updating an existing calendar event. Only set fields are applied.
- Code Reference routers calendar Classes CalendarClient Functions update_event
Attributes
data
Merged into existing data. New keys overwrite old ones.
Dict Fields
Reserved for future use. No keys are currently read by the backend.
meta
Merged into existing metadata. New keys overwrite old ones.
Dict Fields
alert_minutes(int, optional): Minutes before event to send a reminder. 0 = at time of event, -1 = no reminder. Defaults to 10 if absent.
RSVPForm
CalendarEventUserResponse
Bases: CalendarEventModel
Calendar event enriched with the creator's user profile.
- Code Reference
CalendarEventListResponse
Bases: BaseModel
Paginated list of calendar events with enriched user data.
- Code Reference routers calendar Classes CalendarClient Functions search_events