<!--
{
  "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

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

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

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

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

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

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

### Add Media

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

The handler interface that adds media.

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

A request to add a media item.

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

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

### Search for Media

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

The interface that handles media search requests.

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

A request to search for a media item.

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

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

### Update Media Affinity

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

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

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

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

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

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

### User Context

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

An object that provides user information to Siri.

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

An object that provides user information to Siri.

### Data Objects

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

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

[`class 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

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

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

### Resolution Results

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

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

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

A resolution result for the media item to add.

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

A resolution result for the media destination types.

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

A resolution result for media item types.

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

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

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

A resolution result for the media item to play.

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

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

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

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

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

A resolution result for the requested playback queue location.

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

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

[`class 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)