Chirio
Get Started
Introduction
Quickstart
How Chirio works
Authentication
Platforms
Overview
Instagram
Threads
X
LinkedIn
Supa Hub
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
Supa Hub
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

Revocation and deletion

What happens when a user disconnects at the platform, and how deletion requests are handled.
Updated 1mo ago
Account lifecycle
The dashboard
A user can end a connection from either side: through your app, or from inside Instagram, Threads, X or LinkedIn. Both paths end with the stored credentials gone.

From your app

DELETE /api/v1/accounts/:id disconnects an account and destroys its stored tokens. The account stops appearing in GET /api/v1/accounts immediately (pass includeRevoked=true to see it), stops counting against your plan's account cap, and cannot publish: a target pointed at it fails with account_not_active while the other targets in the same request go out normally. What is not destroyed is the row itself, and therefore the id. Reconnecting the same profile later reuses the same accountId — see Account lifecycle.

From the platform

When someone removes Chirio in their Instagram or Threads settings, Meta notifies Chirio and the affected accounts and their tokens are deleted automatically — outright, row and all, not merely marked revoked. Nothing is required from you.
An account can disappear without you asking
Because platform-side revocation is silent from your perspective, an accountId you hold can stop being valid at any time. Handle both 404 account_not_found and a target failing with account_not_active as 'ask the user to reconnect' rather than as a bug.
For X and LinkedIn, a revocation surfaces the next time the credentials are used: the account moves to expired or revoked and publishing to it fails that target with account_not_active. See Account lifecycle.

Data deletion requests

Meta requires a route for users who ask for their data to be deleted rather than merely disconnected. Chirio handles those requests inline — the accounts and tokens for that platform user are removed across every project they appear in, and the user receives a confirmation code and a status page they can check. Requests arriving this way are verified as genuinely coming from the platform before anything is deleted.

What is kept

Disconnecting an account destroys its credentials and its ability to act. It does not delete the post history already recorded under your project — those records are what your own audit trail and billing rest on, and they no longer contain anything that can act on the user's behalf. A platform-initiated deletion is the stricter path, and deliberately so: a user who asked to be forgotten has their rows removed rather than retained under a revoked flag. If you need post history deleted as well, that is a support request rather than an API call.
curl -X DELETE "https://chirio.dev/api/v1/accounts/8f2c..." \
  -H "Authorization: Bearer $CHIRIO_API_KEY"
{ "deleted": true }