> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plane.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Calendar event

> Calendar events represent scheduled items on a workspace calendar.

A calendar event is a scheduled item on a [calendar](/reference/calendars/object). Use calendar
events when you need to read company meetings, holidays, payroll deadlines, or other schedule
entries that appear on Plane's shared calendar.

When `all_day` is `true`, treat `starts` and `ends` as dates rather than times. A holiday should
render as a full-day event, not as a midnight-to-midnight timed block.

### Attributes

<ResponseField name="id" type="string">
  Unique identifier for the event, for example `cale_K2mP9qR4xL7s`.
</ResponseField>

<ResponseField name="object" type="string">
  The object type. Always `calendar.event`.
</ResponseField>

<ResponseField name="calendar" type="string">
  ID of the [calendar](/reference/calendars/object) the event belongs to.
</ResponseField>

<ResponseField name="title" type="string">
  Short title shown on the calendar.
</ResponseField>

<ResponseField name="description" type="string | null">
  Optional longer description of the event.
</ResponseField>

<ResponseField name="starts" type="string">
  Timestamp when the event starts.
</ResponseField>

<ResponseField name="ends" type="string">
  Timestamp when the event ends.
</ResponseField>

<ResponseField name="all_day" type="boolean">
  Whether the event spans the full day. When `true`, interpret `starts` and `ends` as dates
  rather than times.
</ResponseField>

<ResponseField name="subject" type="string | null">
  ID of the record this event projects, such as a worker, leave, or holiday. Null when the event
  has no linked record. Some subjects may not resolve to a public API resource.
</ResponseField>

<ResponseField name="metadata" type="object">
  Set of key-value pairs attached to the event.
</ResponseField>

<ResponseField name="created" type="string">
  Timestamp of when the event was created.
</ResponseField>

<ResponseField name="updated" type="string">
  Timestamp of when the event was last updated.
</ResponseField>
