---
title: NSExtensionContext
framework: foundation
role: symbol
role_heading: Class
path: foundation/nsextensioncontext
---

# NSExtensionContext

The host app context from which an app extension is invoked.

## Declaration

```swift
class NSExtensionContext
```

## Overview

Overview When a host app sends a request to an app extension, it provides an extension context. For many app extensions, the most important part of the context is the data the user wants to work with, which is contained in the inputItems property.

## Topics

### Handling requests

- [completeRequest(returningItems:completionHandler:)](foundation/nsextensioncontext/completerequest(returningitems:completionhandler:).md)
- [cancelRequest(withError:)](foundation/nsextensioncontext/cancelrequest(witherror:).md)
- [NSExtensionItemsAndErrorsKey](foundation/nsextensionitemsanderrorskey.md)

### Opening URLs

- [open(_:completionHandler:)](foundation/nsextensioncontext/open(_:completionhandler:).md)

### Storing extension items

- [inputItems](foundation/nsextensioncontext/inputitems.md)

### Controlling media playback in notification content extensions

- [mediaPlayingStarted()](foundation/nsextensioncontext/mediaplayingstarted().md)
- [mediaPlayingPaused()](foundation/nsextensioncontext/mediaplayingpaused().md)

### Populating your share extension with metadata

- [intent](foundation/nsextensioncontext/intent.md)

### Getting Siri-related information

- [hostedViewMinimumAllowedSize](foundation/nsextensioncontext/hostedviewminimumallowedsize.md)
- [hostedViewMaximumAllowedSize](foundation/nsextensioncontext/hostedviewmaximumallowedsize.md)
- [interfaceParametersDescription()](foundation/nsextensioncontext/interfaceparametersdescription().md)

### Supporting broadcasting

- [loadBroadcastingApplicationInfo(completion:)](foundation/nsextensioncontext/loadbroadcastingapplicationinfo(completion:).md)
- [completeRequest(withBroadcast:setupInfo:)](foundation/nsextensioncontext/completerequest(withbroadcast:setupinfo:).md)

### Handling notification actions

- [notificationActions](foundation/nsextensioncontext/notificationactions.md)
- [performNotificationDefaultAction()](foundation/nsextensioncontext/performnotificationdefaultaction().md)
- [dismissNotificationContentExtension()](foundation/nsextensioncontext/dismissnotificationcontentextension().md)

### Working with notifications

- [NSExtensionHostDidBecomeActive](foundation/nsnotification/name-swift.struct/nsextensionhostdidbecomeactive.md)
- [NSExtensionHostWillResignActive](foundation/nsnotification/name-swift.struct/nsextensionhostwillresignactive.md)
- [NSExtensionHostDidEnterBackground](foundation/nsnotification/name-swift.struct/nsextensionhostdidenterbackground.md)
- [NSExtensionHostWillEnterForeground](foundation/nsnotification/name-swift.struct/nsextensionhostwillenterforeground.md)

### Working with notification messages

- [NSExtensionContext.DidBecomeActiveMessage](foundation/nsextensioncontext/didbecomeactivemessage.md)
- [NSExtensionContext.WillResignActiveMessage](foundation/nsextensioncontext/willresignactivemessage.md)
- [NSExtensionContext.DidEnterBackgroundMessage](foundation/nsextensioncontext/didenterbackgroundmessage.md)
- [NSExtensionContext.WillEnterForegroundMessage](foundation/nsextensioncontext/willenterforegroundmessage.md)

### Deprecated

- [completeRequest(withBroadcast:broadcastConfiguration:setupInfo:)](foundation/nsextensioncontext/completerequest(withbroadcast:broadcastconfiguration:setupinfo:).md)
- [widgetActiveDisplayMode](foundation/nsextensioncontext/widgetactivedisplaymode.md)
- [widgetLargestAvailableDisplayMode](foundation/nsextensioncontext/widgetlargestavailabledisplaymode.md)
- [widgetMaximumSize(for:)](foundation/nsextensioncontext/widgetmaximumsize(for:).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)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Extension Support

- [NSExtensionRequestHandling](foundation/nsextensionrequesthandling.md)
