Skip to main content
All methods live on the ClarioDesk singleton. subscribe* methods return an unsubscribe function; the React hooks mirror each subscription.

Lifecycle

Without a token, identify writes unverified display labels. With a token or provider it performs Verified identity. Use clearIdentity() before verified logout/switch; reset() deprovisions only this installation. externalId is your auth system’s stable user id (Firebase user.uid, Clerk user.id, Auth0 user.sub) — never an auth token, never an email; full table.

Tickets & messages

A message with pending: true is optimistic; failed: true means rejected, so render tap-to-retry with retryMessage. Offline sends stay pending and auto-flush on reconnect.

Live subscriptions

Each returns an unsubscribe function.

Hooks

The same data, idiomatic for React (separate entry, no React dep in core):

CSAT

Push

In 0.3.0+, the raw payload remains target-free and carries only an opaque deliveryId. resolvePushTarget returns the authorized ticket/inbox after a signed check. Custom screens can use useVisibleSupportSurface from the hooks entry point; prebuilt UI manages visibility automatically. See the push guide.

Attachments

Types

All types are exported: Ticket, Message, Attachment, OutgoingAttachment, readStateOf, ClarioDeskError, and the enums above.
This surface mirrors the Flutter SDK 1:1. Same method names, same semantics. The Swift SDK implements the same contract in Swift idioms. If a capability behaves differently across the SDKs, it’s a bug.