One Logo Pool Ball
AppIntents · IOS API REFERENCE

AppSchema.PhotosIntent

protocol · iOS 18.0+ · SDK 27.1

protocol PhotosIntent : AppSchema.Kind

Identifies intent schemas in the photos domain.

Members (28)

get · iOS 18.0+

pasteEdits

Swift declaration
var pasteEdits: some AppSchemaIntent { get }

An intent schema that pastes edits to the provided photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `pasteEdits` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.pasteEdits)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `pasteEdits` schema: ```swift @AppIntent(schema: .photos.pasteEdits) struct PasteMediaEditsIntent { var target: [<#PhotoEntity#>] func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

straighten

Swift declaration
var straighten: some AppSchemaIntent { get }

An intent schema that straightens a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `straighten` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.straighten)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `straighten` schema: ```swift @AppIntent(schema: .photos.straighten) struct StraightenMediaIntent { var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

createAlbum

Swift declaration
var createAlbum: some AppSchemaIntent { get }

An intent schema that creates an album. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `createAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.createAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `createAlbum` schema: ```swift @AppIntent(schema: .photos.createAlbum) struct CreateMediaAlbumIntent { var name: String func perform() async throws -> some ReturnsValue<<#PhotoAlbumEntity#>> { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

deleteAlbum

Swift declaration
var deleteAlbum: some AppSchemaIntent { get }

An intent schema that deletes the provided albums. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `deleteAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.deleteAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `deleteAlbum` schema: ```swift @AppIntent(schema: .photos.deleteAlbum) struct DeleteMediaAlbumIntent: DeleteIntent { var entities: [<#PhotoAlbumEntity#>] func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

setExposure

Swift declaration
var setExposure: some AppSchemaIntent { get }

An intent schema that configures the exposure for a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `setExposure` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.setExposure)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `setExposure` schema: ```swift @AppIntent(schema: .photos.setExposure) struct SetMediaExposureIntent { var target: <#PhotoEntity#> var value: Double func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

setRotation

Swift declaration
var setRotation: some AppSchemaIntent { get }

An intent schema that rotates a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `setRotation` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.setRotation)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `setRotation` schema: ```swift @AppIntent(schema: .photos.setRotation) struct RotateMediaIntent { var target: <#PhotoEntity#> var direction: <#PhotoRotationDirection#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

toggleDepth

Swift declaration
var toggleDepth: some AppSchemaIntent { get }

An intent schema that toggles depth effect for a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `toggleDepth` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.toggleDepth)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `toggleDepth` schema: ```swift @AppIntent(schema: .photos.toggleDepth) struct SetMediaDepthIntent { var isEnabled: Bool var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

updateAlbum

Swift declaration
var updateAlbum: some AppSchemaIntent { get }

An intent schema that renames the provided album. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `updateAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.updateAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `updateAlbum` schema: ```swift @AppIntent(schema: .photos.updateAlbum) struct UpdateMediaAlbumIntent { var target: <#PhotoAlbumEntity#> var name: String func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

updateAsset

Swift declaration
var updateAsset: some AppSchemaIntent { get }

An intent schema that updates an existing photo’s properties. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `updateAsset` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.updateAsset)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `updateAsset` schema: ```swift @AppIntent(schema: .photos.updateAsset) struct UpdateMediaAssetIntent { var target: [<#PhotoEntity#>] var name: String? var isHidden: Bool? var isFavorite: Bool? func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

cleanupPhoto

Swift declaration
var cleanupPhoto: some AppSchemaIntent { get }

An intent schema that removes distracting objects in a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `cleanupPhoto` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.cleanupPhoto)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `cleanupPhoto` schema: ```swift @AppIntent(schema: .photos.cleanupPhoto) struct CleanupMediaIntent { var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

createAssets

Swift declaration
var createAssets: some AppSchemaIntent { get }

An intent schema that creates photos from the provided files. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `createAssets` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.createAssets)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `createAssets` schema: ```swift @AppIntent(schema: .photos.createAssets) struct CreateMediaAssetsIntent { var files: [IntentFile] func perform() async throws -> some ReturnsValue<[<#PhotoEntity#>]> { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

deleteAssets

Swift declaration
var deleteAssets: some AppSchemaIntent { get }

An intent schema that deletes the provided photos. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `deleteAssets` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.deleteAssets)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `deleteAssets` schema: ```swift @AppIntent(schema: .photos.deleteAssets) struct DeleteMediaAssetsIntent: DeleteIntent { var entities: [<#PhotoEntity#>] func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

setSaturation

Swift declaration
var setSaturation: some AppSchemaIntent { get }

An intent schema that configures the saturation for a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `setSaturation` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.setSaturation)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `setSaturation` schema: ```swift @AppIntent(schema: .photos.setSaturation) struct SetMediaSaturationIntent { var target: <#PhotoEntity#> var value: Double func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

duplicateAssets

Swift declaration
var duplicateAssets: some AppSchemaIntent { get }

An intent schema that duplicates the selected photos. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `duplicateAssets` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.duplicateAssets)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `duplicateAssets` schema: ```swift @AppIntent(schema: .photos.duplicateAssets) struct DuplicateMediaAssetsIntent { var entities: [<#PhotoEntity#>] func perform() async throws -> some ReturnsValue<[<#PhotoEntity#>]> { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

addAssetsToAlbum

Swift declaration
var addAssetsToAlbum: some AppSchemaIntent { get }

An intent schema that adds the provided photos to the provided album. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `addAssetsToAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.addAssetsToAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `addAssetsToAlbum` schema: ```swift @AppIntent(schema: .photos.addAssetsToAlbum) struct AddMediaAssetsToAlbumIntent { var assets: [<#PhotoEntity#>] var album: <#PhotoAlbumEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

postToSharedAlbum

Swift declaration
var postToSharedAlbum: some AppSchemaIntent { get }

An intent schema that posts the provided photos or files and optional comment to the provided shared album. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `postToSharedAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.postToSharedAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `postToSharedAlbum` schema: ```swift @AppIntent(schema: .photos.postToSharedAlbum) struct PostToSharedAlbumIntent { var sharedAlbum: <#PhotoAlbumEntity#> var assets: [<#PhotoEntity#>]? var files: [IntentFile]? var comment: String? func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

toggleSuggestedEdits

Swift declaration
var toggleSuggestedEdits: some AppSchemaIntent { get }

An intent schema that enhances a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `toggleSuggestedEdits` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.toggleSuggestedEdits)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `toggleSuggestedEdits` schema: ```swift @AppIntent(schema: .photos.toggleSuggestedEdits) struct EnhanceMediaIntent { var target: <#PhotoEntity#> var isEnabled: Bool func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

removeAssetsFromAlbum

Swift declaration
var removeAssetsFromAlbum: some AppSchemaIntent { get }

An intent schema that removes the provided photos from the provided album. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `removeAssetsFromAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.removeAssetsFromAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `removeAssetsFromAlbum` schema: ```swift @AppIntent(schema: .photos.removeAssetsFromAlbum) struct RemoveMediaAssetsFromAlbumIntent { var assets: [<#PhotoEntity#>] var album: <#PhotoAlbumEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

updateRecognizedPerson

Swift declaration
var updateRecognizedPerson: some AppSchemaIntent { get }

An intent schema that updates the provided person with new properties. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `updateRecognizedPerson` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.updateRecognizedPerson)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `updateRecognizedPerson` schema: ```swift @AppIntent(schema: .photos.updateRecognizedPerson) struct UpdateMediaPersonIntent { var target: <#PhotoPersonEntity#> var isFavorite: Bool? var name: String? func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

crop

Swift declaration
var crop: some AppSchemaIntent { get }

An intent schema that crops a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `crop` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.crop)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `crop` schema: ```swift @AppIntent(schema: .photos.crop) struct CropMediaIntent { var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+ · Deprecated in iOS 27.0

search

Swift declaration
var search: some AppSchemaIntent { get }

An intent schema that navigates to search results. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `search` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.search)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `search` schema: ```swift @AppIntent(schema: .photos.search) struct SearchMediaIntent: ShowInAppSearchResultsIntent { static var searchScopes: [StringSearchScope] = [.general] var criteria: StringSearchCriteria func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

setDepth

Swift declaration
var setDepth: some AppSchemaIntent { get }

An intent schema that sets the depth value of a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `setDepth` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.setDepth)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `setDepth` schema: ```swift @AppIntent(schema: .photos.setDepth) struct SetMediaApertureIntent { var target: <#PhotoEntity#> var value: Double func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

copyEdits

Swift declaration
var copyEdits: some AppSchemaIntent { get }

An intent schema that copies edits from the provided photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `copyEdits` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.copyEdits)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `copyEdits` schema: ```swift @AppIntent(schema: .photos.copyEdits) struct CopyMediaEditsIntent { var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 27.0+

editAsset

Swift declaration
var editAsset: some AppSchemaIntent { get }

An intent schema that opens a photo for editing. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `editAsset` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.editAsset)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `editAsset` schema: ```swift @AppIntent(schema: .photos.editAsset) struct EditAsset { var asset: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

openAlbum

Swift declaration
var openAlbum: some AppSchemaIntent { get }

An intent schema that opens the provided album. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `openAlbum` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.openAlbum)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `openAlbum` schema: ```swift @AppIntent(schema: .photos.openAlbum) struct OpenMediaAlbumIntent: OpenIntent { var target: <#PhotoAlbumEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+ · Deprecated in iOS 27.0

openAsset

Swift declaration
var openAsset: some AppSchemaIntent { get }

An intent schema that opens the app to a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `openAsset` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.openAsset)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `openAsset` schema: ```swift @AppIntent(schema: .photos.openAsset) struct OpenMediaAssetIntent: OpenIntent { var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

setFilter

Swift declaration
var setFilter: some AppSchemaIntent { get }

An intent schema that applies a filter to a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `setFilter` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.setFilter)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `setFilter` schema: ```swift @AppIntent(schema: .photos.setFilter) struct ApplyMediaFilterIntent { var filterType: <#PhotoFilterEffectType#> var target: <#PhotoEntity#> func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 18.0+

setWarmth

Swift declaration
var setWarmth: some AppSchemaIntent { get }

An intent schema that configures the warmth for a photo. To make your app's actions available to Apple Intelligence, conform your ``AppIntent`` to a schema that describes your action to the system. If your app's functionality aligns with the `photos` domain and one of your app's actions matches the `setWarmth` schema, you can generate the properties and protocol conformance the schema requires for your intent implementation with the `@AppIntent( .photos.setWarmth)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an intent that conforms to the `setWarmth` schema: ```swift @AppIntent(schema: .photos.setWarmth) struct SetMediaWarmthIntent { var target: <#PhotoEntity#> var value: Double func perform() async throws -> some IntentResult { <#code#> } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

Skipped declarations

No declarations were skipped in this snapshot.

All AppIntents types →