<!--
{
  "availability" : [
    "iOS: 17.0.0 -",
    "iPadOS: 17.0.0 -",
    "macCatalyst: 17.0.0 -",
    "macOS: 14.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 10.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "EventKit",
  "identifier" : "/documentation/EventKit/EKEventStore/requestFullAccessToEvents(completion:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "EventKit"
    ],
    "preciseIdentifier" : "c:objc(cs)EKEventStore(im)requestFullAccessToEventsWithCompletion:"
  },
  "title" : "requestFullAccessToEvents(completion:)"
}
-->

# requestFullAccessToEvents(completion:)

Prompts people to grant or deny read and write access to event data.

```
func requestFullAccessToEvents(completion: @escaping @Sendable (Bool, (any Error)?) -> Void)
```

## Parameters

`completion`

The block to call when the request completes.

## Discussion

Requesting access to an event store asynchronously prompts people for permission to use their data. The operating system only prompts them the first time your app requests full access to events; any subsequent instantiations of [`EKEventStore`](/documentation/EventKit/EKEventStore) uses existing permissions. When they grant or deny access, [`EventKit`](/documentation/EventKit) calls the completion handler on an arbitrary queue.

> Note:
> Your iOS or Mac Catalyst app can present an <doc://com.apple.documentation/documentation/EventKitUI/EKEventEditViewController> to let people create events without requesting access to the event store. If your app creates events without using <doc://com.apple.documentation/documentation/EventKitUI/EKEventEditViewController>, you must request at least write-only access to event data.

Your app isn’t blocked while the person decides to grant or deny permission. Because they may deny permission, your app should handle cases where it doesn’t receive access to the event store.

> Important:
> If your app has never requested access, or only has write-only access to events, you must request full access to events before attempting to fetch them. If you request events before prompting people for access with this method, you’ll need to reset the event store with the ``doc://com.apple.eventkit/documentation/EventKit/EKEventStore/reset()`` method to receive data after they grant access.

---

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)