BlockRun

Changelog

Dated log of every meaningful change to BlockRun. Newest first. Subscribe via the GitHub org or follow @BlockRunAI for daily ship notes.

Six more pointers to dead free models, and the test that should have existed

  • Earlier today we delisted a free model that had died upstream and moved everything that pointed at it — the cascade, two redirect tables, the landing pages. Four catalog entries still named it as their backup, two of them free models you can see in the list (cohere/north-mini-code, poolside/laguna-xs-2.1). If either had failed after a request was accepted, its backup was the model we had just declared dead. All four now back off to a model that answered a direct probe in under half a second.
  • nvidia/gpt-oss-120b is retired: NVIDIA now returns a published end-of-life notice dated September 3 for it. It had gone quiet once before in August and come back, so this time we checked that the error is the permanent kind before acting. Calls to it, and to the bare name gpt-oss-120b, redirect to nvidia/nemotron-3-super-120b on both the chat and the messages API. gpt-oss-20b is unaffected.
  • The messages API keeps its own copy of the free-model redirect table, and that copy had drifted twice without anyone noticing — one model restored to the chat table on July 27 and one raw upstream id added on August 30 were missing from it. A caller pinned to either of those ids on the messages API had been getting an error on every request since. Both are mirrored now.
  • What was actually wrong is that every guard we had checked a specific pair of models by name. There is now one test that checks the property instead: every backup pointer and every redirect target in the catalog must be a model that is currently available, and the messages API's redirect table must match the chat API's. It found the two drifted entries above on its first run.

The free tier's last-resort model was dead, for the third time in three months

  • nvidia/nemotron-3-nano-30b is delisted. NVIDIA deprovisioned it for our account nine days after we listed it as the fastest free model in the catalog — a call returns a specific "function not found for this account" error, which is different from the generic not-found a made-up model name returns, and that difference is how we could tell it was removed from us rather than mistyped.
  • It was doing two jobs at once, and this is the part that keeps repeating: it was the free tier's last-resort model AND the designated backup for another free model. So when it died, a request that failed twice landed on something that could not answer either. The same pair of jobs fell on the same dead model in June and again in August. The last resort is now Llama 3.2 11B Vision, which answered in 0.4 seconds on the same test and is the only free model that can also handle images — which matters, because an image request is the one kind a substitute genuinely cannot fake.
  • Two other free models were also failing when we looked, for reasons that are not this: a daily free-usage quota upstream, which resets, and one provider reporting itself temporarily overloaded. Those need no change. Telling the three apart took reading the actual error rather than the status code — all three look like the same failure from outside.
  • Everything that pointed at the dead model moved with it: the cascade, two redirect tables, the free reasoning landing page, the model list on the router page, and the savings figure that is priced off a free model. Callers who named it by hand are redirected to a live one rather than getting an error. The free tier is 6 models; the visible catalog is 78 chat, 102 total.
  • The lesson we keep relearning is about timing, not choice: this model was listed, probed and fast on August 30, and gone by September 8. A check that runs on launch day cannot catch that. It needs to run on a schedule.

Tencent Hy3 was priced 60% above what it costs us

  • tencent/hy3 is now $0.0825 in / $0.33 out per 1M, down from $0.132/$0.528. Chat is sold at what the model costs us, and for a model we buy through a routed pool that means the cheapest vendor row — which is Tencent's own, at exactly the new price. The old number was 1.60x that on both sides, on an entry whose own comment described it as being at cost.
  • The correction costs nothing in availability, which is worth saying because a lower price usually does: the router is capped at our sell price plus 2%, so cheaper means fewer suppliers qualify. At the old price the cap was $0.135 and the next suppliers up were already excluded at $0.14. Tencent was the only one serving this model before and is the only one after.
  • The same sweep cleared four other models that looked mispriced and were not, which is the more useful half. Two GPT-5.6 tiers and two DeepSeek models sit above a reseller's headline rate on purpose, and DeepSeek V4 Flash Chat is the sharpest case: DeepSeek's own published rate is now three times what we charge, and raising it to match would invent a markup, because that model is not bought from DeepSeek at all.
  • The rule that fell out: for a model served through a routed pool, cost is the cheapest row in the pool, not the vendor's price list. Both models now carry that number in a test alongside the ladder that justified it, so a future reprice made without re-reading the ladder fails instead of shipping.

Claude Sonnet 5 was carrying a 50% markup on a catalog that advertises none

  • anthropic/claude-sonnet-5 is $2.00 in / $10.00 out per 1M, down from $3.00/$15.00. This is a correction, not a discount. Anthropic's announced rise to $3/$15 was called off and their published rate is $2/$10, and chat here is sold at the provider's list rate with no margin — so the old price was a 50% markup on a page that says there is none.
  • It could only be corrected safely because of the change above it. Our cost for these tokens is exactly the list rate on Bedrock's global profile, and every Claude model moved to global earlier the same day. On the regional profile the same tokens cost $2.20/$11.00, so this price would have settled below cost the moment it shipped. The two changes hold each other up, which is why the profile move went first.
  • Sonnet 5 no longer names a failover model. Its previous one was Sonnet 4.6, which still bills $3.00/$15.00 — at the corrected price that rescue costs 50% more than the request it is rescuing, which is exactly the pairing the August sweep removed 34 of. Nothing else in the catalog sits in the price band for it, so a Sonnet 5 failure now returns an error instead of quietly serving something dearer.
  • The same documentation page states every price twice, in a rate table and again in a comparison table, and only the first was checked. The comparison table still read $3.00/$15.00 in both of its columns while arguing that we charge exactly what the provider charges. Both now move together, enforced by reading the two tables against each other rather than against a number written in a test.

