Skip to Content
Odoo model

calendar.event

Calendar Event. Defined in module calendar; exists in Odoo 16, 17, 18, 19, 20. Across the upgrade steps we tracked: 38 fields added, 6 removed, 0 renamed.

  1. Odoo 16 calendar
  2. Odoo 17 calendar
  3. Odoo 18 calendar
  4. Odoo 19 calendar
  5. Odoo 20 calendar

Odoo 16 to 17

Community only All changes in this step

Fields removed (1)

FieldTypeModuleNotes
attendee_statusselectioncalendar

Fields added (12)

FieldTypeModule
accepted_countintegercalendar
attendees_countintegercalendar
awaiting_countintegercalendar
current_attendeemany2onecalendar
current_statusselectioncalendar
declined_countintegercalendar
guests_readonlybooleangoogle_calendar
res_model_namecharcalendar
rrule_type_uiselectioncalendar
should_show_statusbooleancalendar
tentative_countintegercalendar
user_can_editbooleancalendar

Odoo 17 to 18

Community only All changes in this step

Fields added (2)

FieldTypeModule
candidate_idmany2onehr_recruitment
unavailable_partner_idsmany2manyhr_calendar

Odoo 18 to 19

Community + Enterprise All changes in this step

Fields removed (5)

FieldTypeModuleNotes
candidate_idmany2onehr_recruitment
on_leave_partner_idsmany2manyappointment
on_leave_resource_idsmany2manyappointment
resource_total_capacity_reservedintegerappointment
resource_total_capacity_usedintegerappointment

Fields added (8)

FieldTypeModule
effective_privacyselectioncalendar
noteshtmlcalendar
phone_numbercharpos_appointment
total_capacity_reservedintegerappointment
total_capacity_usedintegerappointment
unavailable_resource_idsmany2manyappointment
visitor_idmany2onewebsite_appointment
waiting_list_capacityintegerpos_appointment
5 views of this model removed
  • appointment.calendar_event_calendar_view_inherit_appointment
  • hr_calendar.view_calendar_event_form
  • hr_calendar.view_calendar_event_form_quick_create
  • pos_restaurant_appointment.calendar_event_view_form_gantt_booking_inherit
  • pos_restaurant_appointment.calendar_event_view_gantt_booking_resource_inherited
2 menus opening this model removed
  • appointment.menu_schedule_report
  • appointment.menu_schedule_report_all_events

Odoo 19 to 20

Community + Enterprise All changes in this step

Fields added (16)

Show all 16
FieldTypeModule
appointment_fields_can_editbooleanappointment
appointment_type_has_payment_stepbooleanwebsite_appointment_sale
appointment_type_staff_user_idsmany2manyappointment
available_capacityintegerpos_restaurant_appointment
calendar_colorintegercalendar
calendar_idmany2onecalendar
google_calendar_urlcharcalendar
is_conflictedbooleanpos_restaurant_appointment
is_draftbooleancalendar
meeting_activity_idsone2manycalendar
microsoft_sync_activebooleanmicrosoft_calendar
privacy_placeholdercharcalendar
require_appointment_feedback_mailbooleanappointment
res_recordreferencecalendar
show_create_so_btnbooleanwebsite_appointment_sale
total_capacity_unassignedintegerappointment

Now also inherits google.event.sync, mail.activity.mixin (fields from these parents are listed on their own pages).

No longer inherits google.calendar.sync.

2 views of this model removed
  • appointment.calendar_event_view_gantt_kanban_popover
  • pos_appointment.calendar_event_view_calendar

All fields declared on calendar.event (116)

Fields this model declares itself in any version, with the versions they exist in. Inherited fields (mail.thread and other mixins) are on the parent model's page.

present not present not covered (Enterprise, Odoo 16 and 17)

