---
title: "requestChoice(between:dialog:)"
framework: appintents
role: symbol
role_heading: Instance Method
path: "appintents/appintent/requestchoice(between:dialog:)"
---

# requestChoice(between:dialog:)

Pauses the app intent and asks the person to choose an option from the specified list.

## Declaration

```swift
func requestChoice(between options: [IntentChoiceOption], dialog: IntentDialog? = nil) async throws -> IntentChoiceOption
```

## Parameters

- `options`: The options to choose from. The prompt displays the options in the same order as they appear in the array, with one exception. If the list includes the doc://com.apple.AppIntents/documentation/AppIntents/IntentChoiceOption/cancel option, the system places that option according to the platform’s conventions.
- `dialog`: The localized text you want the system to display or speak. Provide instructional text or a question to help the person choose an option.

## Return Value

Return Value The option the person chose.

## Discussion

Discussion note: An error if the person chooses a cancel option from the interface. Call this method from the perform() method of your app intent when you need someone to confirm an action, disambiguate from a set of possibilities, or select an intent-specific behavior before proceeding. The system displays a standard interface with the provided set of options and asks the person to choose one. When someone makes a selection, the method returns the option and your app intent continues to run. This method throws an error if someone cancels the request using a cancel button, a cancel option, or a system-provided gesture.

## See Also

### Requesting more information

- [requestChoice(between:dialog:content:)](appintents/appintent/requestchoice(between:dialog:content:).md)
- [requestChoice(between:dialog:view:)](appintents/appintent/requestchoice(between:dialog:view:).md)
