---
title: WorkoutScheduler
framework: workoutkit
role: symbol
role_heading: Class
path: workoutkit/workoutscheduler
---

# WorkoutScheduler

An object for scheduling and managing workouts.

## Declaration

```swift
final class WorkoutScheduler
```

## Topics

### Accessing the scheduler

- [shared](workoutkit/workoutscheduler/shared.md)
- [isSupported](workoutkit/workoutscheduler/issupported.md)
- [requestAuthorization()](workoutkit/workoutscheduler/requestauthorization().md)
- [authorizationState](workoutkit/workoutscheduler/authorizationstate-swift.property.md)
- [WorkoutScheduler.AuthorizationState](workoutkit/workoutscheduler/authorizationstate-swift.enum.md)

### Scheduling workouts

- [schedule(_:at:)](workoutkit/workoutscheduler/schedule(_:at:).md)

### Managing scheduled workouts

- [scheduledWorkouts](workoutkit/workoutscheduler/scheduledworkouts.md)
- [maxAllowedScheduledWorkoutCount](workoutkit/workoutscheduler/maxallowedscheduledworkoutcount.md)
- [markComplete(_:at:)](workoutkit/workoutscheduler/markcomplete(_:at:).md)
- [remove(_:at:)](workoutkit/workoutscheduler/remove(_:at:).md)
- [removeAllWorkouts()](workoutkit/workoutscheduler/removeallworkouts().md)

## Relationships

### Conforms To

- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Workout plans and schedules

- [WorkoutPlan](workoutkit/workoutplan.md)
- [ScheduledWorkoutPlan](workoutkit/scheduledworkoutplan.md)
