# IInteractionService

- Kind: `interface`
- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Version: `13.3.0`
- Namespace: `Aspire.Hosting`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/IInteractionService.cs)

A service to interact with the current development environment.

## Definition

```csharp
namespace Aspire.Hosting;

public interface IInteractionService
{
    // ...
}
```

## Properties

- [IsAvailable](/reference/api/csharp/aspire.hosting/iinteractionservice/properties.md#isavailable) : `bool` `abstract` `get` -- Gets a value indicating whether the interaction service is available. If `false`, this service is not available to interact with the user and service methods will throw an exception.

## Methods

- [PromptConfirmationAsync(string, string, MessageBoxInteractionOptions?, CancellationToken)](/reference/api/csharp/aspire.hosting/iinteractionservice/methods.md#promptconfirmationasync-string-string-messageboxinteractionoptions-cancellationtoken) : `Task<InteractionResult<bool>>` `abstract` -- Prompts the user for confirmation with a dialog.
- [PromptInputAsync(string, string?, string, string, InputsDialogInteractionOptions?, CancellationToken)](/reference/api/csharp/aspire.hosting/iinteractionservice/methods.md#promptinputasync-string-string-string-string-inputsdialoginteractionoptions-cancellationtoken) : `Task<InteractionResult<InteractionInput>>` `abstract` -- Prompts the user for a single text input.
- [PromptInputAsync(string, string?, InteractionInput, InputsDialogInteractionOptions?, CancellationToken)](/reference/api/csharp/aspire.hosting/iinteractionservice/methods.md#promptinputasync-string-string-interactioninput-inputsdialoginteractionoptions-cancellationtoken) : `Task<InteractionResult<InteractionInput>>` `abstract` -- Prompts the user for a single input using a specified [InteractionInput](/reference/api/csharp/aspire.hosting/interactioninput.md).
- [PromptInputsAsync(string, string?, IReadOnlyList<InteractionInput>, InputsDialogInteractionOptions?, CancellationToken)](/reference/api/csharp/aspire.hosting/iinteractionservice/methods.md#promptinputsasync-string-string-ireadonlylist-interactioninput-inputsdialoginteractionoptions-cancellationtoken) : `Task<InteractionResult<InteractionInputCollection>>` `abstract` -- Prompts the user for multiple inputs.
- [PromptMessageBoxAsync(string, string, MessageBoxInteractionOptions?, CancellationToken)](/reference/api/csharp/aspire.hosting/iinteractionservice/methods.md#promptmessageboxasync-string-string-messageboxinteractionoptions-cancellationtoken) : `Task<InteractionResult<bool>>` `abstract` -- Prompts the user with a message box dialog.
- [PromptNotificationAsync(string, string, NotificationInteractionOptions?, CancellationToken)](/reference/api/csharp/aspire.hosting/iinteractionservice/methods.md#promptnotificationasync-string-string-notificationinteractionoptions-cancellationtoken) : `Task<InteractionResult<bool>>` `abstract` -- Prompts the user with a notification.
