<!--
{
  "availability" : [
    "iOS: 4.0.0 -",
    "iPadOS: 4.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.8.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "EventKit",
  "identifier" : "/documentation/EventKit/EKEvent",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "EventKit"
    ],
    "preciseIdentifier" : "c:objc(cs)EKEvent"
  },
  "title" : "EKEvent"
}
-->

# EKEvent

A class that represents an event in a calendar.

```
class EKEvent
```

## Overview

Use the [`init(eventStore:)`](/documentation/EventKit/EKEvent/init(eventStore:)) method to create a new event. Use the properties in the class to get and modify certain information about an event. Other properties, such as the event’s title and calendar, are inherited from the parent class [`EKCalendarItem`](/documentation/EventKit/EKCalendarItem).

## Topics

### Creating Events

[`init(eventStore:)`](/documentation/EventKit/EKEvent/init(eventStore:))

Creates and returns a new event belonging to a specified event store.

### Scheduling Events

[`EKEventStatus`](/documentation/EventKit/EKEventStatus)

The event’s status.

[`EKEventAvailability`](/documentation/EventKit/EKEventAvailability)

The event’s availability setting for scheduling purposes.

### Comparing Events

[`compareStartDate(with:)`](/documentation/EventKit/EKEvent/compareStartDate(with:))

Compares the start date of the receiving event with the start date of another event.

### Accessing Event Properties

[`eventIdentifier`](/documentation/EventKit/EKEvent/eventIdentifier)

A unique identifier for the event.

[`availability`](/documentation/EventKit/EKEvent/availability)

The availability setting for the event.

[`startDate`](/documentation/EventKit/EKEvent/startDate)

The start date of the event.

[`endDate`](/documentation/EventKit/EKEvent/endDate)

The end date for the event.

[`isAllDay`](/documentation/EventKit/EKEvent/isAllDay)

A Boolean value that indicates whether the event is an all-day event.

[`occurrenceDate`](/documentation/EventKit/EKEvent/occurrenceDate)

The original occurrence date of an event if it is part of a recurring series.

[`isDetached`](/documentation/EventKit/EKEvent/isDetached)

A Boolean value that indicates whether an event is a detached instance of a repeating event.

[`organizer`](/documentation/EventKit/EKEvent/organizer)

The organizer associated with the event.

[`status`](/documentation/EventKit/EKEvent/status)

The status of the event.

[`birthdayContactIdentifier`](/documentation/EventKit/EKEvent/birthdayContactIdentifier)

The contact identifier of the person for this birthday event.

[`structuredLocation`](/documentation/EventKit/EKEvent/structuredLocation)

The event’s location with a potential geocoordinate.

[`birthdayPersonID`](/documentation/EventKit/EKEvent/birthdayPersonID)

The Address Book framework record identifier of the person for this birthday event.

[`birthdayPersonUniqueID`](/documentation/EventKit/EKEvent/birthdayPersonUniqueID)

The Address Book framework record identifier of the person for this birthday event.

### Refreshing Event Data

[`refresh()`](/documentation/EventKit/EKEvent/refresh())

Updates the event’s data with the current information in the Calendar database.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)
