---
title: UNNotificationSettings
framework: usernotifications
role: symbol
role_heading: Class
path: usernotifications/unnotificationsettings
---

# UNNotificationSettings

The object for managing notification-related settings and the authorization status of your app.

## Declaration

```swift
class UNNotificationSettings
```

## Mentioned in

Asking permission to use notifications

## Overview

Overview A UNNotificationSettings object contains the current authorization status and notification-related settings for your app. Apps must receive authorization to schedule notifications and to interact with the user. Apps that run in CarPlay must similarly receive authorization to do so. Use this object to determine what notification-related actions your app can perform. You might then use that information to enable, disable, or adjust your app’s notification-related behaviors. Regardless of whether you take action, the system enforces your app’s settings by preventing denied interactions from occurring. You don’t create instances of this class directly. Instead, call the getNotificationSettings(completionHandler:) method of your app’s UNUserNotificationCenter object to get the current settings. For more information about requesting authorization for user interactions, see UNUserNotificationCenter.

## Topics

### Getting the Authorization Status

- [authorizationStatus](usernotifications/unnotificationsettings/authorizationstatus.md)
- [UNAuthorizationStatus](usernotifications/unauthorizationstatus.md)

### Getting Device-Specific Settings

- [notificationCenterSetting](usernotifications/unnotificationsettings/notificationcentersetting.md)
- [lockScreenSetting](usernotifications/unnotificationsettings/lockscreensetting.md)
- [carPlaySetting](usernotifications/unnotificationsettings/carplaysetting.md)
- [alertSetting](usernotifications/unnotificationsettings/alertsetting.md)
- [badgeSetting](usernotifications/unnotificationsettings/badgesetting.md)
- [soundSetting](usernotifications/unnotificationsettings/soundsetting.md)
- [criticalAlertSetting](usernotifications/unnotificationsettings/criticalalertsetting.md)
- [announcementSetting](usernotifications/unnotificationsettings/announcementsetting.md)
- [scheduledDeliverySetting](usernotifications/unnotificationsettings/scheduleddeliverysetting.md)
- [timeSensitiveSetting](usernotifications/unnotificationsettings/timesensitivesetting.md)
- [UNNotificationSetting](usernotifications/unnotificationsetting.md)

### Getting Interface Settings

- [alertStyle](usernotifications/unnotificationsettings/alertstyle.md)
- [UNAlertStyle](usernotifications/unalertstyle.md)
- [showPreviewsSetting](usernotifications/unnotificationsettings/showpreviewssetting.md)
- [UNShowPreviewsSetting](usernotifications/unshowpreviewssetting.md)
- [providesAppNotificationSettings](usernotifications/unnotificationsettings/providesappnotificationsettings.md)

### Instance Properties

- [directMessagesSetting](usernotifications/unnotificationsettings/directmessagessetting.md)

### Initializers

- [init(coder:)](usernotifications/unnotificationsettings/init(coder:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)

## See Also

### Notification management

- [UNUserNotificationCenter](usernotifications/unusernotificationcenter.md)
- [UNUserNotificationCenterDelegate](usernotifications/unusernotificationcenterdelegate.md)
