---
title: IntentResult
framework: appintents
role: symbol
role_heading: Protocol
path: appintents/intentresult
---

# IntentResult

A type that contains the result of performing an action, and includes optional information to deliver back to the initiator.

## Declaration

```swift
protocol IntentResult : Sendable
```

## Overview

Overview Instead of implementing this protocol, use the ReturnsValue, OpensAppIntent, ProvidesDialog, and ShowsSnippetView type aliases on your perform() implementation in combination with the result() methods as shown in the following example: func perform() async throws -> some ReturnsValue<Int> & OpensAppIntent {     .result(value: 1, opensIntent: MyOpensIntent()) }

## Topics

### Getting the result value

- [value](appintents/intentresult/value-swift.property.md)

### Communicating the result to the user

- [Dialog](appintents/intentresult/dialog.md)

### Associated Types

- [OpensAppIntent](appintents/intentresult/opensappintent.md)
- [Snippet](appintents/intentresult/snippet.md)
- [Value](appintents/intentresult/value-swift.associatedtype.md)

### Type Methods

- [result()](appintents/intentresult/result().md)
- [result(actionButtonIntent:)](appintents/intentresult/result(actionbuttonintent:).md)
- [result(actionButtonIntent:activityIdentifier:)](appintents/intentresult/result(actionbuttonintent:activityidentifier:).md)
- [result(actionButtonIntent:activityIdentifier:dialog:)](appintents/intentresult/result(actionbuttonintent:activityidentifier:dialog:).md)
- [result(actionButtonIntent:dialog:)](appintents/intentresult/result(actionbuttonintent:dialog:).md)
- [result(content:)](appintents/intentresult/result(content:).md)
- [result(dialog:)](appintents/intentresult/result(dialog:).md)
- [result(dialog:content:)](appintents/intentresult/result(dialog:content:).md)
- [result(dialog:snippetIntent:)](appintents/intentresult/result(dialog:snippetintent:).md)
- [result(dialog:view:)](appintents/intentresult/result(dialog:view:).md)
- [result(opensIntent:)](appintents/intentresult/result(opensintent:)-8t8q8.md)
- [result(opensIntent:content:)](appintents/intentresult/result(opensintent:content:)-2h5ux.md)
- [result(opensIntent:content:)](appintents/intentresult/result(opensintent:content:)-965vk.md)
- [result(opensIntent:dialog:)](appintents/intentresult/result(opensintent:dialog:)-64q5v.md)
- [result(opensIntent:dialog:content:)](appintents/intentresult/result(opensintent:dialog:content:)-2g81m.md)
- [result(opensIntent:dialog:content:)](appintents/intentresult/result(opensintent:dialog:content:)-9kg66.md)
- [result(opensIntent:dialog:snippetIntent:)](appintents/intentresult/result(opensintent:dialog:snippetintent:).md)
- [result(opensIntent:dialog:view:)](appintents/intentresult/result(opensintent:dialog:view:)-1w6b6.md)
- [result(opensIntent:dialog:view:)](appintents/intentresult/result(opensintent:dialog:view:)-8wkpg.md)
- [result(opensIntent:snippetIntent:)](appintents/intentresult/result(opensintent:snippetintent:).md)
- [result(opensIntent:view:)](appintents/intentresult/result(opensintent:view:)-4l1d4.md)
- [result(opensIntent:view:)](appintents/intentresult/result(opensintent:view:)-5hm2s.md)
- [result(snippetIntent:)](appintents/intentresult/result(snippetintent:).md)
- [result(value:)](appintents/intentresult/result(value:).md)
- [result(value:actionButtonIntent:)](appintents/intentresult/result(value:actionbuttonintent:).md)
- [result(value:actionButtonIntent:activityIdentifier:)](appintents/intentresult/result(value:actionbuttonintent:activityidentifier:).md)
- [result(value:actionButtonIntent:activityIdentifier:dialog:)](appintents/intentresult/result(value:actionbuttonintent:activityidentifier:dialog:).md)
- [result(value:actionButtonIntent:dialog:)](appintents/intentresult/result(value:actionbuttonintent:dialog:).md)
- [result(value:content:)](appintents/intentresult/result(value:content:).md)
- [result(value:dialog:)](appintents/intentresult/result(value:dialog:).md)
- [result(value:dialog:content:)](appintents/intentresult/result(value:dialog:content:).md)
- [result(value:dialog:snippetIntent:)](appintents/intentresult/result(value:dialog:snippetintent:).md)
- [result(value:dialog:view:)](appintents/intentresult/result(value:dialog:view:).md)
- [result(value:opensIntent:)](appintents/intentresult/result(value:opensintent:)-8v5op.md)
- [result(value:opensIntent:content:)](appintents/intentresult/result(value:opensintent:content:)-2f6ht.md)
- [result(value:opensIntent:content:)](appintents/intentresult/result(value:opensintent:content:)-95tmb.md)
- [result(value:opensIntent:dialog:)](appintents/intentresult/result(value:opensintent:dialog:)-1eg3x.md)
- [result(value:opensIntent:dialog:content:)](appintents/intentresult/result(value:opensintent:dialog:content:)-4iwem.md)
- [result(value:opensIntent:dialog:content:)](appintents/intentresult/result(value:opensintent:dialog:content:)-mwwf.md)
- [result(value:opensIntent:dialog:snippetIntent:)](appintents/intentresult/result(value:opensintent:dialog:snippetintent:).md)
- [result(value:opensIntent:dialog:view:)](appintents/intentresult/result(value:opensintent:dialog:view:)-5sg4p.md)
- [result(value:opensIntent:dialog:view:)](appintents/intentresult/result(value:opensintent:dialog:view:)-88j6a.md)
- [result(value:opensIntent:snippetIntent:)](appintents/intentresult/result(value:opensintent:snippetintent:).md)
- [result(value:opensIntent:view:)](appintents/intentresult/result(value:opensintent:view:)-12wbo.md)
- [result(value:opensIntent:view:)](appintents/intentresult/result(value:opensintent:view:)-5z5t0.md)
- [result(value:snippetIntent:)](appintents/intentresult/result(value:snippetintent:).md)
- [result(value:view:)](appintents/intentresult/result(value:view:).md)
- [result(view:)](appintents/intentresult/result(view:).md)

### Default Implementations

- [IntentResult Implementations](appintents/intentresult/intentresult-implementations.md)

## Relationships

### Inherits From

- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

### Inherited By

- [OpensIntent](appintents/opensintent.md)
- [ProvidesDialog](appintents/providesdialog.md)
- [ReturnsValue](appintents/returnsvalue.md)
- [ShowsSnippetIntent](appintents/showssnippetintent.md)
- [ShowsSnippetView](appintents/showssnippetview.md)

### Conforming Types

- [IntentResultContainer](appintents/intentresultcontainer.md)

## See Also

### Results

- [IntentDialog](appintents/intentdialog.md)
- [IntentResultContainer](appintents/intentresultcontainer.md)
- [ProvidesDialog](appintents/providesdialog.md)
- [ReturnsValue](appintents/returnsvalue.md)
- [ShowsSnippetView](appintents/showssnippetview.md)
- [ResultsCollection](appintents/resultscollection.md)
- [OpensIntent](appintents/opensintent.md)
