<!--
{
  "availability" : [
    "iOS: 14.0.0 -",
    "iPadOS: 14.0.0 -",
    "macCatalyst: 14.0.0 -",
    "watchOS: 7.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ClockKit",
  "identifier" : "/documentation/ClockKit/CLKWatchFaceLibrary/addWatchFace(at:completionHandler:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "ClockKit"
    ],
    "preciseIdentifier" : "c:objc(cs)CLKWatchFaceLibrary(im)addWatchFaceAtURL:completionHandler:"
  },
  "title" : "addWatchFace(at:completionHandler:)"
}
-->

# addWatchFace(at:completionHandler:)

Adds a watch face from the app’s bundle.

```
func addWatchFace(at fileURL: URL, completionHandler handler: @escaping @Sendable ((any Error)?) -> Void)
```

```
func addWatchFace(at fileURL: URL) async throws
```

## Parameters

`fileURL`

A file URL for a watch face file.

`handler`

A block that ClockKit calls after adding the watch face. The block takes the following parameter:

- error: If an error occurs, this object contains information about the error; otherwise, it’s `nil`.

## Discussion

Call this method to load a watch face file. The URL must point to a *watch file*, a watch face that your app has downloaded, or a watch face stored in your app bundle. All of the complications on the watch face must come from apps that have a valid App Store ID, such as an app from the App Store or a TestFlight build. If you try to use complications from a development build, the system won’t recognize the development ID as a valid App Store ID.

In iOS, use the <doc://com.apple.documentation/documentation/WatchConnectivity/WCSession> class’s <doc://com.apple.documentation/documentation/WatchConnectivity/WCSession/isPaired> method to verify that the user has a paired Apple Watch before presenting UI to share the watch face.

> Note:
> Some newer watch faces are not available on Apple Watch Series 3. Additionally, users can only add Nike and Hermès watch faces to the respective hardware. If you share a watch face that isn’t available on all watches running watchOS 7, check for errors when calling ``doc://com.apple.clockkit/documentation/ClockKit/CLKWatchFaceLibrary/addWatchFace(at:completionHandler:)``, and provide a fallback face that can be installed on all watches running watchOS 7 or later. For a list of watch faces supported on Apple Watch Series 3, see [Apple Watch faces and their features](https://support.apple.com/guide/watch/faces-and-features-apde9218b440/watchos).

If you call this method on a device that doesn’t support the Watch app or watch faces, this method reports an error.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)