---
title: "resolveOutgoingMessageType(for:with:)"
framework: intents
role: symbol
role_heading: Instance Method
path: "intents/insendmessageintenthandling/resolveoutgoingmessagetype(for:with:)"
---

# resolveOutgoingMessageType(for:with:)

Determines what type of message to send.

## Declaration

```swift
optional func resolveOutgoingMessageType(for intent: INSendMessageIntent, with completion: @escaping @Sendable (INOutgoingMessageTypeResolutionResult) -> Void)
```

```swift
optional func resolveOutgoingMessageType(for intent: INSendMessageIntent) async -> INOutgoingMessageTypeResolutionResult
```

## Parameters

- `intent`: The intent object that contains details about the user’s request. Use this object to get the initial information, if any, provided by the user.
- `completion`: The block to execute with the resolution. You must execute this block while implementing this method. This block has no return value and takes the following parameter:

## Discussion

Discussion If you can’t handle messages of the type specified in the intent’s outgoingMessageType, create a result with unsupported() and provide that when you call the completion handler.

## See Also

### Resolving the Intent Parameters

- [resolveRecipients(for:with:)](intents/insendmessageintenthandling/resolverecipients(for:with:)-609yw.md)
- [resolveContent(for:with:)](intents/insendmessageintenthandling/resolvecontent(for:with:).md)
- [resolveSpeakableGroupName(for:with:)](intents/insendmessageintenthandling/resolvespeakablegroupname(for:with:).md)