Nine Claude models were routed through the 10%-more-expensive Bedrock profile

  • Amazon Bedrock offers Anthropic models on two kinds of inference profile, and the regional ones (us., eu.) cost 10% more than the global one. Anthropic says so on its own pricing page, for Sonnet 4.5, Haiku 4.5, Opus 4.5 and all future models, and the two rates are published side by side for the same model: $2.00/$10.00 against $2.20/$11.00 on Sonnet 5. We resell Anthropic tokens at Anthropic's list price, and that list price is the global rate — so a model on a regional profile was being sold for about 10% less than it cost to serve.
  • Nine were on a regional profile: Claude Haiku 4.5, Sonnet 5, Sonnet 4.6, Sonnet 4.5, Opus 4.5, Opus 4.6, Opus 4.7, Opus 4.8 and Fable 5. Only Opus 5 and Fable 5.1 were already correct. All nine moved to global, and a test now fails if any Claude model is pointed at a regional profile again.
  • Nothing about the service changes for a caller: same models, same prices, same region. The regional profile also carries the smaller daily token quota — roughly half the global one, unraisable, and shared with the Solana gateway out of one AWS account — so the cheaper profile is also the larger one and there was no tradeoff to weigh.
  • Every one of the nine global profiles was called for real before the switch, with a deliberately fabricated model id alongside as a control: without a failing control, a wall of successful responses only proves the credentials work, not that each profile exists. Found by the engineer working on the Solana gateway, who hit it on that catalog first.

Claude Fable 5.1, and the forced tool_choice that would have made it 400 after payment

  • Added anthropic/claude-fable-5.1 ($10 in / $50 out per 1M, 1M context, 128K max output, vision and tools) — Anthropic's most capable model, successor to Fable 5 in the same tier at the same price. A customer asking for it by name was getting a 400 unpriceable_request, because a model the gateway cannot price is refused before it runs. Verified on our own AWS account before listing, not from a docs page: both the global and us Bedrock inference profiles are active and each returned a real completion, and the 128K output cap is the upstream's own refusal message rather than a number we copied.
  • It routes on the global Bedrock profile rather than us. The us profiles carry a daily token quota that cannot be raised and that this gateway shares with the Solana one out of a single AWS account, so a new flagship on that profile competes with everything already there.
  • Fable 5.1 rejects a forced tool choice — asking it to call a specific tool, or any tool, returns an error where Fable 5 and Opus 5 both accept it. Every agent framework sends tools and many force the call, and settlement happens before the upstream request, so shipping this model without handling that would have charged for calls that could only fail. A forced choice is now quietly relaxed to automatic on this model, which still calls the tool in almost every case, and is logged so the downgrade is visible.
  • That fix landed in one place instead of four. The conversion from an OpenAI tool_choice to what Anthropic accepts had four hand-written copies — direct and Bedrock, each with a streaming twin — and a per-model rule written in three of four places is a paid error in the fourth. All four now call the same converter.
  • The listing also exposed a second gap the guards caught: the bare id claude-fable-5-1 — Anthropic's own dashed spelling, and exactly what the customer sent — resolved to nothing. Left alone it would have quietly served from the OpenAI translation layer with thinking dropped — the same failure Sonnet 4.5 had in September. The visible chat catalog is 78 models (102 total), with 7 free.

GPT-5.1 published, and five OpenAI SKUs were billing a long-context tier OpenAI does not charge

  • Added openai/gpt-5.1 ($1.25 in / $10.00 out per 1M, 400K context, 128K max output, vision and tools). It was already reachable in the routing tables but had no catalog entry, so a caller who asked for it got a 400 unpriceable_request instead of an answer. Verified with a real completion before listing — the account resolves it to gpt-5.1-2025-11-13 — along with the three request shapes that break on other GPT-5.x tiers: tools alone, tools plus reasoning_effort, and reasoning_effort on its own. It takes none/low/medium/high but not minimal. Azure has no 5.1 deployment, so this SKU runs OpenAI-direct.
  • Removed a long-context tier from five SKUs that never had one upstream: openai/gpt-5.2, gpt-5.2-pro, gpt-5.3-codex, gpt-5.4-mini and gpt-5.4-nano. Each was repricing the entire request at 2x input / 1.5x output once a prompt reached 272K tokens, which OpenAI charges on gpt-6-astra, the GPT-5.6 tiers, 5.5, 5.5-pro, 5.4 and 5.4-pro — and on none of these five. Their rows on OpenAI's pricing table leave the long-context columns empty. We resell LLM tokens at cost, so every large-prompt call on those five was overcharged, worst case gpt-5.2 Pro at $42/$252 per 1M for tokens that bill to us at $21/$168.
  • The tier is a per-SKU fact, not a family-wide one, and it had been copied down the file as though it were. It is now asserted in both directions — a list of who tiers, and a list of who does not — so giving a flat SKU a tier fails the same way dropping a real one does. The published long-context roster in llms.txt and agent.md named the same three wrong models and now matches. The visible chat catalog is 77 models (101 total), with 7 free.
  • The same audit caught the mirror image on openai/gpt-5.6-terra-pro and openai/gpt-5.6-luna-pro, where the error ran the other way. Both were repriced upward on August 30 — Terra Pro to $2/$12, Luna Pro to $0.20/$1.20 — but their long-context rates stayed at 2x / 1.5x of the OLD price, $2/$9 and $0.20/$0.90. A prompt over 272K therefore billed LESS than the same prompt under it, below what the request costs us. They are now $4/$18 and $0.40/$1.80, the ratio the entry always said it used, and all three Pro tiers are covered by the guard that asserts that ratio against the current base price rather than a copied constant.

