---
title: WorkoutPlan
framework: workoutkit
role: symbol
role_heading: Structure
path: workoutkit/workoutplan
---

# WorkoutPlan

A wrapper around a workout object that your app can use to open the object in Workout or schedule it for later.

## Declaration

```swift
struct WorkoutPlan
```

## Topics

### Creating a workout plan

- [init(_:id:)](workoutkit/workoutplan/init(_:id:).md)
- [WorkoutPlan.Workout](workoutkit/workoutplan/workout-swift.enum.md)

### Accessing workout plan data

- [workout](workoutkit/workoutplan/workout-swift.property.md)

### Opening the workout plan

- [openInWorkoutApp()](workoutkit/workoutplan/openinworkoutapp().md)

### Initializers

- [init(from:)](workoutkit/workoutplan/init(from:).md)

### Instance Properties

- [dataRepresentation](workoutkit/workoutplan/datarepresentation.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [Identifiable](swift/identifiable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Workout plans and schedules

- [ScheduledWorkoutPlan](workoutkit/scheduledworkoutplan.md)
- [WorkoutScheduler](workoutkit/workoutscheduler.md)
