Skip to main content

What are social accounts?

Social accounts are the connections between Kavio and your social media profiles or pages. When you connect an account, Kavio gets permission to create and publish posts on your behalf.

Supported platforms

Connecting an account

Go to Accounts in the dashboard and click the platform you want to connect. For most platforms, you’ll be redirected to their authorization page. A few have extra steps:
  • LinkedIn Page — after authorizing, pick which company page to connect
  • Facebook — after authorizing, pick which page to manage
  • Instagram (Standalone) — uses Instagram’s own OAuth flow; suitable for personal IG accounts
  • Instagram (Facebook Business) — authorize through Facebook, then pick the Instagram account linked to a Facebook page (required for first-party publishing of feed/reels/stories/carousels)
  • YouTube — authorize with Google, then pick the channel
  • Bluesky — enter your handle and an App Password (not your main password)
  • Mastodon — enter your instance URL first, then authorize on that instance
You can connect multiple accounts per platform — for example, both your personal LinkedIn and three company pages.

Connection limits

Each plan caps the total number of connected accounts per workspace: When you exceed the limit, connecting a new account returns 402 Payment Required and the dashboard prompts you to upgrade.

Active vs. inactive

Each social account can be toggled between active and inactive:
  • Active — The account is included when creating new posts. New posts will have a platform entry for this account.
  • Inactive — The account is excluded from new posts. Existing scheduled posts are not affected.
Toggle an account’s active state from the Accounts page or via the API.
Use inactive mode when you want to temporarily pause posting to a specific account (e.g., during a holiday) without disconnecting it.

Connection status

Kavio runs three scheduled jobs to keep social connections healthy:
  • social:refresh-expiring-tokens (hourly) — proactively refreshes OAuth tokens that are about to expire, before the platform forces them out
  • social:check-connections (daily) — verifies every connected account still authenticates correctly
  • social:recover-stuck-posts (every 30 minutes) — sweeps posts left in publishing and either retries or marks them failed
If any of these detects a disconnected or expired account, the workspace owner receives a notification (in-app and email).

Why accounts get disconnected

  • Token expiration — Some platforms issue short-lived tokens. Kavio automatically refreshes them, but if the refresh fails (e.g., the refresh token also expired), the account disconnects.
  • Password change — Changing your password on the platform may revoke all OAuth tokens.
  • Permission revoked — You manually revoked Kavio’s access in the platform’s settings.
  • Platform policy — The platform may revoke tokens for inactivity or policy changes.

Token security

  • Access tokens and refresh tokens are encrypted at rest using Laravel’s encryption
  • Tokens are never exposed in API responses — the access_token and refresh_token fields are hidden
  • Each account stores its token expiry date and Kavio proactively refreshes tokens before they expire

Disconnecting an account

Go to Accounts, find the account, and click Disconnect. This:
  • Removes the connection from Kavio
  • Does not affect existing published posts
  • Does not revoke Kavio’s access on the platform (you can do that in the platform’s settings)

FAQ

No. Each social media account can only be connected once per workspace. If you try to connect an account that’s already connected, Kavio will update the existing connection.
Posts scheduled for a disconnected account will fail for that platform when the scheduled time arrives. Other platforms in the same post are not affected. You’ll receive a notification about the failure.
Usually no. Kavio automatically refreshes tokens. However, some platforms (like TikTok) have shorter token lifetimes and may occasionally require reconnection.
Yes. Each workspace manages its own connections independently. The same LinkedIn profile can be connected in multiple workspaces.