---
title: "open(_:withAppBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifiers:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nsworkspace/open(_:withappbundleidentifier:options:additionaleventparamdescriptor:launchidentifiers:)"
---

# open(_:withAppBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifiers:)

Opens one or more files from an array of URLs.

## Declaration

```swift
func open(_ urls: [URL], withAppBundleIdentifier bundleIdentifier: String?, options: NSWorkspace.LaunchOptions = [], additionalEventParamDescriptor descriptor: NSAppleEventDescriptor?, launchIdentifiers identifiers: AutoreleasingUnsafeMutablePointer<NSArray?>?) -> Bool
```

## Parameters

- `urls`: An array of NSURL objects, each one identifying a URL for the app to open.
- `bundleIdentifier`: A bundle identifier string or nil to use the default system bindings. This value corresponds to the value in the CFBundleIdentifier key of the app’s Info.plist file. For example, the bundle identifier of the TextEdit app is com.apple.TextEdit.
- `options`: Options to use when launching the app. Values for this parameter are described in doc://com.apple.appkit/documentation/AppKit/NSWorkspace/LaunchOptions.
- `descriptor`: Additional options specified in an AppleEvent-style descriptor. For example, you could use this parameter to specify additional documents to open when the app is launched.
- `identifiers`: The launchIdentifiers are currently unused, and you should pass NULL.

## Return Value

Return Value true if the app was found and launched; otherwise, false.

## Discussion

Discussion It is safe to call this method from any thread of your app.

## See Also

### Methods

- [open(_:options:configuration:)](appkit/nsworkspace/open(_:options:configuration:).md)
- [open(_:withApplicationAt:options:configuration:)](appkit/nsworkspace/open(_:withapplicationat:options:configuration:).md)
- [openFile(_:)](appkit/nsworkspace/openfile(_:).md)
- [openFile(_:withApplication:)](appkit/nsworkspace/openfile(_:withapplication:).md)
- [openFile(_:withApplication:andDeactivate:)](appkit/nsworkspace/openfile(_:withapplication:anddeactivate:).md)
- [openFile(_:from:at:in:)](appkit/nsworkspace/openfile(_:from:at:in:).md)
- [launchApplication(_:)](appkit/nsworkspace/launchapplication(_:).md)
- [launchApplication(_:showIcon:autolaunch:)](appkit/nsworkspace/launchapplication(_:showicon:autolaunch:).md)
- [launchApplication(at:options:configuration:)](appkit/nsworkspace/launchapplication(at:options:configuration:).md)
- [performFileOperation(_:source:destination:files:tag:)](appkit/nsworkspace/performfileoperation(_:source:destination:files:tag:).md)
- [fullPath(forApplication:)](appkit/nsworkspace/fullpath(forapplication:).md)
- [absolutePathForApplication(withBundleIdentifier:)](appkit/nsworkspace/absolutepathforapplication(withbundleidentifier:).md)
- [launchApplication(withBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifier:)](appkit/nsworkspace/launchapplication(withbundleidentifier:options:additionaleventparamdescriptor:launchidentifier:).md)
- [mountedRemovableMedia()](appkit/nsworkspace/mountedremovablemedia().md)
- [mountedLocalVolumePaths()](appkit/nsworkspace/mountedlocalvolumepaths().md)
