---
title: AlarmManager
framework: alarmkit
role: symbol
role_heading: Class
path: alarmkit/alarmmanager
---

# AlarmManager

An object that exposes functions to work with alarms: scheduling, snoozing, cancelling.

## Declaration

```swift
class AlarmManager
```

## Overview

Overview Schedule your alarm alert using AlarmManager. The following example calls the AlarmManager schedule function by passing in the id and configuration. Task {     let _ = try? await AlarmManager.shared.schedule(id: id, configuration: configuration) }

## Topics

### Creating a shared instance

- [shared](alarmkit/alarmmanager/shared.md)

### Updating an alarm

- [AlarmManager.AlarmUpdates](alarmkit/alarmmanager/alarmupdates-swift.struct.md)
- [alarmUpdates](alarmkit/alarmmanager/alarmupdates-swift.property.md)
- [alarms](alarmkit/alarmmanager/alarms.md)

### Scheduling an alarm

- [schedule(id:configuration:)](alarmkit/alarmmanager/schedule(id:configuration:).md)
- [AlarmManager.AlarmConfiguration](alarmkit/alarmmanager/alarmconfiguration.md)

### Requesting authorization

- [requestAuthorization()](alarmkit/alarmmanager/requestauthorization().md)

### Checking authorization status

- [AlarmManager.AlarmAuthorizationStateUpdates](alarmkit/alarmmanager/alarmauthorizationstateupdates.md)
- [authorizationUpdates](alarmkit/alarmmanager/authorizationupdates.md)
- [AlarmManager.AuthorizationState](alarmkit/alarmmanager/authorizationstate-swift.enum.md)
- [authorizationState](alarmkit/alarmmanager/authorizationstate-swift.property.md)

### Changing an alarm state

- [cancel(id:)](alarmkit/alarmmanager/cancel(id:).md)
- [countdown(id:)](alarmkit/alarmmanager/countdown(id:).md)
- [pause(id:)](alarmkit/alarmmanager/pause(id:).md)
- [resume(id:)](alarmkit/alarmmanager/resume(id:).md)
- [stop(id:)](alarmkit/alarmmanager/stop(id:).md)

### Throwing an error

- [AlarmManager.AlarmError](alarmkit/alarmmanager/alarmerror.md)

## See Also

### Alarm management

- [Scheduling an alarm with AlarmKit](alarmkit/scheduling-an-alarm-with-alarmkit.md)
- [Alarm](alarmkit/alarm.md)
