---
title: "open(_:options:completionHandler:)"
framework: uikit
role: symbol
role_heading: Instance Method
path: "uikit/uiscene/open(_:options:completionhandler:)"
---

# open(_:options:completionHandler:)

Attempts to open the resource at the specified URL asynchronously.

## Declaration

```swift
func open(_ url: URL, options: UIScene.OpenExternalURLOptions?, completionHandler completion: ((Bool) -> Void)? = nil)
```

```swift
func open(_ url: URL, options: UIScene.OpenExternalURLOptions?) async -> Bool
```

## Parameters

- `url`: A URL (Universal Resource Locator). The resource identified by this URL may be local to the current app or handled by a different app. UIKit supports many common schemes, including the http, https, tel, facetime, and mailto schemes.
- `options`: The options to use when opening the URL.
- `completion`: The block to execute with the results. Provide a value for this parameter if you want to be informed of the success or failure of opening the URL. This block is executed asynchronously on your app’s main thread. The block has no return value and takes the following parameter:

## Discussion

Discussion Use this method to open the specified resource. If the specified URL scheme is handled by another app, iOS launches that app and passes the URL to it. Launching the app brings the other app to the foreground.

## See Also

### Opening URLs

- [UIScene.OpenExternalURLOptions](uikit/uiscene/openexternalurloptions.md)
