<!--
{
  "documentType" : "article",
  "framework" : "SiriKit",
  "identifier" : "/documentation/SiriKit/workouts",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Workouts"
}
-->

# Workouts

Start, end, and manage fitness routines.

## Discussion

Users can start, pause, resume, cancel, or end workouts with Siri. Your Intents app extension directs any workout-related requests to your app, which manages the actual workouts. SiriKit automatically asks users to unlock their device, as needed, before launching your app.

You can use an Intents UI app extension to provide a custom interface for workout-related intents.

![A screenshot of an Apple watch with Siri active and responding to the user’s request to start a running workout.](images/com.apple.sirikit/media-3743227@2x.png)

## Topics

### Essentials

  <doc://com.apple.sirikit/documentation/SiriKit/handling-workout-requests-with-sirikit>

### Start a Workout

[`INStartWorkoutIntentHandling`](/documentation/Intents/INStartWorkoutIntentHandling)

An interface that handles requests to start a workout.

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

A request to start a workout for the user.

[`INStartWorkoutIntentResponse`](/documentation/Intents/INStartWorkoutIntentResponse)

Your app’s response to a start workout intent.

### Pause a Workout

[`INPauseWorkoutIntentHandling`](/documentation/Intents/INPauseWorkoutIntentHandling)

An interface that handles requests to pause a workout.

[`INPauseWorkoutIntent`](/documentation/Intents/INPauseWorkoutIntent)

A request to pause the current workout that also stops the gathering of workout data.

[`INPauseWorkoutIntentResponse`](/documentation/Intents/INPauseWorkoutIntentResponse)

Your app’s response to a pause workout intent.

### Resume a Workout

[`INResumeWorkoutIntentHandling`](/documentation/Intents/INResumeWorkoutIntentHandling)

The interface that handles requests to resume a workout.

[`INResumeWorkoutIntent`](/documentation/Intents/INResumeWorkoutIntent)

A request to resume a paused workout.

[`INResumeWorkoutIntentResponse`](/documentation/Intents/INResumeWorkoutIntentResponse)

Your app’s response to a resume workout intent.

### Cancel a Workout

[`INCancelWorkoutIntentHandling`](/documentation/Intents/INCancelWorkoutIntentHandling)

The interface that handles requests to cancel a workout.

[`INCancelWorkoutIntent`](/documentation/Intents/INCancelWorkoutIntent)

A request to cancel an active workout.

[`INCancelWorkoutIntentResponse`](/documentation/Intents/INCancelWorkoutIntentResponse)

Your app’s response to a cancel workout intent.

### End a Workout

[`INEndWorkoutIntentHandling`](/documentation/Intents/INEndWorkoutIntentHandling)

An interface that handles requests to complete a workout.

[`INEndWorkoutIntent`](/documentation/Intents/INEndWorkoutIntent)

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

[`INEndWorkoutIntentResponse`](/documentation/Intents/INEndWorkoutIntentResponse)

Your app’s response to an end workout intent.

### Workout Data Objects

[`INWorkoutNameIdentifier`](/documentation/Intents/INWorkoutNameIdentifier)

Constants that indicate the type of workout.

[`INWorkoutGoalUnitType`](/documentation/Intents/INWorkoutGoalUnitType)

Describes the unit of measure with constants for a workout.

[`INWorkoutLocationType`](/documentation/Intents/INWorkoutLocationType)

Describes the location of a workout.

### Resolution Results

[`INWorkoutGoalUnitTypeResolutionResult`](/documentation/Intents/INWorkoutGoalUnitTypeResolutionResult)

A resolution result for the units of a workout goal.

[`INWorkoutLocationTypeResolutionResult`](/documentation/Intents/INWorkoutLocationTypeResolutionResult)

A resolution result for the location type where the workout occurs.



---

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)