<!--
{
  "availability" : [
    "iOS: 11.0.0 - 27.0.0",
    "iPadOS: 11.0.0 - 27.0.0",
    "macCatalyst: 13.1.0 - 27.0.0",
    "visionOS: 1.0.0 - 27.0.0",
    "watchOS: 4.0.0 - 27.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "SiriKit",
  "identifier" : "/documentation/Intents/INTaskResolutionResult/disambiguation(with:)",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "Intents"
    ],
    "preciseIdentifier" : "c:objc(cs)INTaskResolutionResult(cm)disambiguationWithTasksToDisambiguate:"
  },
  "title" : "disambiguation(with:)"
}
-->

# disambiguation(with:)

Creates an object whose resolution requires the user to select from among the specified objects.

```
class func disambiguation(with tasksToDisambiguate: [INTask]) -> Self
```

## Parameters

`tasksToDisambiguate`

An array of [`INTask`](/documentation/Intents/INTask) objects for the user to choose from.

## Return Value

A new [`INTaskResolutionResult`](/documentation/Intents/INTaskResolutionResult) object.

## Discussion

Use this method to create a result object when more than one task matches the given information and you cannot pick one definitively. Ask the user to select from among the tasks that you specify.

For each [`INTask`](/documentation/Intents/INTask) object that you provide, include enough information to be able to locate that task again later. When the user selects one of the tasks, SiriKit puts the details from your [`INTask`](/documentation/Intents/INTask) object into the intent and asks you to resolve the task again. Therefore, you might assign a unique value to the [`identifier`](/documentation/Intents/INTask/identifier) property of the task so that you can perform a fast lookup of the selected task during the second resolution pass.

---

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)