<!--
{
  "availability" : [
    "iOS: 10.0.0 -",
    "iPadOS: 10.0.0 -",
    "macCatalyst: 13.1.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 3.2.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SiriKit",
  "identifier" : "/documentation/Intents/INStartWorkoutIntent",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Intents"
    ],
    "preciseIdentifier" : "c:objc(cs)INStartWorkoutIntent"
  },
  "title" : "INStartWorkoutIntent"
}
-->

# INStartWorkoutIntent

A request to start a workout for the user.

```
class INStartWorkoutIntent
```

## Overview

SiriKit creates an [`INStartWorkoutIntent`](/documentation/Intents/INStartWorkoutIntent) object when the user asks to start a workout using your app. A start workout intent identifies the user-selected workout type and goals.

To handle this intent, the handler object in your Intents extension must adopt the [`INStartWorkoutIntentHandling`](/documentation/Intents/INStartWorkoutIntentHandling) protocol. Your handler should confirm the request and create an [`INStartWorkoutIntentResponse`](/documentation/Intents/INStartWorkoutIntentResponse) object that indicates it’s possible to start the workout. For the successful handling of the intent, SiriKit launches your app and passes it an <doc://com.apple.documentation/documentation/Foundation/NSUserActivity> object your app must then use to start the workout.

### Additional Intent Attributes

The following table lists additional attributes of this intent object:

|Attribute                      |Description                   |
|-------------------------------|------------------------------|
|Supported by                   |Siri Intents, Siri Suggestions|
|Always requires unlocked device|Yes                           |

## Topics

### Creating the Intent Object

[`init(workoutName:goalValue:workoutGoalUnitType:workoutLocationType:isOpenEnded:)`](/documentation/Intents/INStartWorkoutIntent/init(workoutName:goalValue:workoutGoalUnitType:workoutLocationType:isOpenEnded:))

Initializes an intent object with the specified workout information.

[`initWithWorkoutName:goalValue:workoutGoalUnitType:workoutLocationType:isOpenEnded:`](/documentation/Intents/INStartWorkoutIntent/initWithWorkoutName:goalValue:workoutGoalUnitType:workoutLocationType:isOpenEnded:)

Initializes an intent object with the specified workout information.

### Specifying Workout Details

[`workoutName`](/documentation/Intents/INStartWorkoutIntent/workoutName)

The name of the workout.

[`goalValue`](/documentation/Intents/INStartWorkoutIntent/goalValue-5oazy)

The user-supplied numerical goal of the workout.

[`goalValue`](/documentation/Intents/INStartWorkoutIntent/goalValue-1dzvb)

The numerical goal of the workout.

[`workoutGoalUnitType`](/documentation/Intents/INStartWorkoutIntent/workoutGoalUnitType)

The units associated with the workout goal.

[`workoutLocationType`](/documentation/Intents/INStartWorkoutIntent/workoutLocationType)

The location of the workout.

[`isOpenEnded`](/documentation/Intents/INStartWorkoutIntent/isOpenEnded-8hecn)

A Boolean value that indicates whether the workout is open ended.

[`isOpenEnded`](/documentation/Intents/INStartWorkoutIntent/isOpenEnded-avvd)

A Boolean value indicating whether the workout is open ended.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)