calendar.event: campos, relaciones y API
El modelo calendar.event («Evento del calendario») es un modelo persistente declarado por el módulo Calendario y ampliado por 7 módulos más. Expone 95 campos, 72 de ellos declarados directamente en el modelo; 7 campos de otros modelos apuntan a él. A continuación encontrará cada campo con su nombre técnico, tipo, etiqueta en español y relaciones, y un ejemplo de llamada a la API JSON-2 de Odoo 19.
Ficha de identidad
- Nombre técnico
calendar.event- Etiqueta
- Evento del calendario
- Tipo
- Persistente (models.Model)
- Tabla SQL
calendar_event- Módulo de origen
- Calendario (
calendar) - Ampliado por
- calendar_sms, crm, google_calendar, hr_calendar, hr_holidays, hr_recruitment, microsoft_calendar
- Orden por defecto (_order)
start desc- Hereda de (mixins)
- mail.threadgoogle.calendar.syncmicrosoft.calendar.sync
Campos del modelo
72 campos propios, 17 heredados de mixins y 6 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.
95 de 95 campos mostrados
| Nombre técnico | Etiqueta | Tipo | Detalles |
|---|---|---|---|
| accepted_count | Número de invitaciones aceptadas | integer | calculado |
| access_token | Token de invitación | char | |
| active | Activo Si el campo activo es False, le permitirá ocultar la notificación de aviso del evento sin eliminarla. | boolean | |
| activity_ids | Actividades | one2many | inverso: |
| alarm_ids | Recordatorios Notificaciones enviadas a todos los asistentes como recordatorio de la reunión. | many2many | |
| allday | Todo el día | boolean | |
| applicant_id | Candidato | many2one | añadido por Reclutamiento ( |
| attendee_ids | Participante | one2many | inverso: |
| attendees_count | Número de asistentes | integer | calculado |
| awaiting_count | Número de invitaciones pendientes | integer | calculado |
| byday | Por día | selection | calculado Valores: |
| categ_ids | Etiquetas | many2many | |
| count | Número de repeticiones Repetir x veces | integer | calculado |
| current_attendee | Asistente actual | many2one | calculado |
| current_status | ¿Asistirá? | selection | related: |
| day | Día del mes | integer | calculado |
| declined_count | Número de invitaciones rechazadas | integer | calculado |
| description | Descripción When synchronization with an external calendar is active, this description is synchronized with the one of the associated meeting in that external calendar. Any update will be propagated there and vice versa. | html | |
| display_description | Mostrar descripción | boolean | calculado |
| display_time | Hora del evento | char | calculado |
| duration | Duración | float | calculado, almacenado |
| effective_privacy | Privacidad aplicada Si el evento es privado, teniendo en cuenta la privacidad del usuario | selection | calculado Valores: |
| end_type | Finalización de recurrencia | selection | calculado Valores: |
| event_tz | Zona horaria | selection | calculado Valores calculados dinámicamente |
| follow_recurrence | Seguir la recurrencia | boolean | |
| fri | Vie | boolean | calculado |
| google_id | Id del evento de Google Calendar | char | calculado, almacenado añadido por Google Calendar ( |
| guests_readonly | Permiso para modificar el evento para invitados | boolean | añadido por Google Calendar ( |
| interval | Repetir en Repetir cada (días/semana/mes/año) | integer | calculado |
| invalid_email_partner_ids | Correo electrónico de contacto no válido | many2many | calculado |
| is_highlighted | Es un evento destacado | boolean | calculado |
| is_organizer_alone | El organizador está solo Check if the organizer is alone in the event, i.e. if the organizer is the only one that hasn't declined the event (only if the organizer is not the only attendee) | boolean | calculado |
| location | Ubicación | char | |
| microsoft_recurrence_master_id | ID Master de recurrencia de Microsoft | char | añadido por Calendario de Outlook ( |
| mon | Lun | boolean | calculado |
| month_by | Opción | selection | calculado Valores: |
| name | Asunto de la reunión | char | obligatorio |
| notes | Notas | html | |
| opportunity_id | Oportunidad | many2one→ crm.lead | añadido por CRM ( |
| partner_id | Planificado por | many2one | solo lectura related: |
| partner_ids | Asistentes | many2many | |
| privacy | Privacidad Gente que podrá ver este evento. | selection | Valores: |
| recurrence_id | Regla de recurrencia | many2one | |
| recurrence_update | Actualización de recurrencia Elija qué hacer con otros eventos recurrentes. No se permite actualizar todos los eventos cuando se modifican las fechas o la hora. | selection | Valores: |
| recurrency | Recurrente | boolean | |
| res_id | ID del documento | many2one_reference | |
| res_model | Nombre del modelo del documento | char | solo lectura related: |
| res_model_id | Modelo de documento | many2one→ ir.model | |
| res_model_name | Res Model Name | char | related: |
| rrule | Regla recurrente | char | calculado |
| rrule_type | Recurrencia Permite que el evento se repita automáticamente en ese intervalo | selection | calculado Valores: |
| rrule_type_ui | Repetir Permite que el evento se repita automáticamente en ese intervalo | selection | calculado Valores: |
| sat | Sáb | boolean | calculado |
| should_show_status | Debe mostrar el estado | boolean | calculado |
| show_as | Mostrar como If the time is shown as 'busy', this event will be visible to other people with either the full information or simply 'busy' written depending on its privacy. Use this option to let other people know that you are unavailable during that period of time. If the event is shown as 'free', other users know that you are available during that period of time. | selection | obligatorio Valores: |
| start | Iniciar Fecha de inicio del evento, sin tiempo para eventos que duran un día completo | datetime | obligatorio |
| start_date | Fecha de inicio | date | calculado, almacenado |
| stop | Detener Fecha de fin del evento, sin horas para eventos de día completo | datetime | obligatoriocalculado, almacenado |
| stop_date | Fecha de finalización | date | calculado, almacenado |
| sun | Dom | boolean | calculado |
| tentative_count | Número tentativo | integer | calculado |
| thu | Jue | boolean | calculado |
| tue | Mar | boolean | calculado |
| unavailable_partner_ids | Asistentes no disponibes | many2many | calculado |
| until | Hasta | date | calculado |
| user_can_edit | El usuario puede editar | boolean | calculado |
| user_id | Organizador | many2one | |
| videocall_channel_id | Canal de conversaciones | many2one | |
| videocall_location | URL de la reunión | char | calculado, almacenado |
| videocall_source | Origen de la videollamada | selection | calculado Valores: |
| wed | Mié | boolean | calculado |
| weekday | Día de la semana | selection | calculado Valores: |
| has_message | Tiene un mensaje | boolean | calculado heredado de mail.thread |
| message_attachment_count | Número de archivos adjuntos | integer | calculado heredado de mail.thread |
| message_follower_ids | Seguidores | one2many | inverso: heredado de mail.thread |
| message_has_error | Error de envío de mensaje Si está marcada, algunos mensajes tienen error de envío. | boolean | calculado heredado de mail.thread |
| message_has_error_counter | Número de errores Número de mensajes con error de envío | integer | calculado heredado de mail.thread |
| message_has_sms_error | Error de envío del SMS Si está marcada, algunos mensajes tienen error de envío. | boolean | calculado heredado de mail.thread |
| message_ids | Mensajes | one2many | inverso: heredado de mail.thread |
| message_is_follower | Es un seguidor | boolean | calculado heredado de mail.thread |
| message_needaction | Acción requerida Si está marcada, hay nuevos mensajes que requieren su atención. | boolean | calculado heredado de mail.thread |
| message_needaction_counter | Número de acciones Número de mensajes que requieren una acción | integer | calculado heredado de mail.thread |
| message_partner_ids | Seguidores (Contactos) | many2many | calculado heredado de mail.thread |
| microsoft_id | ID del evento del organizador | char | heredado de microsoft.calendar.sync |
| ms_universal_event_id | ID de evento universal | char | heredado de microsoft.calendar.sync |
| need_sync | Necesita sincronización | boolean | heredado de google.calendar.sync |
| need_sync_m | Necesidad de sincronización M | boolean | heredado de microsoft.calendar.sync |
| rating_ids | Calificaciones | one2many | inverso: heredado de mail.thread |
| website_message_ids | Mensajes del sitio web Historial de comunicación del sitio web | one2many | inverso: heredado de mail.thread |
| create_date | Creado el | datetime | solo lecturaautomático |
| create_uid | Creado por | many2one | solo lecturaautomático |
| display_name | Nombre mostrado | char | solo lecturacalculadoautomático |
| id | ID | integer | solo lecturaautomático |
| write_date | Última actualización el | datetime | solo lecturaautomático |
| write_uid | Última actualización por | many2one | solo lecturaautomático |
Relaciones
Modelos enlazados desde este modelo
- calendar.alarm: alarm_ids
- calendar.attendee: attendee_ids, current_attendee
- calendar.event.type: categ_ids
- calendar.recurrence: recurrence_id
- crm.lead: opportunity_id
- discuss.channel: videocall_channel_id
- hr.applicant: applicant_id
- ir.model: res_model_id
- mail.activity: activity_ids
- res.partner: invalid_email_partner_ids, partner_id, partner_ids, unavailable_partner_ids
- res.users: user_id
Campos de otros modelos que apuntan aquí
- calendar.attendee: event_id
- calendar.popover.delete.wizard: calendar_event_id
- calendar.recurrence: base_event_id
- hr.leave: meeting_id
- mail.activity: calendar_event_id
- mail.activity.mixin: activity_calendar_event_id
- res.partner: meeting_ids
Leer este modelo por la API
Ejemplo de llamada a la API JSON-2 de Odoo 19: lectura de los cinco primeros registros con campos reales del modelo. Sustituya la instancia, la base y la clave API por las suyas.
curl -X POST "https://su-instancia.odoo.com/json/2/calendar.event/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: su-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","show_as","start","stop","applicant_id"],"limit":5}'import requests
BASE_URL = "https://su-instancia.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "su-base"}
res = requests.post(
f"{BASE_URL}/calendar.event/search_read",
headers=headers,
json={"domain": [], "fields": ["name","show_as","start","stop","applicant_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())- El acceso a la API externa está reservado al plan Custom de Odoo.
- XML-RPC y JSON-RPC se retirarán en Odoo 22 (otoño de 2028): use JSON-2.
- Se aplican los permisos de acceso y las reglas de registro del usuario de la clave.
Citar esta herramienta
¿Escribe un tutorial, una documentación interna o una respuesta en un foro? Copie este enlace para dirigir a sus lectores a la ficha actualizada.
<a href="https://aidoo.ai/es/outils/explorateur-modeles-odoo/calendar-event">calendar.event (Odoo 19.0)</a>Fuentes
- Código fuente del modelo en GitHub
- Documentación de Odoo 19: ORM API
- Documentación de Odoo 19: API externa JSON-2
Datos verificados el 23 de septiembre de 2026 · Odoo 19.0 Community
¿Tiene un proyecto Odoo o quiere aprovechar su ERP con la IA? Hablemos
Implantación, desarrollo de módulos, conexión de Claude o ChatGPT a sus datos: cuéntenos su contexto y le responderemos en 24 horas laborables.