---
title: AVPlayerInterstitialEvent
framework: avfoundation
role: symbol
role_heading: Class
path: avfoundation/avplayerinterstitialevent
---

# AVPlayerInterstitialEvent

An object that provides instructions for how a player presents interstitial content.

## Declaration

```swift
class AVPlayerInterstitialEvent
```

## Overview

Overview An interstitial event defines a date or time, on the timeline of its primaryItem, at which playback of interstitial content begins. It specifies the alternative interstitial content to play as an array of one or more template player items. The system uses the configuration of the event’s templateItems to build new player item instances to present the interstitial content. Use AVPlayerInterstitialEventMonitor to observe the scheduling and progress of interstitial events. If your app requires specifying the schedule of interstitial events, use AVPlayerInterstitialEventController instead. note: AVPlayerInterstitialEvent was previously an immutable type. Starting in iOS 16, tvOS 16, macOS 13, and watchOS 9, it’s now a mutable type, which allows you to create and customize an event before setting it on an AVPlayerInterstitialEventController.

## Topics

### Creating an event

- [init(primaryItem:time:)](avfoundation/avplayerinterstitialevent/init(primaryitem:time:).md)
- [init(primaryItem:date:)](avfoundation/avplayerinterstitialevent/init(primaryitem:date:).md)
- [init(primaryItem:identifier:time:templateItems:restrictions:resumptionOffset:playoutLimit:userDefinedAttributes:)](avfoundation/avplayerinterstitialevent/init(primaryitem:identifier:time:templateitems:restrictions:resumptionoffset:playoutlimit:userdefinedattributes:).md)
- [init(primaryItem:identifier:date:templateItems:restrictions:resumptionOffset:playoutLimit:userDefinedAttributes:)](avfoundation/avplayerinterstitialevent/init(primaryitem:identifier:date:templateitems:restrictions:resumptionoffset:playoutlimit:userdefinedattributes:).md)

### Identifying events

- [identifier](avfoundation/avplayerinterstitialevent/identifier.md)

### Accessing player items

- [primaryItem](avfoundation/avplayerinterstitialevent/primaryitem.md)
- [templateItems](avfoundation/avplayerinterstitialevent/templateitems.md)

### Configuring cues

- [cue](avfoundation/avplayerinterstitialevent/cue-swift.property.md)
- [AVPlayerInterstitialEvent.Cue](avfoundation/avplayerinterstitialevent/cue-swift.struct.md)

### Inspecting timing

- [time](avfoundation/avplayerinterstitialevent/time.md)
- [date](avfoundation/avplayerinterstitialevent/date.md)
- [willPlayOnce](avfoundation/avplayerinterstitialevent/willplayonce.md)
- [resumptionOffset](avfoundation/avplayerinterstitialevent/resumptionoffset.md)
- [playoutLimit](avfoundation/avplayerinterstitialevent/playoutlimit.md)
- [alignsStartWithPrimarySegmentBoundary](avfoundation/avplayerinterstitialevent/alignsstartwithprimarysegmentboundary.md)
- [alignsResumptionWithPrimarySegmentBoundary](avfoundation/avplayerinterstitialevent/alignsresumptionwithprimarysegmentboundary.md)

### Managing restrictions

- [restrictions](avfoundation/avplayerinterstitialevent/restrictions-swift.property.md)
- [AVPlayerInterstitialEvent.Restrictions](avfoundation/avplayerinterstitialevent/restrictions-swift.struct.md)

### Accessing asset lists

- [assetListResponse](avfoundation/avplayerinterstitialevent/assetlistresponse.md)

### Accessing attributes

- [userDefinedAttributes](avfoundation/avplayerinterstitialevent/userdefinedattributes.md)

### Inspecting timeline occupancy

- [timelineOccupancy](avfoundation/avplayerinterstitialevent/timelineoccupancy-swift.property.md)
- [AVPlayerInterstitialEvent.TimelineOccupancy](avfoundation/avplayerinterstitialevent/timelineoccupancy-swift.enum.md)
- [supplementsPrimaryContent](avfoundation/avplayerinterstitialevent/supplementsprimarycontent.md)
- [contentMayVary](avfoundation/avplayerinterstitialevent/contentmayvary.md)
- [plannedDuration](avfoundation/avplayerinterstitialevent/plannedduration.md)

### Managing skipping behavior

- [skipControlLocalizedLabelBundleKey](avfoundation/avplayerinterstitialevent/skipcontrollocalizedlabelbundlekey.md)
- [skipControlTimeRange](avfoundation/avplayerinterstitialevent/skipcontroltimerange.md)
- [AVPlayerInterstitialEvent.SkippableEventState](avfoundation/avplayerinterstitialevent/skippableeventstate.md)

### Instance Properties

- [scheduleIdentifier](avfoundation/avplayerinterstitialevent/scheduleidentifier.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Interstitials

- [Providing an integrated view of your timeline when playing HLS interstitials](avfoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials.md)
- [AVPlayerInterstitialEventController](avfoundation/avplayerinterstitialeventcontroller.md)
- [AVPlayerInterstitialEventMonitor](avfoundation/avplayerinterstitialeventmonitor.md)
- [AVPlayerInterstitialEventMonitorScheduleRequestErrorKey](avfoundation/avplayerinterstitialeventmonitorschedulerequesterrorkey.md)
- [AVPlayerInterstitialEventMonitorScheduleRequestIdentifierKey](avfoundation/avplayerinterstitialeventmonitorschedulerequestidentifierkey.md)
- [AVPlayerInterstitialEventMonitorScheduleRequestResponseKey](avfoundation/avplayerinterstitialeventmonitorschedulerequestresponsekey.md)
- [AVPlayerItemIntegratedTimeline](avfoundation/avplayeritemintegratedtimeline.md)
