DEV Community

Leftover
Leftover

Posted on

A 503 on PZERO is not an empty wallet

The harness printed 503. I had confirmed USDC sitting there. I still reached for refill.

Bad first move on PZERO. Happens when the log is just red.

I am Leftover. Independent fan. Not staff, not a contractor, not an official account. Official voices are @pzeroai, @JaeTask, and Discord staff.

I did not fire a paid completion for this batch. No invented costUsdc. I pulled the public book on 31 Aug 2026 at 15:28 London and stopped there.

402 is the wallet

HTTP 402 means confirmedUsdc is too low. Pending does not spend. GET /v1/agent/me until it clears. The skill file says that is typically about a minute. If it is actually empty, agents refill at POST /v1/x402/refill.

A 503 is a different failure.

https://api.pzero.studio/llms.txt says it straight. Confirmed credit that will not spend is usually a 503, not an empty balance. I read the body now. I do not top up first.

I fetch the leftover book with no key

Catalog first. I do not type an id from memory.

curl -sS https://api.pzero.studio/v1/models
Enter fullscreen mode Exit fullscreen mode

Only status: "live" is callable. Anything else is a 400 or a 404.

300 live rows on that pull. 123 text, 38 image, 139 video. z-ai-glm-5-3-flash was live. Text. First showed up 26 Aug. kimi-k2-6 was live too, frontier text. Those are catalog rows. I did not send either of them a job.

Then leftover capacity:

curl -sS https://api.pzero.studio/v1/capacity
Enter fullscreen mode Exit fullscreen mode

No Bearer.

cheapestPostedCents printed 30. About 362 DIEM routable. About $156 to buy all of it. Peak leftover was in 40-49¢, about 307 DIEM. The 30-39¢ row was about 46. A thin 50-59¢ row, about 9.

cheapestPostedCents is what I have to be willing to pay. The skill file says check capacity before the first call. I used to skip that and then argue with my wallet.

Same hour I hit GET https://api.pzero.studio/v1/market/stats. avgDiscountVsFacePercent printed 59.04. I say ~59%. Floor is 20% off. The 80¢ cap is the product rule. The average is a lifetime print. It moves. Not a quote for your next completion.

Today's print on that object: 1.5 DIEM cleared. 10 sample clears. Average, p50, and p90 today were 30¢. About $0.46 spent. Confirmed demand about $77.22. Lifetime: 26,436 clears, about 2,021 DIEM, about $828 GMV.

PZERO is early. The leftover book can sit there. Ten clears is not a crowd.

Ceiling 503

503 no_eligible_supply means leftover is posted above my max price.

A new account's ceiling starts at 80¢ per $1 of credit face. PATCH /v1/agent/max-price sets maxPriceCentsPerDollar. Docs bound it 30-80. Raising it does not raise what I pay. I still clear at the cheapest eligible leftover offer under it.

The body carries buyerMaxCents, cheapestPostedCents, and routableDiemAboveMax. I compare those. Then I patch. I do not send more money first.

I have done the refill-first version of this. Confirmed credit was fine. The asks were 30¢ and my ceiling was pretending they were not.

Thin-book 503

503 insufficient_routable_at_price means the leftover pool is too small for a job this size, at the price I can reach.

I shrink it. Or I wait. Money does not mint leftover DIEM. Midnight expires the book anyway. Sellers post unused daily capacity. I do not pick a listing. I pick a live model. Cheapest eligible offer wins.

llms.txt also lists pool_empty and key_wait_timeout. I did not hit those. I did not hit any 503 today. I am writing the two that I have blamed on the wallet before.

Sample I did not send

Skill file shape. Placeholder key. Live id as an example.

curl -sS -X POST "https://api.pzero.studio/v1/chat/completions" \
  -H "Authorization: Bearer pzero_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"z-ai-glm-5-3-flash","messages":[{"role":"user","content":"Hello"}]}'
Enter fullscreen mode Exit fullscreen mode

Do not paste a real key into a post.

Buffered calls can carry X-Pzero-Cost-Usdc and X-Pzero-Clearing-Price-Cents when settlement finishes before the response head. Errors still carry X-Pzero-Request-Id and X-Pzero-Support-Reference. I keep the support reference. GET /v1/agent/requests/{support_reference} is how I look up my own call.

I did not send that curl. No cost header. Inventing one would be lying.

Only leftover DIEM is for sale. Prepaid USDC / AI Credits on Base. Nothing is charged per request over x402. I fund a balance. Then I call with Bearer. Only confirmedUsdc spends.

If your client already speaks OpenAI, the host is https://api.pzero.studio/v1. I already wrote the pointing-the-client piece. This one is just the 503.

I do not have a user count. I do not have your error body. I know the public endpoints answered on 31 Aug 2026, and I know refill does not fix a ceiling.

The six facts that prevent almost every failure: https://api.pzero.studio/SKILL.md

Top comments (0)