<!--
{
  "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/INCancelWorkoutIntentHandling/handle(intent:completion:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Intents"
    ],
    "preciseIdentifier" : "c:objc(pl)INCancelWorkoutIntentHandling(im)handleCancelWorkout:completion:"
  },
  "title" : "handle(intent:completion:)"
}
-->

# handle(intent:completion:)

Handles the canceling of the workout.

```
func handle(intent: INCancelWorkoutIntent, completion: @escaping @Sendable (INCancelWorkoutIntentResponse) -> Void)
```

## Parameters

`intent`

The intent object that contains details about the user’s request. The object’s information has already been resolved and confirmed by the user.

`completion`

The handler block to execute with your response. You must execute this handler while implementing this method. This handler has no return value and takes the following parameter:

- response: The [`INCancelWorkoutIntentResponse`](/documentation/Intents/INCancelWorkoutIntentResponse) object you create to report the status of the request. This parameter must not be `nil`.

## Discussion

This method transfers control of starting the workout over to your app. When your response object contains the [`INCancelWorkoutIntentResponseCode.continueInApp`](/documentation/Intents/INCancelWorkoutIntentResponseCode/continueInApp) code, SiriKit automatically launches your app and passes it the <doc://com.apple.documentation/documentation/Foundation/NSUserActivity> object from your response object.

---

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)