Gemini 3.8 Flash added; Gemini 3.6 Flash was billing 2x its real cost

  • Added google/gemini-3.8-flash ($0.75 in / $3.75 out per 1M, 1M context, 65,536 max output, thinking + vision). Live-probed direct against Google before listing: a real completion with finishReason STOP and a genuine thoughtsTokenCount, not a 200 on the model list. It also accepts thinkingConfig.thinkingBudget: 0 — worth stating because the 3.6 Flash and 3.5 Flash-Lite generation rejects that outright, and a model in the wrong bucket 400s on every call and silently serves its fallback instead.
  • Corrected google/gemini-3.6-flash from $1.50/$7.50 to $0.75/$3.75. Google put the whole 3.6/3.7/3.8 Flash band on a promotional rate through 2026-12-31 and our catalog never followed, so for a month that SKU billed roughly twice what it costs us. We route Google direct, so the promotional rate is our actual cost, not a resale price.
  • That correction exposed two fallbacks that were never legitimate. openai/o3 and google/gemini-3.5-flash both failed over to gemini-3.6-flash, and both passed the price-band guard only because 3.6 was carrying the stale, inflated price — at the real one they bill 2.7x and 2.4x what they serve. No model at any vendor sits inside the band for either, so both now fail honestly rather than rescuing a caller at a markup, which is the same call the 2026-08-31 sweep made.
  • The promotional rate reverts to $1.50/$7.50 on 2027-01-01 for both models. Both catalog entries carry a dated note to re-price them before then. The visible chat catalog is 75 models (99 total), with 7 free.

Three models added, and two GPT-5.6 Pro SKUs that were failing every call

  • Added qwen/qwen3.8-flash ($0.15 in / $0.47 out per 1M, 1M context, image input) — a 125B MoE on hybrid GDN+QSA attention that Alibaba positions above the Qwen3.7 Plus tier we sell at $0.32/$1.28, so it is newer and cheaper than the model it beats.
  • Added deepseek/deepseek-v4-flash-vision-exp ($0.44 / $1.32, 1M context) — the first DeepSeek model in our catalog that takes images. It runs direct from DeepSeek because the resale route refuses it under our account's data policy, and it is priced at DeepSeek's peak rate: their new peak/off-peak split would otherwise have us selling below cost for seven hours every weekday.
  • Added xiaomi/mimo-v2.5 ($0.14 / $0.28, 1M context, image input). This is not a cheaper mimo-v2.5-pro — it is the natively multimodal SKU, where the Pro tier we already listed is text-only, and it costs a third as much. Image input on all three was verified with real calls before listing; audio and video are advertised for MiMo but unverified, so they are not claimed.
  • Fixed two SKUs that were failing every request. OpenAI raised gpt-5.6-terra-pro to $2/$12 and gpt-5.6-luna-pro to $0.20/$1.20 while our catalog still said $1/$6 and $0.10/$0.60 — and the gateway derives its upstream cost ceiling from the catalog price, so no provider qualified. Luna Pro has no fallback and returned a hard error; Terra Pro quietly served its cheaper fallback model while billing Terra Pro's rate. Both now carry the current upstream price. The visible chat catalog is 76 models (100 total), with 7 free.

Free tier rebuilt: NVIDIA retired four of the five free models in one sweep

  • A two-pass live probe against real completions — not the model list — found four of the five free models gone at once. nvidia/step-3.7-flash, nvidia/nemotron-nano-9b-v2 and nvidia/nemotron-nano-12b-v2-vl all return a published 410 Gone; nvidia/mistral-nemotron is the quieter failure NVIDIA never announces — still listed, but a completion never comes back (>150s, zero bytes, both passes). Every one of them is delisted and auto-rerouted, so calls pinned to those ids still return 200.
  • The hidden nvidia/nemotron-super-49b is 410 too, and it was load-bearing twice over: it was the last rung of the free cascade AND the fallback of the cascade's primary, so the primary's insurance had itself died. Both were retargeted, and the cascade's last resort is now the fastest free model rather than the slowest.
  • Three replacements were added, each verified with a real completion before listing: nvidia/nemotron-3.5-lightning (thinking-mode reasoning, 131K context, ~35 tok/s), nvidia/nemotron-3-nano-30b (~121 tok/s — the fastest free model we have listed) and nvidia/llama-3.2-11b-vision, the only Llama NVIDIA still serves, which brings a real Meta model and a second vision option back to the free tier.
  • nvidia/gpt-oss-120b and 20b recovered on the same probe and no longer redirect away — a caller pinned to GPT-OSS reaches GPT-OSS again. The free landing pages were repointed off every dead model, and /free-mistral now says plainly that no free Mistral upstream remains instead of advertising one.
  • Two of the free models now serve from a far larger free-tier capacity pool, with their previous route kept as the fallback: same models, and measurably better — Nemotron 3.5 Lightning answers in 4.9s median against 16.3s, and comes with a 1M-token context instead of 131K. Image input was verified through the new route before the vision model was moved.
  • Three models joined the free tier: nvidia/nemotron-3-ultra-550b (550B total / 55B active, 1M context — the largest free model we have listed, and unreachable on our own key), cohere/north-mini-code (compact coding, sub-second) and poolside/laguna-xs-2.1 (coding, ~161 tok/s). The visible chat catalog is 73 models (97 total), with 7 free.
  • Fixed while measuring them: an OpenAI-compatible relay can answer HTTP 200 with an error object and no choices when the provider behind it fails, and we were treating that as a successful empty completion — the fallback chain, the health breaker and the retry classifier all saw a success. Three of fifteen sampled calls to one free model arrived that way. Both the blocking and the streaming path now rethrow it as a real upstream error, which also means a paid model can no longer bill the minimum charge for an upstream outage that produced nothing.

