Build an integration
Mobile chat SDKs
Add Sonny support chat to your customer-facing iOS, Android or React Native app. Customers can contact your team from inside your app using your existing Sonny inbox.
Looking for the app your support team uses to reply? Install the Sonny agent app.
Choose your SDK
iOS
Swift SDK with Swift Package Manager and an Xcode sample.
Android
Kotlin SDK with a Gradle sample app.
React Native
TypeScript API and sample app using the Sonny iOS and Android SDKs.
Connect your app
- In a mobile-enabled Sonny environment, open Channels → Live Chat → Mobile apps. An owner or admin creates an app key for each platform and bundle or application ID.
- Install the SDK using its repository README. Configure it with your site ID and the public app key for that build target. React Native needs separate iOS and Android app keys.
- Show chat as a full-screen conversation or embed it in your app. Keep one active chat view at a time.
- For signed-in customers, create an identity JWT on your server and pass it to the SDK. Call
reset()on logout to start a new visitor session.
App keys are public identifiers. Identity signing secrets and notification provider keys stay on your server or in Sonny's protected settings.
Push notifications
Your app owns notification permission and token acquisition. The SDK accepts an APNs token on iOS or an FCM token on Android, and handles Sonny notification taps. Delivery needs credentials for your own app: an APNs signing key and Apple team/key IDs, or an FCM service account for your Firebase project. The Sonny agent app's credentials belong to a separate app. Push delivery remains under validation during this preview.
- Upload your app's provider credentials in Mobile apps. For APNs, match the sandbox or production environment to your build.
- Open the app, allow notifications and pass its token to the SDK. Refresh the settings device list and select your test device by its registration time.
- Background the app and select Send test push. Check the device for receipt. The settings status shows provider acceptance or a safe error code; acceptance alone does not confirm arrival.
- For conversation testing, send an agent or AI reply while the visitor is disconnected. A reply notification opens that conversation when your app forwards the tap to
handlePush. The generic test notification does not open a conversation.
Report an issue or contribute
Open an issue in the repository for the SDK you use. Include its version or commit, your OS and framework versions, and a small reproduction. Each repository accepts pull requests and includes contribution and security-reporting guidance. Keep customer data, identity JWTs, device tokens and private keys out of public issues.
Related docs
- Widget setup
Install the Sonny live chat widget on your website with a single script tag.
- Visitor identification
Identify logged-in users and send custom attributes from your website.
- Install the app
Install Sonny on iPhone, Android, Mac, or Windows and turn on push notifications.
- Channels
Create and manage the places where customers reach you by live chat and email.