<!--
{
  "documentType" : "article",
  "framework" : "SiriKit",
  "identifier" : "/documentation/SiriKit/media",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Media"
}
-->

# Media

Listen and control audio through Siri Intents, or listen and watch media content from your app with shortcuts.

## Discussion

With the Media domain, users can play and control audio media in your app. Your Intents app extension directs any media-related requests to your app, which then handles the request.

Siri can suggest shortcuts to audio available in your app when the user wants to listen to the content. For example, Siri may suggest a playlist to the user after they connect headphones to their iPhone. These suggestions give the user a convenient way to play the media in your app.

In order for Siri to suggest media content, you should donate an [`INPlayMediaIntent`](/documentation/Intents/INPlayMediaIntent) object to Siri after the user plays the content (see <doc://com.apple.documentation/documentation/SiriKit/donating-shortcuts>). To have Siri suggest new media that might be of interest to the user, save [`INPlayMediaIntent`](/documentation/Intents/INPlayMediaIntent) shortcuts for the new content to the [`INUpcomingMediaManager`](/documentation/Intents/INUpcomingMediaManager).

## Topics

### Essentials

  <doc://com.apple.sirikit/documentation/SiriKit/improving-siri-media-interactions-and-app-selection>

  <doc://com.apple.sirikit/documentation/SiriKit/managing-audio-with-sirikit>

### Playable Media Intents

[`INPlayMediaIntentHandling`](/documentation/Intents/INPlayMediaIntentHandling)

The interface an object implements to confirm and handle play media intents.

[`INPlayMediaIntent`](/documentation/Intents/INPlayMediaIntent)

An intent that contains information about media playable from your app.

[`INPlayMediaIntentResponse`](/documentation/Intents/INPlayMediaIntentResponse)

An intents handler’s response to a play media intent.

### Add Media

[`INAddMediaIntentHandling`](/documentation/Intents/INAddMediaIntentHandling)

The handler interface that adds media.

[`INAddMediaIntent`](/documentation/Intents/INAddMediaIntent)

A request to add a media item.

[`INAddMediaIntentResponse`](/documentation/Intents/INAddMediaIntentResponse)

An intents handler’s response to an add media intent.

### Search for Media

[`INSearchForMediaIntentHandling`](/documentation/Intents/INSearchForMediaIntentHandling)

The interface that handles media search requests.

[`INSearchForMediaIntent`](/documentation/Intents/INSearchForMediaIntent)

A request to search for a media item.

[`INSearchForMediaIntentResponse`](/documentation/Intents/INSearchForMediaIntentResponse)

An intents handler’s response to a search media intent.

### Update Media Affinity

[`INUpdateMediaAffinityIntentHandling`](/documentation/Intents/INUpdateMediaAffinityIntentHandling)

The interface that handles requests to update the user’s preference for a media item.

[`INUpdateMediaAffinityIntent`](/documentation/Intents/INUpdateMediaAffinityIntent)

A request to update the user’s affinity for a media item.

[`INUpdateMediaAffinityIntentResponse`](/documentation/Intents/INUpdateMediaAffinityIntentResponse)

An intents handler’s response to an update media affinity intent.

### User Context

[`INUserContext`](/documentation/Intents/INUserContext)

An object that provides user information to Siri.

[`INMediaUserContext`](/documentation/Intents/INMediaUserContext)

An object that provides user information to Siri.

### Data Objects

[`INMediaItem`](/documentation/Intents/INMediaItem)

An object that describes a piece of media content, such as a song, TV show, artist, or podcast playlist.

[`INMediaSearch`](/documentation/Intents/INMediaSearch)

An object that describes a media type to search for, such as a station name, song name, or album name.

### Upcoming Media

[`INUpcomingMediaManager`](/documentation/Intents/INUpcomingMediaManager)

The manager object you use to suggest media to the user.

### Resolution Results

[`INAddMediaMediaDestinationResolutionResult`](/documentation/Intents/INAddMediaMediaDestinationResolutionResult)

A resolution result for the types of destinations when adding media.

[`INAddMediaMediaItemResolutionResult`](/documentation/Intents/INAddMediaMediaItemResolutionResult)

A resolution result for the media item to add.

[`INMediaDestinationResolutionResult`](/documentation/Intents/INMediaDestinationResolutionResult)

A resolution result for the media destination types.

[`INMediaItemResolutionResult`](/documentation/Intents/INMediaItemResolutionResult)

A resolution result for media item types.

[`INMediaAffinityTypeResolutionResult`](/documentation/Intents/INMediaAffinityTypeResolutionResult)

A resolution result for the user’s affinity for a media item.

[`INPlayMediaMediaItemResolutionResult`](/documentation/Intents/INPlayMediaMediaItemResolutionResult)

A resolution result for the media item to play.

[`INPlayMediaPlaybackSpeedResolutionResult`](/documentation/Intents/INPlayMediaPlaybackSpeedResolutionResult)

A resolution result that determines the playback speed of a media item.

[`INPlaybackRepeatModeResolutionResult`](/documentation/Intents/INPlaybackRepeatModeResolutionResult)

A resolution result for the playback repeat modes of a media item.

[`INPlaybackQueueLocationResolutionResult`](/documentation/Intents/INPlaybackQueueLocationResolutionResult)

A resolution result for the requested playback queue location.

[`INSearchForMediaMediaItemResolutionResult`](/documentation/Intents/INSearchForMediaMediaItemResolutionResult)

A resolution result for the media item for which to search.

[`INUpdateMediaAffinityMediaItemResolutionResult`](/documentation/Intents/INUpdateMediaAffinityMediaItemResolutionResult)

A resolution result for updating the user’s affinity for a media item.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)