Get started
LinkedIn & sync
Connecting accounts through Unipile and the durable, resumable sync engine.
Connecting an account
Accounts connect through Unipile. No LinkedIn password is ever stored in Kanso.
- White-label redirect: You’re sent to a Unipile-hosted login; the link is short-lived (15-minute client expiry).
- Best for most users — nothing sensitive is pasted into the app.
- Reconciliation fallback: If the connect webhook can’t reach the app, the account is reconciled automatically.
- Manual refresh: Re-sync an account’s status on demand.
- Live status: Onboarding reads real Unipile state, not a stale row.
- Disconnect: Revokes Unipile webhooks, frees the account slot, and preserves stored history.
- Multiple accounts: Connect more than one account per workspace, capped by your plan.
Account health
Every account carries a normalized health state, surfaced as a status pill and enforced by the sending governor.
healthyconnectingneeds-reconnectrestrictedunknown
- Restriction detection: A 403 from LinkedIn automatically freezes the account.
- Self-healing: Status recovers on reconnect and paused syncs auto-resume.
Supported inboxes
- Classic LinkedIn: Always available.
- Sales Navigator: Premium inbox.
- Recruiter: Premium inbox.
- Company pages: Organization inboxes.
- Premium accounts are tracked per-product so multi-inbox sync completes correctly.
The sync engine
A durable, resumable crawl imports full history and keeps it live — with deterministic completion gates, never a timed guess.
- Two-phase import: Chats (the conversation list) → messages (per-thread backfill to the very beginning).
- Idempotent & resumable: Cursors + per-chat “hydrated” markers survive crashes; re-runs never duplicate or re-pull.
- Two drivers: Your live UI and an unattended cron drainer advance the same batches.
- Connections crawl: Imports 1st-degree relations into the CRM, deduped by LinkedIn member id.
- Premium coverage gate: Waits for a completion signal from every linked product before declaring done.
- Resilience: Tolerates transient auth errors (up to 3) before pausing as needs-reconnect; terminal failure only after 10 consecutive batch failures.
Real-time updates
- New messages, read/delivered receipts, reactions, edits, and deletes stream in live.
- Webhook events are Zod-validated, fail-soft, and idempotent.
- A live sync-status query powers onboarding, the settings tile, and an inbox banner (per-product for premium).
No credentials stored
LinkedIn auth lives in Unipile — Kanso holds references, never your LinkedIn password.
Looking for something specific in Kanso? Every feature area is covered in the sections on the left.