<!--
{
  "availability" : [
    "iOS: 17.0.0 -",
    "iPadOS: 17.0.0 -",
    "macCatalyst: 17.0.0 -",
    "macOS: 14.0.0 -",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreLocation",
  "identifier" : "/documentation/CoreLocation/CLMonitoringEvent",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Core Location"
    ],
    "preciseIdentifier" : "c:objc(cs)CLMonitoringEvent"
  },
  "title" : "CLMonitoringEvent"
}
-->

# CLMonitoringEvent

The object that the framework passes to the monitor’s callback handler upon receiving an event.

```
@interface CLMonitoringEvent : NSObject
```

## Overview

Instances of `CLMonitoringEvent` contain detailed information about an event in the monitoring of a [`CLCondition`](/documentation/CoreLocation/CLCondition-swift.protocol) by a [`CLMonitor`](/documentation/CoreLocation/CLMonitor-2r51v).

## Topics

### Event states

[`accuracyLimited`](/documentation/CoreLocation/CLMonitoringEvent/accuracyLimited)

A Boolean value that indicates whether the app receives accuracy-limited location updates.

[`authorizationDenied`](/documentation/CoreLocation/CLMonitoringEvent/authorizationDenied)

A Boolean value that indicates whether the app has local authorization.

[`authorizationDeniedGlobally`](/documentation/CoreLocation/CLMonitoringEvent/authorizationDeniedGlobally)

A Boolean value that indicates whether the app has system-wide authorization.

[`authorizationRequestInProgress`](/documentation/CoreLocation/CLMonitoringEvent/authorizationRequestInProgress)

[`authorizationRestricted`](/documentation/CoreLocation/CLMonitoringEvent/authorizationRestricted)

A Boolean value that indicates whether the app can make authorization changes.

[`conditionLimitExceeded`](/documentation/CoreLocation/CLMonitoringEvent/conditionLimitExceeded)

A Boolean value that indicates whether the app receives location updates based on other monitoring conditions.

[`conditionUnsupported`](/documentation/CoreLocation/CLMonitoringEvent/conditionUnsupported)

A Boolean value that indicates whether the app receives location updates based on the supported condition.

[`insufficientlyInUse`](/documentation/CoreLocation/CLMonitoringEvent/insufficientlyInUse)

A Boolean value that indicates whether the app receives location updates because it’s insufficiently in use.

[`persistenceUnavailable`](/documentation/CoreLocation/CLMonitoringEvent/persistenceUnavailable)

A Boolean value that indicates whether it receives location updates based on successful persistence.

[`serviceSessionRequired`](/documentation/CoreLocation/CLMonitoringEvent/serviceSessionRequired)

### Event properties

[`date`](/documentation/CoreLocation/CLMonitoringEvent/date)

The date the event occurs.

[`identifier`](/documentation/CoreLocation/CLMonitoringEvent/identifier)

A string that represents the identifier of a monitored condition.

[`refinement`](/documentation/CoreLocation/CLMonitoringEvent/refinement)

An optional instance of a condition that represents the most specific condition to that this event can apply to.

[`state`](/documentation/CoreLocation/CLMonitoringEvent/state)

The state of the condition at the time of the event.

[`CLMonitoringState`](/documentation/CoreLocation/CLMonitoringState)

Values that represent the current state of a monitoring condition.

## Relationships

### Conforms To

[`NSSecureCoding`](/documentation/Foundation/NSSecureCoding)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

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)