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
Billing

Quotas

When a publish is refused, when it bills overage, and how to handle 429 quota_exceeded.
Updated 2d ago
Metering
Quota is checked inside the publish call — after every error you could fix, before any platform call. That position is the whole design: a refused request has cost you nothing and published nothing.

The verdict

Situation
Outcome
Within the allowancePublishes
Over the allowance, plan has overage (Indie, Studio, Scale, Enterprise)Publishes; the excess bills as overage
Over the allowance, plan stops at it (Free)`429 quota_exceeded`, nothing published

The 429

The message names what the request needed and what is left, so you can surface it to a user without a second lookup.
A 429 is all-or-nothing
The whole request is refused before any target is attempted. Nothing published, nothing was billed, and no partial state was left behind.

Handling it

  • Upgrade, or wait for the window to roll.
  • Split the request. Six writes may not fit where three do — publish the important targets first.
  • Retry with the same idempotency key once there is room. A replay is safe: it either returns the original post or publishes cleanly.

The estimate is an upper bound

The check prices the request as if every target and every comment succeeds. What you are billed is what actually happened, so a request refused at 6 units might only ever have cost 4. That asymmetry is intentional — refusing on the estimate can never over-publish, whereas checking after the fact could.

Windows

The allowance resets per billing window: your subscription anniversary on a paid plan, the calendar month otherwise. Current usage is visible in Settings → Billing.

Accounts and projects

Separate from write volume, each plan caps connected accounts and projects. Those limit what you can hold, not what you publish — you hit them when connecting, not when publishing. See Plans.
{
  "error": {
    "code": "quota_exceeded",
    "message": "This publish needs 6 network writes and the Free plan has 2 of 100 left in this billing period. Upgrade to publish more."
  }
}