Native in-app support for your iOS app
One Swift Package puts support conversations, bug reports and a feedback board inside your iOS app — no Flutter, no React Native, no web view. Your team answers from one dashboard; replies stream in live and arrive as APNs push notifications.
clariodesk-swift on Swift Package Manager · Live in 10 minutes · No backend to deploy
Three calls and you're live
No webhooks, no OAuth dance, no support backend to build. Devices register themselves with hardware-backed keys, so there's no user-auth plumbing either.
1. Install the package
// Xcode: File → Add Package Dependencies…, or in Package.swift:
.package(url: "https://github.com/clariodesk/clariodesk-swift", from: "0.1.1")
// Products: ClarioDesk (headless) and/or ClarioDeskUI (prebuilt screens)2. Initialize once at app start
import ClarioDesk
// Synchronous and fire-and-forget — drops into App.init or your AppDelegate
// with no await. First launch generates a Secure Enclave key and registers it.
ClarioDesk.initialize(.init(apiKey: "pk_live_…"))
// Optional — after your own auth knows who the user is.
ClarioDesk.identify(externalId: user.id, email: user.email)3. Open the support UI
Prebuilt and themeable, or skip it entirely and build your own on the headless API.
import ClarioDeskUI
ClarioDeskWidgets.openInbox() // the user's conversations
ClarioDeskWidgets.openNewTicket() // straight into the composer
ClarioDeskWidgets.openBugReport() // bug report form, auto-screenshot
ClarioDeskWidgets.openConversation(ticketId) // the push deep-link targetWhat's specific to Swift
All three ClarioDesk SDKs share one frozen contract, so every feature behaves the same everywhere. These are the parts that are particular to Swift.
Secure Enclave device keys
The device identity is a P-256 key generated by CryptoKit in the Secure Enclave, with a software fallback on the simulator. No user auth to plumb, no shared secret in your binary.
SwiftUI and UIKit, same call
One static call presents the UI as a self-owned modal on the top-most view controller, so it behaves identically from a SwiftUI or a UIKit host. Full-screen on iPhone, a centered form sheet on iPad.
APNs push with zero Firebase
Forward the device token from your AppDelegate and you're done. Native iOS hosts never need to ship the Firebase SDK just to get a reply notification.
One SDK, the whole customer relationship
Support, bug reports and feedback share one customer record — so the person who joined your waitlist, filed a bug and voted for dark mode is one person, not three strangers.
- Support conversations with live streaming replies
- Push notifications when the app is closed
- Bug reports with device, OS, version, network and logs attached
- Photos, video and file attachments both ways
- An in-app feedback board with voting
- A satisfaction rating on every resolve
- One-click escalation to a pre-filled Linear issue
- RevenueCat subscription status on every ticket
Swift questions, answered
Be first in line when
ClarioDesk launches
We onboard the waitlist in small batches. Early users get hands-on integration help — from a human — and a real vote on what ships next, starting with the feedback board.
No spam, ever. We'll only email you about ClarioDesk.