---
title: INEndWorkoutIntent
framework: intents
role: symbol
role_heading: Class
path: intents/inendworkoutintent
---

# INEndWorkoutIntent

A request to end the current workout that also validates workout parameters and saves the results.

## Declaration

```swift
class INEndWorkoutIntent
```

## Overview

Overview SiriKit creates an INEndWorkoutIntent object when the user asks to finish an in-progress workout. Finishing a workout stops it and records any progress made toward the workout’s goals. Use this intent object to validate the workout parameters. To handle this intent, the handler object in your Intents extension must adopt the INEndWorkoutIntentHandling protocol. Your handler should confirm the request and create an INEndWorkoutIntentResponse object that indicates it’s possible to end the workout. For the successful handling of the intent, SiriKit launches your app and passes it an NSUserActivity object your app must then use to end the workout. Additional Intent Attributes The following table lists additional attributes of this intent object:  |   |   |

## Topics

### Creating the Intent Object

- [init(workoutName:)](intents/inendworkoutintent/init(workoutname:).md)

### Specifying Workout Details

- [workoutName](intents/inendworkoutintent/workoutname.md)

## Relationships

### Inherits From

- [INIntent](intents/inintent.md)

### Conforms To

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

## See Also

### End a Workout

- [INEndWorkoutIntentHandling](intents/inendworkoutintenthandling.md)
- [INEndWorkoutIntentResponse](intents/inendworkoutintentresponse.md)
