App extensions

App extensions let you extend custom functionality and content beyond your app and make it available to users while they’re interacting with other apps or the system. For example, your app can appear as a widget on the Home Screen, add new buttons in the action sheet, offer photo filters within the Photos app, or automatically upgrade users’ accounts to use strong passwords or Sign in with Apple. Use extensions to place the power of your app wherever your users need it most.

Types of app extensions

iOS, iPadOS, macOS, tvOS, visionOS, and watchOS support several types of extensions, each of which is tied to a single, well-scoped area of the system — such as sharing, Notification Center, or Safari.

Extension PointDescriptioniOS/iPadOSmacOStvOSvisionOSwatchOS
ActionAdd custom actions to the share sheet to invoke your app’s functionality from any app.
Audio UnitCreate and modify audio in any app that uses sound, including music production apps such as GarageBand or Logic Pro X.
Authentication ServicesStreamline authentication for users by enabling single sign-on.
Account Authentication ModificationAutomatically upgrade user passwords to strong passwords, or convert accounts to use Sign in with Apple.
AutoFill Credential ProviderSurface credentials from your app in Password Autofill and pull your app’s password data into the Password AutoFill workflow.
Call DirectoryDisplay caller identification from your appʼs custom contact list so users know who’s calling.
ClassKit Content ProviderUpdate the status of your appʼs activities so that status is visible in the Schoolwork app.
Contact ProviderProvide contact items to the system-wide Contacts ecosystem.
Content BlockerProvide rules for hiding elements, blocking loads, and stripping cookies from Safari requests.
Custom KeyboardProvide systemwide customized text input for unique input methods or specific languages.
File ProviderLet other apps access the documents and directories stored and managed by your app.
File Provider UIAdd custom actions to the document browserʼs context menu for documents that your app manages.
Finder SyncKeep files in sync with a back-end storage service.
iMessageAllow users to send text, stickers, media files, and interactive messages.
IntentsLet users interact with your app using Siri.
Intents UICustomize the interface for interactions with your app in Siri conversations or Maps.
Live Caller ID LookupProvide caller ID and call-blocking services from a server you maintain. Available in iOS only.
Location Push ServiceEnables a location sharing app, with a user’s authorization, to query a user’s location in response to a push from Apple Push Notification service (APNs).
MailEnhance Mail by adding custom actions, blocking content, signing and encoding messages, and more.
Message FilterIdentify and filter unwanted SMS and MMS messages.
NetworkProvide system-level networking services such as VPN, proxies, or content filtering.
Notification CenterCustomize the appearance of your app’s notification alerts.
Notification ServiceModify the payload of a remote notification before it’s displayed on the user’s device.
Persistent TokenGrant access to user accounts and the keychain using a token.
Photo EditingAllow your app to edit assets directly within the Photos app.
Photo ProjectAugment the macOS Photos app with extensions that support project creation.
Quick Look PreviewProvide previews of documents your app owns so they can be viewed in any app.
Safari ServicesExtend the web-browsing experience in Safari by leveraging web technologies and native code.
ShareLet users post to your social-network service from any app.
Smart Card TokenGrant access to user accounts and the keychain using a hardware-based token.
Spotlight ImportMake content in your app searchable in Spotlight, Safari, Siri, and more.
Sticker PackAdd custom stickers to Messages.
ThumbnailDisplay thumbnails of your custom document types in all apps.
TV Top ShelfHelp users discover your app by providing Top Shelf content and a description of your tvOS app.
Unwanted CommunicationBlock incoming phone calls using your app’s custom unsolicited caller database.
Virtual ConferenceIntegrate your video conferencing service directly into events on user’s calendars.
WidgetsShow relevant, glanceable content from your app on the iOS Home Screen and Lock Screen, macOS Notification Center, and as complications in watchOS.
Xcode Source EditorProvide custom editing features directly inside Xcode’s source editor.

Tools and resources

Use Xcode and these resources to build your app extensions.

Download Xcode