---
title: Launch Services
framework: coreservices
role: collectionGroup
role_heading: API Collection
path: coreservices/launch_services
---

# Launch Services

Launch and open documents in other apps from your current app process.

## Overview

Overview macOS Launch Services is an API that enables a running app to open other apps or their document files, similar to the Finder or the Dock. Using Launch Services, an app can perform such tasks as: Open (launch or activate) another app Open a document or a URL in another app Identify the preferred app for opening a document or URL Register information about the kinds of document files and URLs an app can open Obtain information for displaying a file or URL on the screen, such as its icon, display name, and kind string Maintain and update the contents of the Recent Items menu Launch Services eliminates apps having to query the Finder to open an app, document, or URL for them. The macOS Finder itself uses Launch Services to perform such tasks. Because the Finder performs no additional processing beyond calling Launch Services, any client using Launch Services for these purposes behaves identically to the Finder.

## Topics

### Locating an App

- [LSCopyDefaultApplicationURLForURL(_:_:_:)](coreservices/1448824-lscopydefaultapplicationurlforur.md)
- [LSCopyDefaultApplicationURLForContentType(_:_:_:)](coreservices/1447734-lscopydefaultapplicationurlforco.md)
- [LSCopyApplicationURLsForURL(_:_:)](coreservices/1445148-lscopyapplicationurlsforurl.md)
- [LSCanURLAcceptURL(_:_:_:_:_:)](coreservices/1441854-lscanurlaccepturl.md)
- [LSCopyApplicationURLsForBundleIdentifier(_:_:)](coreservices/1449290-lscopyapplicationurlsforbundleid.md)

### Opening Items

- [LSOpenCFURLRef(_:_:)](coreservices/1442850-lsopencfurlref.md)
- [LSOpenFromURLSpec(_:_:)](coreservices/1441986-lsopenfromurlspec.md)
- [LSLaunchURLSpec](coreservices/lslaunchurlspec.md)
- [LSSharedFileList](coreservices/lssharedfilelist.md)
- [LSSharedFileListItem](coreservices/lssharedfilelistitem.md)

### Registering an App

- [LSRegisterURL(_:_:)](coreservices/1446350-lsregisterurl.md)

### Working with Role Handlers

- [LSCopyAllRoleHandlersForContentType(_:_:)](coreservices/1448020-lscopyallrolehandlersforcontentt.md)
- [LSCopyDefaultRoleHandlerForContentType(_:_:)](coreservices/1449868-lscopydefaultrolehandlerforconte.md)
- [LSSetDefaultRoleHandlerForContentType(_:_:_:)](coreservices/1444955-lssetdefaultrolehandlerforconten.md)
- [LSSetDefaultHandlerForURLScheme(_:_:)](coreservices/1447760-lssetdefaulthandlerforurlscheme.md)
- [LSRolesMask](coreservices/lsrolesmask.md)

### Understanding the Quarantine Properties Dictionary

- [kLSQuarantineAgentBundleIdentifierKey](coreservices/klsquarantineagentbundleidentifierkey.md)
- [kLSQuarantineAgentNameKey](coreservices/klsquarantineagentnamekey.md)
- [kLSQuarantineTimeStampKey](coreservices/klsquarantinetimestampkey.md)
- [kLSQuarantineTypeKey](coreservices/klsquarantinetypekey.md)
- [kLSQuarantineDataURLKey](coreservices/klsquarantinedataurlkey.md)
- [kLSQuarantineOriginURLKey](coreservices/klsquarantineoriginurlkey.md)

### Identifying the Quarantine Type

- [kLSQuarantineTypeCalendarEventAttachment](coreservices/klsquarantinetypecalendareventattachment.md)
- [kLSQuarantineTypeEmailAttachment](coreservices/klsquarantinetypeemailattachment.md)
- [kLSQuarantineTypeInstantMessageAttachment](coreservices/klsquarantinetypeinstantmessageattachment.md)
- [kLSQuarantineTypeOtherAttachment](coreservices/klsquarantinetypeotherattachment.md)
- [kLSQuarantineTypeOtherDownload](coreservices/klsquarantinetypeotherdownload.md)
- [kLSQuarantineTypeWebDownload](coreservices/klsquarantinetypewebdownload.md)

### Constants

- [LSLaunchFlags](coreservices/lslaunchflags.md)
- [LSAcceptanceFlags](coreservices/lsacceptanceflags.md)
- [LSItemInfoFlags](coreservices/lsiteminfoflags.md)
- [LSHandlerOptions](coreservices/lshandleroptions.md)
- [LSRequestedInfo](coreservices/lsrequestedinfo.md)
- [Unknown Type or Creator](coreservices/launch_services/1469201-unknown_type_or_creator.md)

### Result Codes

- [kLSAppInTrashErr](coreservices/klsappintrasherr.md)
- [kLSUnknownErr](coreservices/klsunknownerr.md)
- [kLSNotAnApplicationErr](coreservices/klsnotanapplicationerr.md)
- [kLSDataUnavailableErr](coreservices/klsdataunavailableerr.md)
- [kLSApplicationNotFoundErr](coreservices/klsapplicationnotfounderr.md)
- [kLSDataErr](coreservices/klsdataerr.md)
- [kLSLaunchInProgressErr](coreservices/klslaunchinprogresserr.md)
- [kLSServerCommunicationErr](coreservices/klsservercommunicationerr.md)
- [kLSCannotSetInfoErr](coreservices/klscannotsetinfoerr.md)
- [kLSIncompatibleSystemVersionErr](coreservices/klsincompatiblesystemversionerr.md)
- [kLSNoLaunchPermissionErr](coreservices/klsnolaunchpermissionerr.md)
- [kLSNoExecutableErr](coreservices/klsnoexecutableerr.md)
- [kLSMultipleSessionsNotSupportedErr](coreservices/klsmultiplesessionsnotsupportederr.md)

### Deprecated

- [Deprecated Symbols](coreservices/launch_services/deprecated_symbols.md)
