ToolsXpo
Workspace & BillingUsing the API

What a response tells you, and what it cost

Every call answers in the same envelope. This is what each field means, and how to read the cost of a call that spent from both credit balances.

Updated August 28, 2026

The envelope

Every call answers in the same shape, whether it succeeded or not.

{ "ok": true, "data": …, "meta": { … } }

data is the tool's own output. meta is everything about the call itself: which tool ran, what it cost, and where you stand afterwards.

A failure answers { "ok": false, "error": { "code", "message", "details" } } with the same content type and a matching HTTP status. There is no separate error format to parse.

What a call cost

"meta": {
  "credits": 10,
  "baseCredits": 8,
  "aiCredits": 2,
  "billedFrom": "plan"
}
  • credits — everything the call spent. This is the number to reconcile against your balance.
  • baseCredits — the general-credit half: the tool's own price.
  • aiCredits — the AI-credit half, present only when the tool called a model.

Most tools never touch a model, so most responses carry no aiCredits at all and credits equals baseCredits. When a tool does call one, the two halves come from two different balances — see the credits doc for why that distinction matters.

billedFrom says which pool paid: plan for the monthly allowance, wallet for purchased credits.

Where you stand

"meta": { "quota": {
  "limit": 20000, "used": 1240, "remaining": 18760,
  "resetsAt": "…", "scope": "account", "plan": "pro",
  "creditBalance": 8500
}}

limit, used and remaining describe the monthly allowance. creditBalance is the separate purchased balance, which does not reset. Reading remaining as your whole balance will understate what you can spend.

Pricing

"meta": { "pricing": { "mode": "flat" } }

flat means the price is fixed and known before the call. metered means the price depends on what the call turns out to do — the response also carries meterUnit and creditsPerUnit, and the charge is settled once the work is done.

What is not billed

A call that fails is not charged. If a tool fails partway through after we have already paid a provider, the part we paid for is settled and the rest is refunded — the response says what was charged either way.

Related