Chirio
Get Started
Introduction
Quickstart
How Chirio works
Authentication
Platforms
Overview
Instagram
Threads
X
LinkedIn
Guides
Connect accounts
Publish a post
Media requirements
Carousels
First comments
Idempotency and retries
Account lifecycle
Revocation and deletion
The dashboard
Billing
Plans
Metering
Quotas
Api Reference
Overview
Accounts
Posts
Errors
Changelog
Roadmap
TrademarkTrademark
Ctrl k
Search...
Sign up
Chirio
Get Started
Introduction
Quickstart
How Chirio works
Authentication
Platforms
Overview
Instagram
Threads
X
LinkedIn
Guides
Connect accounts
Publish a post
Media requirements
Carousels
First comments
Idempotency and retries
Account lifecycle
Revocation and deletion
The dashboard
Billing
Plans
Metering
Quotas
Api Reference
Overview
Accounts
Posts
Errors
Changelog
Roadmap
TrademarkTrademark© Dopler. All rights reserved.
Built with Aveiro
Guides

Account lifecycle

Why a connected account eventually needs reconnecting, and how to handle it before it breaks a publish.
Updated 2d ago
Idempotency and retries
Revocation and deletion
Connected accounts do not stay connected forever. Chirio keeps them alive as long as the networks allow, but every platform eventually forces the user back through authorisation. This page is about noticing that before a publish fails.

Statuses

Status
Meaning
What to do
`active`Usable for publishingNothing
`expired`The token lapsed and could not be refreshedSend the user through connect again
`revoked`The user removed Chirio in their platform settingsSend the user through connect again
Publishing to a non-active account fails that target with account_not_active. Other targets in the same request are unaffected.

How long a connection lasts

Platform
Lifetime
Refreshed automatically
Instagram60 daysYes
Threads60 daysYes
X2 hoursYes, at publish time
LinkedIn60 daysOnly where LinkedIn issues a refresh token
Refreshes happen without you doing anything. What you should plan for is the case where they run out: a LinkedIn connection typically needs re-authorising roughly every 60 days, because LinkedIn only issues refresh tokens to apps it has specifically approved for it.
Poll for expiry rather than waiting for a failure
GET /api/v1/accounts returns every account's status. Checking it on a schedule — or before a scheduled campaign — lets you prompt the user to reconnect at a convenient moment instead of discovering it when a launch post fails.

Reconnecting

Reconnecting is just running the connect flow again for the same platform. It replaces the stored credentials, and the account returns to active. Beyond expiry and revocation, a reconnect is also what fixes an account whose authorisation predates a capability:
  • Instagram or Threads first comments — an older connection may not carry comment permission. The failure names this remedy explicitly in commentError.
  • X media — an older connection may not be able to upload media, which surfaces as a media failure on an otherwise valid post.
Permissions are fixed at the moment a user authorises, so an existing connection cannot gain one; only a fresh authorisation can.
One failure reconnecting does not fix
A LinkedIn first comment refused for permissions is not the user's connection — it is an authorisation Chirio holds with LinkedIn. Publishing keeps working; contact support rather than sending your user round the loop for nothing.

Designing for it

  • Show connection status in your own UI, sourced from GET /api/v1/accounts.
  • Treat expired and revoked identically — both mean "ask the user to reconnect".
  • Keep your profileId mapping stable so a reconnected account can be matched back to the same user without a manual step.
  • Do not cache accountId as permanently valid; a disconnect and reconnect issues a new one.