---
title: App intents
framework: appintents
role: collectionGroup
role_heading: API Collection
path: appintents/app-intents
---

# App intents

Make your app’s custom actions available to the system by using app intent types.

## Overview

Overview An app intent expresses one of your app’s capabilities to the system, and contains code to perform that action. You express your app intents as types that adopt the AppIntent protocol and specify the data you need to perform the action. For specific types of actions, you might also base your intents on other App intent types. For example, if your app intent launches your app and displays some content, use the OpenIntent protocol instead. If an app intent supports system features, adopt a schema from an App schema domains. If your app intent requires data to complete its action, specify those data requirements using parameters. An app intent parameter is a property that you annotate with the @Parameter macro. To improve the experience of specifying parameter values, include parameter summaries. An intent returns a result to tell the system when it completes its action, and whether the action was successful or failed. A result can also provide textual or view-based content for Siri or the Shortcuts app to incorporate into conversations.

## Topics

### App intent definition

- [Creating your first app intent](appintents/creating-your-first-app-intent.md)
- [Accelerating app interactions with App Intents](appintents/acceleratingappinteractionswithappintents.md)
- [Soup Chef with App Intents: Migrating custom intents](sirikit/soup-chef-with-app-intents-migrating-custom-intents.md)
- [AppIntent](appintents/appintent.md)
- [App intent types](appintents/app-intent-types.md)

### Add-on behaviors

- [UndoableIntent](appintents/undoableintent.md)
- [CancellableIntent](appintents/cancellableintent.md)
- [LongRunningIntent](appintents/longrunningintent.md)
- [PredictableIntent](appintents/predictableintent.md)
- [IntentPrediction](appintents/intentprediction.md)

### Parameters

- [Adding parameters to an app intent](appintents/adding-parameters-to-an-app-intent.md)
- [IntentParameter](appintents/intentparameter.md)
- [IntentParameterDependency](appintents/intentparameterdependency.md)
- [IntentParameterContext](appintents/intentparametercontext.md)
- [InputConnectionBehavior](appintents/inputconnectionbehavior.md)
- [DynamicOptionsProvider](appintents/dynamicoptionsprovider.md)
- [Resolvers](appintents/resolvers.md)

### Disambiguation

- [IntentChoiceOption](appintents/intentchoiceoption.md)
- [ConfirmationConditions](appintents/confirmationconditions.md)

### Results

- [IntentResult](appintents/intentresult.md)
- [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)

### Dependency management

- [AppDependencyManager](appintents/appdependencymanager.md)
- [AppDependency](appintents/appdependency.md)

### Shortcuts support

- [ParameterSummary](appintents/parametersummary.md)
- [IntentParameterSummary](appintents/intentparametersummary.md)
- [ParameterSummaryString](appintents/parametersummarystring.md)
- [ParameterSummaryWhenCondition](appintents/parametersummarywhencondition.md)
- [ParameterSummarySwitchCondition](appintents/parametersummaryswitchcondition.md)
- [ParameterSummaryCaseCondition](appintents/parametersummarycasecondition.md)
- [ParameterSummaryDefaultCaseCondition](appintents/parametersummarydefaultcasecondition.md)

### Intent-related data

- [IntentModes](appintents/intentmodes.md)
- [IntentSystemContext](appintents/intentsystemcontext.md)
- [IntentDescription](appintents/intentdescription.md)
- [IntentDialog](appintents/intentdialog.md)
- [IntentDeprecation](appintents/intentdeprecation.md)
- [IntentProjection](appintents/intentprojection.md)

### Type conversions

- [IntentValueConvertible](appintents/intentvalueconvertible.md)
- [IntentValueConvertibleWrapper](appintents/intentvalueconvertiblewrapper.md)
- [IntentValueExpressing](appintents/intentvalueexpressing.md)

### Intent queries

- [IntentValueQuery](appintents/intentvaluequery.md)
- [IntentValueContainer](appintents/intentvaluecontainer.md)
- [IntentValueExpression](appintents/intentvalueexpression.md)

## See Also

### App-specific content

- [App entities](appintents/app-entities.md)
- [App enums](appintents/app-enums.md)
- [Common data types](appintents/common-data-types.md)
- [App extension](appintents/app-extension.md)