GPT-5.3 Codex: caller temperature no longer 400s; two retired OpenAI ids redirected

  • openai/gpt-5.3-codex is served over OpenAI's /v1/responses with a reasoning effort set, and with that set OpenAI rejects `temperature` outright. The gateway was forwarding the caller's value, so an ordinary temperature:0.7 turned into a 400 on every codex call — and because that error reached the per-model circuit breaker without its status, three such requests opened the breaker and pushed every codex call for the next five minutes onto the fallback chain. Sampling parameters are no longer forwarded on that path, and upstream 4xx errors now carry their status so a caller's bad parameter cannot trip the breaker for everyone else.
  • openai/gpt-5.2-codex has been removed from /v1/responses by OpenAI ("Model not found"), yet it was still gpt-5.3-codex's fallback — so every codex failover took a dead hop, then gpt-5.2-codex's own fallback, and could land on a free NVIDIA model with settlement skipped. gpt-5.3-codex now fails over to gpt-5.4-mini (live on chat completions with tools, $0.75/$4.50 against $1.75/$14 billed), and gpt-5.2-codex is delisted and redirected to gpt-5.3-codex at the identical price.
  • openai/gpt-5.3 mapped to gpt-5.3-chat-latest, which OpenAI has deprecated (404 model_not_found); the gateway had been relaying that 404 byte-verbatim to a handful of callers a day. It is delisted and redirected to gpt-5.2 — the same $1.75/$14 and 400K context, and already its fallback — so pinned callers keep working at the price they were quoted.
  • anthropic/claude-sonnet-4.6 and anthropic/claude-haiku-4.5 both accept image input through the gateway but their catalog entries did not list the vision category, so /v1/models — and any router that derives image support from it — under-reported them. Fixed in data. The visible chat catalog is 71 models (95 total), with 5 free.

Z.AI GLM-5.3 Flash: native multimodal at $0.15/$0.50

  • Added zai/glm-5.3-flash — the first natively multimodal model in the GLM-5 series. 320B total / 18B active parameters on a hybrid sparse+linear attention architecture, 1M-token context, 131,072 max output, image input, always-on reasoning. $0.15 in / $0.50 out per 1M, which puts a 1M-context vision model below what most flagships charge for text alone.
  • Verified live against Z.AI before listing: real completions, tool calls with well-formed arguments, streaming with a usage frame, and image input answered correctly. Remote image URLs work; hosts that block Z.AI's fetcher (upload.wikimedia.org is one) surface as an image parse error, and base64 data URLs always work.
  • Priced at Z.AI's list rate. Z.AI is running a 50% launch promotion through 2026-09-09 — we list the price that survives it rather than one that would lapse under our own cost two weeks later.
  • Thinking cannot be disabled on the 5.3 generation, and does not need to be: unlike GLM-5, 5.1 and 5.2, it returns content alongside its reasoning instead of spending the whole budget on it. The visible chat catalog is 72 models (96 total), with 5 free.

Z.AI GLM-5.3 added

  • Added zai/glm-5.3 — Z.AI's flagship, 1M-token context with always-on reasoning and strong long-horizon coding. $1.40 in / $4.40 out per 1M, 131,072 max output. Probed live before listing: a real completion in 2s, content returned alongside reasoning tokens.
  • GLM-5.2 stays listed and routable at the same rates. Its description no longer calls it our newest Z.AI flagship, since that string ships verbatim in GET /v1/models.

Discovery fix: partner GET endpoints now declare query-string input

  • The x402 discovery record (extensions.bazaar) on every partner 402 declared input parameters under `body` regardless of HTTP method, so agents that built calls from the CDP Bazaar catalog sent GET requests (e.g. /v1/surf/web/fetch) with a JSON body and failed. GET endpoints now declare `queryParams` and a `query` input schema per the Bazaar spec; POST endpoints keep `bodyFields`. Reported by an external integrator — thank you.
  • Nothing changed about how the endpoints themselves work: GET params were always read from the query string (e.g. GET /v1/surf/web/fetch?url=...), and /openapi.json already declared them correctly. Only the 402 discovery metadata was wrong. Bazaar's catalog entry refreshes on its next crawl.

DeepSeek V4 Flash retired by the free upstream; Seedance 2.0 Mini added

  • A live two-pass probe confirmed nvidia/deepseek-v4-flash now returns HTTP 410 Gone (end of life) from NVIDIA's free tier — the last free DeepSeek model. It is delisted and auto-reroutes to nvidia/gpt-oss-120b, so pinned callers still get a 200. The nvidia/deepseek-v4-pro and nvidia/deepseek-v3.2 redirects, which pointed at V4 Flash, now land on the same workhorse. The bare deepseek-v4-flash alias continues to resolve to the paid deepseek/* SKU on api.deepseek.com, which is unaffected.
  • The paid deepseek/deepseek-chat no longer carries an automatic failover: its only same-family candidate bills above what the SKU charges, and a below-cost substitution on every upstream error is worse than an honest error. deepseek/deepseek-reasoner keeps its existing V4 Pro failover.
  • bytedance/seedance-2.0-mini joins the video lineup at ~$0.080/sec at 720p (token-metered $3.5/1M), 15s max, with RealFace support. The visible chat catalog is 70 models (93 total), with 5 free.

