OwnID iOS SDK helps apps add passkey-first authentication, account verification, and passkey enrollment while keeping the app in control of its users, sessions, and identity-provider setup.
Use the smallest SDK that covers the flow or feature your app needs.
| Add | Provides |
|---|---|
Core SDKOwnIDCore |
SDK configuration, providers, built-in Sign in with Apple support, Elite Flow, Headless, Passkey Enrollment, WebBridge, and passkey authentication flows. |
SwiftUI SDKOwnIDSwiftUI |
Boost widgets, SDK-provided SwiftUI operation UI, app-hosted operation UI, themes, colors, and reusable UI components. Depends on Core. |
Both SDK products require:
- iOS 13.0+
- Swift 6
- Xcode 16.0+
iOS 15–27 is the primary supported runtime range; iOS 13–14 is best effort.
Add the package:
dependencies: [
.package(url: "https://github.com/OwnID/ownid-ios-sdk.git", from: "<latest-version>")
]Then add the product your app target uses.
Core SDK:
.product(name: "OwnIDCore", package: "OwnID")SwiftUI SDK:
.product(name: "OwnIDSwiftUI", package: "OwnID")Note
OwnIDSwiftUI depends on OwnIDCore. Add OwnIDCore separately only when your app target imports both modules directly.
CocoaPods
For CocoaPods-only apps, use a pinned public git tag as a compatibility fallback.
target "YourApp" do
pod "OwnIDCore",
:git => "https://github.com/OwnID/ownid-ios-sdk.git",
:tag => "<version>"
endIf your app uses OwnIDSwiftUI, declare both pods from the same tag:
target "YourApp" do
pod "OwnIDCore",
:git => "https://github.com/OwnID/ownid-ios-sdk.git",
:tag => "<version>"
pod "OwnIDSwiftUI",
:git => "https://github.com/OwnID/ownid-ios-sdk.git",
:tag => "<version>"
endPasskey setup is required baseline configuration for OwnID integrations. See the complete Passkey Setup guide for AuthenticationServices availability, Associated Domains, AASA hosting, verification, and cache timing.
- Install the SDK for your flow or feature.
- Passkey Setup as baseline SDK setup.
- Configure OwnID before using the SDK.
- Register providers required by the OwnID functionality and identity systems your app uses.
Implement app-specific providers in your app; copy source-only helpers from
Providers/only when the Providers guide calls for them.
After setup, choose the integration path that matches the screen or user journey you are building.
| App need | Use | SDK product | Start with |
|---|---|---|---|
| Add OwnID to an existing native login screen | Boost Login Widget | SwiftUI SDK | Boost Flow |
| Add create-passkey to account creation | Boost Create Passkey Widget | SwiftUI SDK | Boost Flow |
| Use hosted OwnID authentication UI in the app | Elite Flow | Core SDK | Elite Flow |
| Build fully custom native authentication UI | Headless | Core SDK | Headless |
| Add a passkey for a signed-in user | Passkey Enrollment | Core SDK | Passkey Enrollment |
Connect OwnID Web SDK inside an app WKWebView |
WebBridge | Core SDK | WebBridge |
Tip
Migrating from OwnID SDK version 3? Start with Migration from Version 3 to Version 4.
The full documentation map is in Documentation.
- DemoBase shows standard SDK setup, Boost Flow, Elite Flow, Headless, Passkey Enrollment, and example identity-provider wiring.
- DemoAdvanced shows customized Boost widgets, app-hosted operation UI, low-level API and operation scenarios, Headless, and Google provider wiring.
These apps are examples. Use public SDK source, published products, and documentation as the integration contract.
- v4: Current version, recommended for all integrations.
- v3: Maintenance mode. Receives only critical bug fixes and security updates; no new features.
- v2: Obsolete, deprecated, and no longer supported, including security updates.
See Data Safety for SDK data handling notes.
For integration help, contact support@ownid.com.
This SDK is distributed under the Apache 2.0 license.