Show all 116 fields
FieldTypeLabelModule1617181920
accepted_countintegercalendar
access_tokencharInvitation Tokencalendar
activebooleanActivecalendar
activity_idsone2many mail.activityActivitiescalendar
alarm_idsmany2many calendar.alarmReminderscalendar
alldaybooleanAll Day Durationcalendar
answerscharQ&A answerspos_appointmentE
applicant_idmany2one hr.applicantApplicanthr_recruitment
appointment_answer_input_idsone2many appointment.answer.inputAppointment AnswersappointmentE
appointment_booker_idmany2one res.partnerPerson who is booking the appointmentappointmentE
appointment_fields_can_editbooleanappointmentE
appointment_invite_idmany2one appointment.inviteAppointment InvitationappointmentE
appointment_resource_idsmany2many appointment.resourceAppointment ResourcesappointmentE
appointment_statusselectionAppointment StatusappointmentE
appointment_type_has_payment_stepbooleanwebsite_appointment_saleE
appointment_type_idmany2one appointment.typeAppointmentappointmentE
appointment_type_manage_capacitybooleanappointmentE
appointment_type_schedule_based_onselectionappointmentE
appointment_type_staff_user_idsmany2manyappointmentE
attendee_idsone2many calendar.attendeeParticipantcalendar
attendee_statusselectionAttendee Statuscalendar
attendees_countintegercalendar
available_capacityintegerAvailable Capacitypos_restaurant_appointmentE
awaiting_countintegercalendar
booking_line_idsone2many appointment.booking.lineBooking LinesappointmentE
bydayselectionBy daycalendar
calendar_colorintegercalendar
calendar_idmany2one calendar.calendarCalendarcalendar
candidate_idmany2one hr.candidateCandidatehr_recruitment
categ_idsmany2many calendar.event.typeTagscalendar
countintegerNumber of Repetitionscalendar
current_attendeemany2one calendar.attendeecalendar
current_statusselectionAttending?calendar
dayintegerDate of monthcalendar
declined_countintegercalendar
descriptionhtmlDescriptioncalendar
display_descriptionbooleancalendar
display_timecharEvent Timecalendar
durationfloatDurationcalendar
effective_privacyselectionEffective Privacycalendar
end_typeselectionRecurrence Terminationcalendar
event_tzselectionTimezonecalendar
follow_recurrencebooleancalendar
fribooleancalendar
google_calendar_urlcharGoogle Calendar URLcalendar
google_idcharGoogle Calendar Event Idgoogle_calendar
guests_readonlybooleanGuests Event Modification Permissiongoogle_calendar
intervalintegerRepeat Oncalendar
invalid_email_partner_idsmany2many res.partnercalendar
is_conflictedbooleanIs Conflictedpos_restaurant_appointmentE
is_draftbooleanIs draftcalendar
is_google_reservebooleanFrom Google Reserveappointment_google_reserveE
is_highlightedbooleanIs the Event Highlightedcalendar
is_organizer_alonebooleanIs the Organizer Alonecalendar
locationcharLocationcalendar
meeting_activity_idsone2many mail.activityMeeting Activitiescalendar
microsoft_idcharMicrosoft Calendar Event Idmicrosoft_calendar
microsoft_recurrence_master_idcharMicrosoft Recurrence Master Idmicrosoft_calendar
microsoft_sync_activebooleanMicrosoft Sync Activemicrosoft_calendar
monbooleancalendar
month_byselectionOptioncalendar
namecharMeeting Subjectcalendar
noteshtmlNotescalendar
on_leave_partner_idsmany2many res.partnerUnavailable PartnersappointmentE
on_leave_resource_idsmany2many appointment.resourceResources intersecting with leave timeappointmentE
opportunity_idmany2one crm.leadOpportunitycrm
partner_idmany2one res.partnerScheduled bycalendar
partner_idsmany2many res.partnerAttendeescalendar
phone_numbercharPhone numberpos_appointmentE
privacyselectionPrivacycalendar
privacy_placeholdercharcalendar
recurrence_idmany2one calendar.recurrenceRecurrence Rulecalendar
recurrence_updateselectioncalendar
recurrencybooleanRecurrentcalendar
require_appointment_feedback_mailbooleanRequire feedback mailappointmentE
res_idmany2one_referenceDocument IDcalendar
res_modelcharDocument Model Namecalendar
res_model_idmany2one ir.modelDocument Modelcalendar
res_model_namecharcalendar
res_recordreferenceLinked tocalendar
resource_idsmany2many appointment.resourceResourcesappointmentE
resource_total_capacity_reservedintegerTotal Capacity ReservedappointmentE
resource_total_capacity_usedintegerTotal Capacity UsedappointmentE
rrulecharRecurrent Rulecalendar
rrule_typeselectionRecurrencecalendar
rrule_type_uiselectionRepeatcalendar
sale_order_countintegerSales Order Countwebsite_appointment_saleE
sale_order_line_idsone2many sale.order.lineSale Order Linewebsite_appointment_saleE
satbooleancalendar
should_show_statusbooleancalendar
show_asselectionShow ascalendar
show_create_so_btnbooleanwebsite_appointment_saleE
startdatetimeStartcalendar
start_datedateStart Datecalendar
stopdatetimeStopcalendar
stop_datedateEnd Datecalendar
sunbooleancalendar
tentative_countintegercalendar
thubooleancalendar
total_capacity_reservedintegerTotal Capacity ReservedappointmentE
total_capacity_unassignedintegerMissing SeatsappointmentE
total_capacity_usedintegerTotal Capacity UsedappointmentE
tuebooleancalendar
unavailable_partner_idsmany2many res.partnerUnavailable Attendeescalendar
unavailable_resource_idsmany2many appointment.resourceResources intersecting with leave timeappointmentE
untildatecalendar
user_can_editbooleancalendar
user_idmany2one res.usersOrganizercalendar
videocall_channel_idmany2one discuss.channelDiscuss Channelcalendar
videocall_locationcharMeeting URLcalendar
videocall_redirectioncharMeeting redirection URLappointmentE
videocall_sourceselectioncalendar
visitor_idmany2one website.visitorVisitorwebsite_appointmentE
waiting_list_capacityintegerWaiting List Capacitypos_appointmentE
wedbooleancalendar
weekdayselectioncalendar
Coverage. Odoo 16 to 17 and 17 to 18 compare Community modules only (the Enterprise 16 and 17 sources are not available to us). Odoo 18 to 19 and 19 to 20 include Community and Enterprise modules. Everything here comes from a static read of the Odoo source code: a field counts as removed only when no parent model, mixin or delegated model still provides it. Fields created dynamically at run time can be missed, and entries we could not confirm are marked as low confidence.