Chat tokens billed at the provider's list rate

  • Per-token chat models are now billed at the provider's own list rate — no platform markup on chat tokens. The only addition is the flat per-call transaction fee (currently $0.001). The per-token rates on /pricing and /models are the rates you are billed at.
  • Media generation (image, video, music, speech) and live search keep their published 5% markup. Nothing changes about how you pay: every call is still settled on its own, with nothing to top up and no balance held.

100+ live endpoints published to discovery; six dead ones de-registered; every published price derived

  • Surf (83 endpoints), 0x (9 public) and DefiLlama (5) had been callable for months while /openapi.json and /.well-known/x402 listed almost none of them, so an agent that reads discovery before it calls concluded they did not exist. Predexon's 25 templated paths were skipped outright. All three surfaces are now generated from the lib/ endpoint registries instead of restating them by hand: openapi 95 → 185 paths, x402 v1 105 → 238 resources.
  • /v1/pm/markets, /v1/pm/markets/listings and /v1/pm/outcomes/{predexon_id} are de-registered — direct probing showed all three carry the same 2026-07-20 sunset 410 as matching-markets did, which means the 2026-08-03 note pointing at them as the replacement was wrong. /v1/pm/markets/search is the surviving cross-venue endpoint. All three /v1/pm/dflow/* paths are de-registered too: upstream returns route-not-found, the category is gone.
  • /v1/pm/sports/* is withheld from discovery, not deleted. All four paths return a consistent upstream 500 (a partner bug, not a sunset), so the routes keep serving for anyone who already has the paths while they stop being advertised. Payment is never charged when upstream fails.
  • Every published price is now computed from its constant rather than typed. Roughly 60 quotes across the specs, llms.txt, agent.md, skill.md and the marketing pages were still frozen at the $0.002 transaction fee that returned to $0.001 on 2026-07-29 — mostly over-quotes, but Predexon ($0.008 vs $0.0085), Modal ops and a $5.00 phone number against a real $5.001 were promising LESS than the 402 signs. Pyth equities were a separate 3x error, published at $0.003 against a real $0.0010.

Two free models hit NVIDIA end-of-life; sunset Predexon matching endpoints removed

  • A live two-pass probe confirmed nvidia/seed-oss-36b and nvidia/mistral-small-4-119b now return HTTP 410 Gone from NVIDIA's free tier. Both are delisted and auto-reroute (seed-oss to nvidia/gpt-oss-120b, mistral-small to nvidia/mistral-nemotron), so pinned callers still get a 200. The visible chat catalog is 71 models (92 total), with 6 free.
  • mistral-small was the /free-mistral page primary; the page now leads with nvidia/mistral-nemotron (verified on the same probe: 48 tok/s, first-try answer). llama-4-maverick, offline since June, also flipped from timeout to a published 410 on this probe.
  • /v1/pm/matching-markets and /v1/pm/matching-markets/pairs are de-registered — the upstream provider discontinued market matching on 2026-07-20, so those paths returned an upstream 410 (never charged). Cross-venue equivalence lives on in /v1/pm/markets, markets/listings, and markets/search. (Correction, 2026-08-04: markets and markets/listings were already dead when this was written — they carry the same 410. Only markets/search survived. See the 2026-08-04 entry.)

Eight new models: Gemini 3.6 Flash, GPT-5.6 Pro tiers, Qwen3.7 Plus/Flash, Nano Banana 2

  • google/gemini-3.6-flash ($1.50 in / $7.50 out per 1M — Google's 17% output-price cut vs 3.5 Flash) and google/gemini-3.5-flash-lite ($0.30/$2.50) — both live-verified with real completions before listing. Gemini 3.6 Flash replaces 3.5 Flash on the homepage featured list.
  • The GPT-5.6 Pro tiers: openai/gpt-5.6-sol-pro ($5.00/$30.00), gpt-5.6-terra-pro ($1.00/$6.00), and gpt-5.6-luna-pro ($0.10/$0.60) — the same models served with pro reasoning mode, the config behind ChatGPT Pro. Note Terra/Luna Pro bill below their standard siblings; that is OpenAI's list, not a typo.
  • qwen/qwen3.7-plus ($0.32/$1.28, 1M context, 131K output) and qwen/qwen3.7-flash ($0.03/$0.13, 1M context) complete the Qwen3.7 line below Max. Both are reasoning models — give them max_tokens headroom or the whole budget goes to thinking.
  • google/nano-banana-2 ($0.09/image) — Gemini 3.1 Flash Image, pro-level quality at Flash speed, for both /v1/images/generations and image2image editing. Brings the visible chat catalog to 72 models (93 total across all modalities).

Three free models hit NVIDIA end-of-life; /free-qwen retired

  • A live two-pass probe found qwen3-next-80b-a3b-instruct, qwen3.5-397b-a17b and mistral-large-3-675b all returning HTTP 410 Gone from NVIDIA's free tier. All three are now delisted and auto-reroute to nvidia/gpt-oss-120b, so pinned callers still get a 200 rather than an error.
  • qwen3-next-80b was the free reasoning default, so /free-deepseek now leads with nvidia/step-3.7-flash (131K context, ~34 tok/s) and nvidia/gpt-oss-120b (~37 tok/s), both verified on the same probe. The visible chat catalog is 65 models (85 total), with 7 free.
  • /free-qwen is retired and now redirects to /free-deepseek. Every Qwen model on NVIDIA's free tier has reached end of life, and a Free Qwen3 page with no Qwen behind it is a promise we cannot keep. It comes back if NVIDIA relists one.
  • Separately: URLs with broken percent-encoding returned 500 instead of 400. They now return 400. Nothing about a valid request changes — a missing page is still a 404.

tencent/hy3 and xiaomi/mimo-v2.5-pro — two of 2026's most-used open models

  • Added tencent/hy3 ($0.132 in / $0.528 out per 1M, 262K context, 128K output) and xiaomi/mimo-v2.5-pro ($0.435 / $0.870, 1M context, 131K output). Both are reasoning models; both verified with live completions before listing. Prices are the providers' list rates.
  • These were picked by demand, not by count: Hy3 held the #1 usage slot on the largest public model aggregator for 19 days this spring, and MiMo ran roughly a fifth of weekly volume in April, and we carried neither maker. Brings the visible chat catalog to 66 models (86 total across all modalities).
  • Heads-up for both: they spend output tokens on reasoning before answering, so a small max_tokens can return an empty completion. Give them room.

GPT-5.6 Luna is 80% cheaper — OpenAI's price cut, passed through in full

  • OpenAI cut GPT-5.6 pricing on July 30. Both cuts are now live: openai/gpt-5.6-luna drops to $0.20 in / $1.20 out per 1M (from $1.00/$6.00, -80%) and openai/gpt-5.6-terra to $2.00/$12.00 (from $2.50/$15.00, -20%). Long-context tiers follow at $0.40/$1.80 and $4.00/$18.00.
  • openai/gpt-5.6-sol is unchanged at $5.00/$30.00 — OpenAI left the flagship alone, so Luna now costs less than gpt-5.4-mini. We passed the cut through rather than keeping the spread, and re-checked every other OpenAI model against the published rates in the same pass; they already matched.
  • Terra now falls back to gpt-5.4-mini and Luna to gpt-4o-mini. OpenAI did not reprice the previous fallback targets, so they now cost more than the primaries bill and every failover would have settled below cost.

anthropic/claude-opus-5 — new Anthropic flagship, live on launch day

  • Added anthropic/claude-opus-5: Anthropic's newest Opus, a step-change over Opus 4.8 for deep reasoning and agentic coding at the same $5.00 in / $25.00 out per 1M (Anthropic's list rate). 1M context, 128K output, adaptive thinking, vision. Verified live with a real completion and an output-cap probe before listing.
  • clawrouter-premium now routes to claude-opus-5 (best quality at unchanged pricing); Opus 4.8 stays fully routable. Brings the visible chat catalog to 64 models (84 total across all modalities).

qwen/qwen3.7-max — Alibaba Qwen flagship added

  • Added qwen/qwen3.7-max: Alibaba's Qwen flagship — the Max tier, 1M context, strong reasoning, coding, and agentic tool use. $1.475 in / $4.425 out per 1M (Alibaba's list rate). Verified live before listing.
  • First paid Qwen flagship on the gateway — previously the only Qwen models were the free NVIDIA-hosted tier. Brings the visible chat catalog to 61 models (81 total across all modalities).

moonshot/kimi-k3 — Moonshot flagship upgraded

  • Added moonshot/kimi-k3: Moonshot's new flagship, a 2.8-trillion-parameter open MoE with a 1M-token context window, image + text input, and returned reasoning_content. $3.00 in / $15.00 out per 1M. Verified live on release day with real completions, tool calls, and vision before listing.
  • kimi-k3 replaces kimi-k2.7 as the featured Kimi on the homepage and discover pages; k2.7 is marked hidden but kept routable so existing integrations don't break, and new traffic auto-prefers k3 via fallbackModel chaining.

openai/gpt-5.6 — Sol, Terra & Luna tiers, live on GA day

  • Added all three GPT-5.6 tiers to the catalog the day OpenAI moved them to general availability: gpt-5.6-sol ($5/$30 per 1M — flagship reasoning), gpt-5.6-terra ($2.50/$15 — balanced), and gpt-5.6-luna ($1/$6 — high-volume, latency-sensitive). All verified live with real completions and tool calls before listing. 1M context each.
  • gpt-5.6-sol replaces gpt-5.5 as the featured OpenAI flagship on the homepage and discover pages (same price).
  • Gateway compatibility: GPT-5.6 rejects function tools on /v1/chat/completions unless reasoning_effort is explicitly "none" — the gateway now sets that automatically when tools are present, so agent frameworks (OpenClaw, ClawRouter) work unchanged.

Marketplace is now Services — site repositioned around routing + payment

  • BlockRun's one-liner is now "The routing & payment layer for AI": one endpoint routes every call to the right provider, with payment built in. The same framing now runs through the homepage, SEO metadata, structured data, agent.md, and llms.txt.
  • /marketplace and all its sub-pages moved to /services — every old URL permanently redirects (301), so existing links and bookmarks keep working.
  • The homepage logo marquee was replaced by a payment-rails band naming the two relationships that actually settle your calls: Coinbase (x402 protocol) and Circle (USDC).

Free tier revamp — self-healing health gate + refreshed model lineup

  • New self-healing health gate: a runtime circuit breaker now routes free requests around any free model whose upstream has died (410 end-of-life, 404 pulled, or a hung deployment), and auto-recovers it when the upstream comes back. Replaces the hand-maintained redirect list — dead free models no longer cause 60-second hangs.
  • Refreshed the free catalog with 7 newly-verified models: Qwen3-Next 80B Instruct (262K context), Qwen3.5 122B, Mistral Nemotron, StepFun Step 3.7 Flash, ByteDance Seed-OSS 36B, and two compact Nemotron Nano models (one vision-capable). Every visible free model is now live-verified.
  • Retired free models that NVIDIA pulled upstream (DeepSeek V4 Flash/Pro, Qwen3 Coder 480B, Devstral 2) are hidden and auto-rerouted to a healthy free model, so existing calls still return 200.
  • Free landing pages refreshed to point at live models: /free-qwen and /free-mistral now showcase healthy models, and /free-deepseek became a general free-reasoning page led by Qwen3-Next 80B.

moonshot/kimi-k2.7 — Moonshot flagship upgraded

  • Added moonshot/kimi-k2.7: 256K context multi-modal reasoning model with image + VIDEO input and returned reasoning_content. $0.95 in / $4.00 out per 1M.
  • kimi-k2.6 marked hidden but kept routable so existing integrations don't break; new traffic auto-prefers k2.7 via fallbackModel chaining.

ElevenLabs voice added — text-to-speech & sound effects

  • New BlockRun Voice: ElevenLabs text-to-speech at /v1/audio/speech. Flash v2.5 (~75ms latency, for real-time voice agents) and Turbo v2.5 at $0.05/1k characters; Multilingual v2 and Eleven v3 (maximum expressiveness) at $0.10/1k characters. Pay per call in USDC via x402 — no ElevenLabs subscription.
  • Price is billed per input character and quoted up front in the 402, then recomputed from the request body on the paid call so it can't be under-paid. Synchronous — returns a hosted MP3 URL. Settlement fires only after successful synthesis; a failed upstream call is never charged.
  • Also added sound effects at /v1/audio/sound-effects ($0.0525/generation, up to 22s) and a free voice-discovery endpoint /v1/audio/voices.
  • Listed on the marketplace under the new Voice & Speech category with a dedicated /marketplace/elevenlabs page.

OpenAI Sora 2 added to video generation (via Azure AI Foundry)

  • Added azure/sora-2 to the video catalog — OpenAI's Sora 2, served through Azure AI Foundry. Realistic text-to-video at 720p (portrait or landscape) with synchronized audio, in 4, 8, or 12-second clips.
  • Pricing: flat $0.10/sec + 5% margin — a 4s clip with audio runs ~$0.42, undercutting our Seedance 2.0 tiers per clip. Pay-per-second in USDC via x402, no OpenAI account or Azure subscription required.
  • Routes through the existing async /v1/videos/generations submit→poll pipeline under the new 'azure' provider prefix; settlement fires on the first completed poll, so a failed or never-polled job is never charged. Reuses BlockRun's existing Azure OpenAI resource.
  • Sora's content-download endpoint is authenticated, so the GCS mirror step now replays the api-key header when backing up the finished MP4.

DeepSeek V4 Pro added to paid catalog — 75% launch promo

  • Added deepseek/deepseek-v4-pro to the paid catalog against api.deepseek.com — 1.6T MoE / 49B active, 1M context, 65K max output. Launch-promo pricing $0.50 in / $1.00 out per 1M tokens through 2026-05-31 (75% off list); reverts to $2.00 / $4.00 after.
  • V4 Flash is NOT exposed as a separate paid SKU — the free nvidia/deepseek-v4-flash already covers that need, and a paid duplicate would just confuse callers. Customers who need paid-tier V4 Flash (for production reliability or 5MB request bodies) reach it via the legacy deepseek/deepseek-chat / deepseek/deepseek-reasoner aliases, which DeepSeek upstream serves as V4 Flash non-thinking / thinking modes.
  • Backward compat: deepseek/deepseek-chat and deepseek/deepseek-reasoner keep working — relabeled to 'V4 Flash Chat' and 'V4 Flash Reasoner' to reflect what's actually served upstream, context bumped from 128K to 1M, price dropped to $0.20 in / $0.40 out (down from $0.28 / $0.42). Existing integrations need no changes.
  • Routing: bare deepseek-v4-pro resolves to the new paid SKU. Bare deepseek-v4-flash continues to resolve to the free nvidia/deepseek-v4-flash. The nvidia/deepseek-v4-pro → nvidia/deepseek-v4-flash redirect stays in place since NVIDIA's free V4 Pro deployment is still hung.

NVIDIA upstream sweep — three more models auto-redirected, GPT-OSS re-enabled

  • Direct probe of NVIDIA NIM revealed three more models with broken upstream: nvidia/nemotron-ultra-253b returns HTTP 404 (NVIDIA retired the checkpoint), nvidia/deepseek-v3.2 hangs the connection (60s, zero bytes — same fail mode as V4 Pro), and nvidia/glm-4.7 also hangs the connection.
  • All three are now auto-redirected via MODEL_REDIRECTS to working free alternatives: nemotron-ultra-253b → qwen3-next-80b-thinking; deepseek-v3.2 → deepseek-v4-flash; glm-4.7 → qwen3-coder-480b.
  • Targets are spread across qwen3-coder, qwen3-next-thinking, and v4-flash to avoid funneling all the load onto qwen3-next-thinking (which is already getting 429 capacity throttles from NVIDIA at peak hours).
  • Free-tier upstreams are unstable — catalog entries stay available: true (hidden: true), so each model self-heals when NVIDIA re-deploys; clearing the redirect line is the only step needed to re-enable.
  • nvidia/gpt-oss-120b and nvidia/gpt-oss-20b re-enabled (were available: false since 2026-04-28). NVIDIA upstream is healthy on direct probe; the privacy concern that drove the original retirement (NVIDIA's free tier may use prompts for service improvement) is preserved by hidden: true so the public /v1/models browser still doesn't list them — but legacy ClawRouter callers using the full ID now get a 200 instead of a 400.

DeepSeek V4 Pro delisted — auto-redirected to V4 Flash

  • nvidia/deepseek-v4-pro is delisted from the public catalog and the model picker. Direct NVIDIA NIM probe (2026-04-30) confirms the upstream deployment is hung — V4 Pro is published in NVIDIA's catalog but every request hangs the connection indefinitely (zero bytes received in 300s). V4 Flash works fine on the same NIM endpoint, so it's an NVIDIA-side V4-Pro-specific issue.
  • Behavior change: calls to nvidia/deepseek-v4-pro (and the bare deepseek-v4-pro alias) now redirect deterministically to nvidia/deepseek-v4-flash via MODEL_REDIRECTS — same V4 family, 1M context, free, healthy. Replaces the previous fallback-cascade behavior which non-deterministically landed on V4 Flash, qwen3-next-80b-thinking, or zai/glm-5.1.
  • nvidia/deepseek-v3.2 fallback retargeted from V4 Pro to V4 Flash so V3.2 callers don't inherit the cascade either.
  • V4 Flash + Nemotron Omni (added 2026-04-29) remain healthy and free.
  • We'll re-list V4 Pro when a smoke test (single non-streaming request) returns inside 30s.

Free-tier catalog refresh — DeepSeek V4 Flash + first vision-capable free model

  • Added nvidia/deepseek-v4-pro: 1.6T MoE / 49B active, 1M context. Top open reasoning (MMLU-Pro 87.5, GPQA 90.1, SWE-bench 80.6, LiveCodeBench 93.5). Note (2026-04-30): held back from public availability — see today's entry above.
  • Added nvidia/deepseek-v4-flash: 284B / 13B active MoE, 1M context. ~5x faster than V4 Pro for chat/summarization. Caveat: weaker factual recall (SimpleQA 34% vs Pro's 58%) — pick V4 Pro for fact-heavy agent loops once it's re-enabled.
  • Added nvidia/nemotron-3-nano-omni-30b-a3b-reasoning: first vision-capable model in our free tier. ChartQA 90.3, DocVQA 95.6, MMMU 70.8. Accepts text, images, video (≤2 min), audio (≤1 hr). 256K context.
  • Skipped after benchmark review: qwen3-next-80b-a3b-instruct (loses reasoning on 18/20 benchmarks vs -thinking variant); qwen3.5-122b-a10b (redundant once Omni covers vision); nemotron-nano-3-30b-a3b (strictly worse than our 49B Super on text reasoning); mistral-medium-3.5-128b (released today, no benchmarks published yet).
  • Total free-tier model count now 15 (was 12).

Async image flow + free-tier rate limit removed + GEO content sweep

  • Image generation API switched to hybrid sync/async — fast models keep returning {data:[…]} inline; slow models (gpt-image-2, grok-imagine-image-pro) return {id, poll_url} 202. Stops Cloudflare 524 timeouts on long generations.
  • @blockrun/llm SDK 1.12.0 ships transparent polling for the new async image flow — public API unchanged.
  • MCP error classifier now uses `instanceof PaymentError` instead of substring match on the error message (no more false 'fund your wallet' messages on 524s).
  • Privacy policy + terms rewritten with explicit 'we do not share your data' stance.
  • NVIDIA gpt-oss-120b/20b free models pulled from public catalog (their free tier may train on prompts).
  • Homepage: TrustStrip + FAQ added, hero copy fixed (dropped 'Talk to us' from product list, retired YOPO eyebrow), Franklin section rewritten to disambiguate 'wallet', partners bar shows brand names alongside icons, 'FREE' pill added to models section.
  • GEO content: /what-is-x402, /what-is-pay-per-call-ai, /glossary, /vs-openrouter, /vs-portkey, /vs-helicone, /changelog (this page). JSON-LD added to /about, /enterprise, /products, /marketplace, /get-started.

Free-tier rescue when paid payment fails

  • Wallets with insufficient USDC are now downgraded to the free fallback model instead of receiving a hard 402.
  • Z.AI GLM-5.1 added as tertiary free fallback (200K context).

openai/gpt-5.5 — flagship released

  • Added openai/gpt-5.5 to the model catalog as featured. Replaces gpt-5.4 in the homepage table.
  • Awesome-blockrun submodule bumped with gpt-5.5 sweep.

Image edit timeout bumped + free fallback updated

  • image2image (edit) timeout raised to 180s for gpt-image-2 at >=1536px.
  • Default free-fallback model updated to nvidia/qwen3-next-80b-a3b-thinking (116 tok/s with thinking mode).

moonshot/kimi-k2.6 — Moonshot flagship added

  • Added moonshot/kimi-k2.6: 256K context multi-modal reasoning model with vision and returned reasoning_content. $0.95 in / $4.00 out per 1M.
  • kimi-k2.5 marked hidden but kept routable so existing integrations don't break; new traffic auto-prefers k2.6 via fallbackModel chaining.

Async video generation

  • Video generation switched to async submit + polled settlement. Removed the 85s upper bound on video duration that the sync flow imposed.
  • Same x-payment header binds caller to job ID across the POST→GET cycle.

On-chain settlement reconciliation

  • A public page now reconciles the gateway's per-call records against the on-chain settlement transactions on Base. That page has since been retired; the live feed and settled totals are on /live.
  • Cumulative wallet count and call count never shrink due to rolling-window aggregation.

Multimodal made visible on homepage

  • ChatGPT Images 2.0 (gpt-image-2), Seedance video, and MiniMax music surfaced in the homepage models table.
  • Pricing page gained first-class Image/Video/Music filters with their own SEO metadata.