Skip to main content
Platform

Billing address and tax ID each have one place to edit

  • Edit the billing address in the Stripe billing portal (Manage billing info).
  • Edit the tax ID on the billing account page.
  • An EU billing account takes an address in an EU-27 country only.
  • The keys list hides revoked keys by default. Filter by status and sort by any column.
Inference

Admission holds balance for the largest output cap

  • We hold balance for the largest output cap a request carries: max_tokens, max_completion_tokens, or either inside extra_body. When that cap is more than the key’s balance covers, the request gets 402 insufficient_balance.
Platform

The Activity chart follows your time zone

  • The dashboard Activity chart buckets by your local time zone and shows quiet periods as zero.
  • Invoices and the usage export stay on UTC.
Platform

Member spend caps count a rolling 90 days

  • A member spend cap counts spend over a rolling 90 days, labelled Rolling 90 days.
  • A key blocked only by older spend reopens as that spend ages out.
Inference

Requests and streams run up to 30 minutes

  • A request or stream runs for up to 1800 s unless the model sets a shorter limit.
Platform

Usage presets cover whole UTC days

  • The 7d and 30d presets on the Usage page cover whole UTC days.
  • Tokens and cost are counted over the same window.
Inference

Per-token rates changed on one model

USD per million tokens.
Inference

Two models leave serverless on 2026-10-28

Qwen3-8B-FP8 is deprecated from serverless effective 2026-10-28. Migrate to Qwen3.5-9B.DeepSeek-V4.1-Flash is deprecated from serverless effective 2026-10-28. Migrate to DeepSeek-V4.1-Flash-1017.From 2026-10-28, requests to the two retired ids return 404.Replacement rates, USD per million tokens.
Inference

Three models added to serverless

Llama-Guard-4-12B is on serverless. USD per million tokens.MiniMax-H3 is on serverless. USD per video.Qwen3-Reranker-8B is on serverless. USD per million tokens.
Inference

DeepSeek-V4.1-Flash-1017 is on serverless

USD per million tokens.
Inference

Per-token rates changed on five models

USD per million tokens.
Platform

We bill only for the output a request produced

  • We bill a generation on its output tokens, counted as the greater of completion and reasoning tokens. Embeddings and rerank are billed on the prompt.
  • A failed call is not billed. Nor is a request rejected for exceeding the context window.
  • Auto-recharge turns off when the last payment method is removed.
Inference

reasoning_effort rejects unknown words, and rounds up where a model has no dial

  • We reject a reasoning_effort value that is not an effort level with 400. The vocabulary is minimal, low, medium, high, xhigh, max and none.
  • On DeepSeek-V4-Flash-0731, minimal is the off switch. low and medium round up to high and are reported in x-flexai-adjusted-params: reasoning_effort=high — reasoning=high for OpenRouter’s reasoning.effort and for /v1/responses.
  • We reject an image sent to a model that cannot read one with 400. The response was previously 429, which SDKs retry.
Inference

Rates changed on sixteen models

USD per million tokens.USD per million characters.
Inference

Context-window rejections carry context_length_exceeded

  • An engine context-window rejection is normalised to an invalid_request_error with code context_length_exceeded, and param set to messages, input or prompt to match the endpoint.
  • The context window and weight precision in /v1/models are the ones the fleet is serving, which can differ from the catalog’s.
Platform

Request account deletion from the dashboard

Requesting deletion revokes your API keys, ends your sessions and starts a 30-day grace period. The request can be cancelled during that period.
Inference

Video results are single-download and expire after an hour

  • Downloading a clip deletes it and the prompt that made it. A second request is refused with 410 job_already_retrieved.
  • An uncollected clip expires after one hour. A request for the job afterwards is refused with 410 job_expired.
Inference

Usage lookup by request ID works again

Requests made during the outage are not queryable by id. Their usage is still counted.
Inference

reasoning_effort on hybrid models, tool calling on the Responses API

  • reasoning_effort turns reasoning on for GLM-4.5-Air-FP8, NVIDIA-Nemotron-3.5-Lightning-30B-A3B, Qwen3-8B-FP8, Qwen3.5-9B, Qwen3.6-27B-FP8, Qwen3.6-35B-A3B-FP8, gemma-4-26B-A4B-it and gemma-4-31b-it. low, medium, high, xhigh and max turn it on; none and minimal leave it off. Depth is not adjustable on these models, so x-flexai-adjusted-params: reasoning_effort=on is set on the response — reasoning=on for OpenRouter’s reasoning.effort and for /v1/responses.
  • thinking: {"type": "disabled"} and enable_thinking: false in chat_template_kwargs win over reasoning_effort. The dropped effort is reported in x-flexai-dropped-params.
  • Tool calls from GLM-4.5-Air-FP8 come back as function_call items on non-streaming /v1/responses with thinking off. A reply that is only a tool call comes back as a message item plus one function_call per call; anything else is passed through as the engine sent it, including a forced tool_choice and a reply cut off at max_output_tokens.
  • The call is included for a forced tool_choice on streaming /v1/responses.
  • tool_choice: "required" on GLM-5.2, MiniMax-M2.7 and NVIDIA-Nemotron-3.5-Lightning-30B-A3B sets parallel_tool_calls: false, named in x-flexai-dropped-params. Sending false, or omitting it, adds no header.
  • An unrecognised /v1/responses input item type is rejected with input[i].type naming the item. reasoning, item_reference and hosted-tool calls pass through.
  • DeepSeek-V4-Flash-0731 may fill top_p 0.95 when you send none. Any value you send takes precedence, including temperature: 0. Filled fields are named in x-flexai-sampling-defaulted.
Platform

Billing emails follow your top-ups, and EU accounts bill in euros

  • Low-balance emails key off your last top-up: “running low” below a fifth of the balance after that top-up, “out of credit” at $0. Each top-up re-arms both.
  • With auto-recharge on, only the “out of credit” email is sent.
  • Postpaid budget alerts fire at 80% and 100% of the cap.
  • There is no “card added” confirmation email.
  • EU accounts are charged and invoiced in euros. Prices, usage and balance stay in US dollars; a euro top-up converts once, at charge time, at a reference rate fixed for the calendar month. Regions.
Inference

New model: Qwen3.8 Flash Next

Qwen3.8 Flash Next — $0.15 input, $0.47 output per million tokens, 262K context. Serving since 28 September.
Inference

Token Factory changelog

Model arrivals and removals, pricing changes and API changes are published here.GET /v1/models lists what is serving now, with current per-token pricing.
Inference

New models: GLM 5.3 Flash and Qwen3.8 27B

Both serving now, both accept images.
  • GLM 5.3 Flash — $0.075 input, $0.25 output per million tokens, 1M context.
  • Qwen3.8 27B — $0.42 input, $3.00 output per million tokens, 262K context.