GPT-6.1 Sol, which OpenAI released on September 29, 2026, is in the Router One catalog as openai/gpt-6.1-sol (listed 2026-09-30), and the gateway also accepts OpenAI's own id, gpt-6.1-sol. It is served natively on POST /v1/responses — the wire format Codex CLI speaks — and on POST /v1/chat/completions. Point any OpenAI-compatible SDK or client at https://api.router.one/v1, send "model": "openai/gpt-6.1-sol" with a Router One key, and the request is routed, metered and logged like every other model. No Pro, Max or Ultra tier lists it in the 2026-10-01 plan response, so every call bills per token to your wallet; the GPT-6.1 Sol model page carries the live rates.
This guide covers what the catalog lists for the id, how OpenAI positions it against GPT-6 Sol and GPT-6 Astra, what changes in requests written for GPT-6 Sol, how billing and plans apply, what Codex CLI's new default model means for a Router One setup, and the first request on each endpoint. Catalog and plan observations are dated; the live catalog is the source of truth for a new request.
GPT-6.1 Sol at a glance
| Field | What the catalog lists (2026-10-01) |
|---|---|
| Catalog id | openai/gpt-6.1-sol, listed 2026-09-30 |
| Short id (alias) | gpt-6.1-sol, OpenAI's own model id |
| Context window | 1,050,000 tokens |
| Input / output | text and image in, text out |
| Capability flags | chat, streaming, tool calling, vision |
| Price lines | two: a standard line, and a whole-request line for requests strictly above 272,000 input tokens |
| Endpoints | natively POST /v1/responses, and POST /v1/chat/completions |
| Not served on | POST /v1/messages (Claude-family and DeepSeek ids only) |
| Channel | default channel only — no azure/ version |
| Plans | no Pro, Max or Ultra tier (2026-10-01 plan response) — wallet billing |
OpenAI's GPT-6.1 Sol model page (checked 2026-10-01) adds what the catalog does not carry. It describes "near-Astra performance for complex work at a lower cost", lists a maximum of 922,000 input tokens and 128,000 output tokens inside the 1,050,000-token window and an April 30, 2026 knowledge cutoff, and documents reasoning.effort values low, medium (the default), high, xhigh and max; the none and minimal efforts are not supported. The same page says to use the Responses API for tool calling and that Chat Completions is supported without tool calling. Those are OpenAI's statements; what Router One vouches for is the catalog entry and how the gateway routes and bills it.
GPT-6.1 Sol, GPT-6 Sol or GPT-6 Astra?
OpenAI's launch post (September 29, 2026) calls GPT-6.1 Sol "an upgrade to GPT-6 Sol that nearly matches GPT-6 Astra's intelligence on agentic coding, computer use, and professional work", and its GPT-6 guide (checked 2026-10-01) places GPT-6 Astra at the highest intelligence and GPT-6.1 Sol at "balanced speed, cost, and intelligence". GPT-6 Sol's own model page now points to GPT-6.1 Sol as the newer Sol model. OpenAI reports that on DeepSWE v1.1 GPT-6.1 Sol matches GPT-6 Astra and beats GPT-6 Sol's best score by 6.4 percentage points at a lower reasoning effort, and that on OSWorld 2.0's offline set, at maximum reasoning effort, it scores 7 percentage points above GPT-6 Sol and comes within 2.1 percentage points of GPT-6 Astra. Those are OpenAI's results, not Router One measurements: run your own prompts before you move a workload.
What Router One adds to the choice:
- Plan quota or wallet. In the 2026-10-01 plan response, GPT-6 Astra counts against the Flagship models allowance on Max and Ultra, while GPT-6.1 Sol and GPT-6 Sol are in no plan tier and bill the wallet. On Pro, all three bill the wallet. GPT-5.6 Sol and GPT-5.5 stay in the Premium models tier of all three plans.
- Posted rates. Router One posts its own rates for each id. The comparison pages below render the live figures side by side, so re-baseline cost when you switch.
- Same request path. All three are GPT-family ids served natively on
/v1/responses, the Codex CLI path; Codex knows GPT-6.1 Sol from version 0.159.1 (see below).
Three comparison pages render the spec sheets and live rates side by side:
- GPT-6.1 Sol vs GPT-6 Sol — the generation step, and what the request rules change.
- GPT-6.1 Sol vs GPT-6 Astra — near-Astra on the wallet against Flagship plan quota.
- GPT-6.1 Sol vs Claude Sonnet 5.5 — the cross-vendor question; neither is in a plan tier, so both bill the wallet.
What changes from GPT-6 Sol in your requests
The key, base URL, endpoints, 1,050,000-token window and 272,000-token price line stay the same, and OpenAI's model pages list the same maximum input and output, input types and Responses tools for both models. What changes, per OpenAI's GPT-6 guide (migration quickstart, checked 2026-10-01):
- The model string.
openai/gpt-6-solbecomesopenai/gpt-6.1-sol. - Reasoning effort. GPT-6.1 Sol supports neither
nonenorminimal. Where you usednone, OpenAI suggestslow; where you usedminimal, it suggests starting atlowand comparing results. Set it withreasoning.efforton Responses orreasoning_efforton Chat Completions;mediumis the default. - Tool calls. GPT-6.1 Sol takes tool calls only on the Responses API, while GPT-6 Sol also runs function calls on Chat Completions when
reasoning_effortisnone. Code that sends tools on Chat Completions moves to/v1/responses. - Sampling parameters. When the reasoning effort is not
none— always, for GPT-6.1 Sol — removetemperature,top_pandtop_logprobs, pluslogprobson Chat Completions; on Responses, takemessage.output_text.logprobsout ofinclude. - Knowledge cutoff. Per the two model pages, April 30, 2026, against GPT-6 Sol's April 20, 2026.
GPT-6 Sol remains listed: Router One still serves openai/gpt-6-sol, and OpenAI's deprecations page (checked 2026-10-01) names no retirement for it. The GPT-6 Sol API guide still applies to it.
How billing works
The model page shows two rate lines, and the total input tokens of one request select which one applies. At exactly 272,000 input tokens the standard line still applies. Strictly above it, the long-context line applies to the whole request — output included — not only to the tokens past the threshold. Monthly volume plays no part. OpenAI's model page documents the same 272K threshold and the same full-request rule for its own list prices, and Router One's long-context line mirrors it.
Reasoning output is billed at the model's posted output rate, with no separate reasoning line (pricing facts), so the reasoning effort is a cost lever as much as a quality one. The model page also lists a cached-input line; the prompt caching guide shows how to read cache counts in usage so input is not counted twice, the pricing methodology spells out the long-context rule, and the cost calculator applies it per request.
This guide prints no per-token figures because they go stale. The GPT-6.1 Sol model page shows both lines live, and the comparison pages above render the gap against GPT-6 Sol, GPT-6 Astra and Claude Sonnet 5.5.
Do subscription plans cover GPT-6.1 Sol?
Not as of the 2026-10-01 plan response: no tier of Pro, Max or Ultra lists gpt-6.1-sol, so GPT-6.1 Sol calls bill per token to your wallet balance at the posted rates, whether or not you hold a plan. GPT-6 Sol is in no tier either. GPT-5.5 and GPT-5.6 Sol sit in the Premium models tier of all three plans, and GPT-6 Astra in the Flagship models tier that only Max and Ultra carry. That difference matters most in Codex CLI: switching a session from GPT-5.6 Sol to GPT-6.1 Sol moves it from plan quota to wallet billing. Plan model lists change, and the pricing page shows the live ones.
Codex CLI: the new default model and the one-line switch
Per its release notes, Codex CLI 0.159.1 (September 29, 2026) made GPT-6.1 Sol the default model of its bundled model list. That default applies only when config.toml names no model: per the Codex models docs (checked 2026-10-01), Codex uses a recommended model when you do not specify one. The Router One one-click install writes model = "gpt-5.6-sol", so a setup it wrote stays on GPT-5.6 Sol after the update. A config.toml you wrote by hand without a top-level model line picks up the new default — add one above the [model_providers] table, for example model = "gpt-5.6-sol".
To run GPT-6.1 Sol in Codex, set model = "gpt-6.1-sol" in ~/.codex/config.toml — the bare name from Codex's own model list, which the gateway resolves to openai/gpt-6.1-sol — and keep wire_api = "responses" on the provider. That needs Codex 0.159.1 or later: per the openai/codex source (checked 2026-10-01), 0.159.0 and earlier have no gpt-6.1-sol entry in their bundled model list and run an unknown name on generic fallback metadata, so update with npm install -g @openai/codex first.
On a plan, keep gpt-5.6-sol: it is in the Premium models tier of the Pro, Max and Ultra plans, while GPT-6.1 Sol is in no plan tier as of the 2026-10-01 plan response, so the switch moves Codex's calls from plan quota to wallet billing. Per the Codex source (rust-v0.159.3, checked 2026-10-01), Codex 0.159.1 and later may show a startup tip that recommends GPT-6.1 Sol; the tip does not change your model. The "Meet GPT-6 Sol" upgrade prompt still targets gpt-6-sol, which is in no plan tier either. On the wallet, check the output tokens of the first turns in Dashboard → Logs. The Codex CLI in China page has the full config, and the Codex and Responses API page explains why relays without the Responses wire format fail with Codex.
Send the first request
- Create a key. Dashboard → API Keys → Create Key. Keys look like
sk-.... For a trial, give the key amaxSpendcap: it cannot spend past that amount, and your other keys keep working (per-key cost tracking). - Keep a wallet balance. GPT-6.1 Sol calls bill the wallet whether or not you hold a plan; top up in Dashboard → Deposit.
- Set the base URL to
https://api.router.one/v1in any OpenAI-compatible SDK or client. - Call the model. The examples use the catalog id
openai/gpt-6.1-soland set an explicit output cap.
Responses, the native path, with the reasoning effort set explicitly (medium is the vendor default):
curl https://api.router.one/v1/responses \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-6.1-sol",
"reasoning": {"effort": "medium"},
"max_output_tokens": 25000,
"input": "List three risks of a whole-request price tier for an agent loop."
}'
Tool calls go on this endpoint. A function tool in the Responses format:
curl https://api.router.one/v1/responses \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-6.1-sol",
"reasoning": {"effort": "low"},
"max_output_tokens": 25000,
"tools": [{
"type": "function",
"name": "get_order_status",
"description": "Look up the status of an order by its id.",
"parameters": {
"type": "object",
"properties": {"order_id": {"type": "string"}},
"required": ["order_id"]
}
}],
"input": "Where is order 8812?"
}'
When the output contains a function_call item, run the function and send its result back as a function_call_output item with the same call_id; OpenAI's reasoning guide recommends passing back the reasoning items from that turn as well.
Chat Completions, for clients that send it — without tools, as OpenAI's model page specifies:
curl https://api.router.one/v1/chat/completions \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-6.1-sol",
"max_tokens": 25000,
"messages": [{"role": "user", "content": "List three risks of a whole-request price tier for an agent loop."}]
}'
The same Responses call from the OpenAI Python SDK — only base_url and the key change:
from openai import OpenAI
client = OpenAI(
base_url="https://api.router.one/v1",
api_key="sk-your-api-key",
)
response = client.responses.create(
model="openai/gpt-6.1-sol",
reasoning={"effort": "medium"},
max_output_tokens=25000,
input="List three risks of a whole-request price tier for an agent loop.",
)
print(response.status, response.output_text)
print(response.usage)
Rules that hold on both endpoints:
- Set an output cap on every request. Reasoning tokens count toward the output cap; OpenAI suggests reserving at least 25,000 tokens for reasoning and outputs when you start (reasoning guide, checked 2026-10-01). Per the same guide, a response that reaches the cap comes back with
status: "incomplete", possibly before any visible text. Router One's Chat Completions reference documentsmax_tokensas the output cap; where the client offers a choice, sendmax_tokens. - Leave out the sampling parameters. No
temperature,top_p,top_logprobsorlogprobs, as listed above. - Stream long work.
stream: truereturns output as it is generated, on either endpoint (streaming guide). - Stay off
/v1/messages. Sending the id there returns HTTP 400 before any model is called, and the message says the model must be called via /v1/chat/completions. The API compatibility facts state the endpoint rule per family.
- Read the trace. Dashboard → Logs shows each call with model, input and output tokens, cost, latency and status (per-request observability). Retryable upstream failures are absorbed by automatic fallback across the candidate routes for the same model; a GPT-6.1 Sol request is never answered by a different model.
Other coding tools
Coding agents send tools on almost every turn, and per OpenAI's GPT-6.1 Sol model page (checked 2026-10-01) the model takes tool calls only on the Responses API, so agent work with it needs a client that sends Responses requests. Before you point a tool at it, check which protocol that tool sends: the tool table in GPT-6 Sol in Codex CLI, Cursor, Cline and OpenCode lists the request path per tool. Claude Code cannot call GPT-6.1 Sol: it sends Anthropic Messages requests, and /v1/messages serves Claude-family and DeepSeek ids only.
From mainland China
Requests reach api.router.one from mainland China without a VPN, on the same key and base URL. Top up with a card or Alipay through one hosted checkout, or with USDT/USDC on six chains (Tron, BSC, Ethereum, Polygon, Base, Arbitrum). No US credit card required. Pricing starts as low as 10% of official provider list prices (up to 90% off) on select models; the GPT API page and each model page show the rate for a given id. For Codex CLI, see Codex CLI in China.
FAQ
What is the model id for GPT-6.1 Sol on Router One? openai/gpt-6.1-sol. The gateway also accepts OpenAI's own id, gpt-6.1-sol, which is the name to use in Codex CLI. The hyphenated gpt-6-1-sol in the model page address is the page slug, not a model id. No plan tier lists the model in the 2026-10-01 plan response, so either id bills per token to the wallet.
Is GPT-6.1 Sol included in Router One subscription plans? Not in the 2026-10-01 plan response: no Pro, Max or Ultra tier lists it, so its calls bill per token to the wallet on every plan. GPT-6 Sol is in no tier either; GPT-5.5 and GPT-5.6 Sol are in the Premium models tier of all three plans, and GPT-6 Astra is in the Flagship models tier of Max and Ultra. The pricing page shows the live plan model lists.
Codex CLI 0.159.1 made GPT-6.1 Sol its default model. Does my Router One setup switch? Only if config.toml names no model. Per the Codex models docs (checked 2026-10-01), Codex uses a recommended model when you do not specify one, and 0.159.1 and later default to GPT-6.1 Sol. The Router One one-click install writes model = "gpt-5.6-sol", so it stays on GPT-5.6 Sol; a hand-written config.toml without a top-level model line should get one. Codex may also show a startup tip about GPT-6.1 Sol, which does not change the model.
What changes from GPT-6 Sol in my requests? Per OpenAI's GPT-6 guide (checked 2026-10-01): the model string; the reasoning effort, since GPT-6.1 Sol supports neither none nor minimal (OpenAI suggests low); tool calls, which GPT-6.1 Sol takes only on the Responses API; and temperature, top_p and top_logprobs (plus logprobs on Chat Completions), which have to go. The key, base URL, the 1,050,000-token window and the 272,000-token price line stay the same.
Can I call tools on Chat Completions with GPT-6.1 Sol? Not per OpenAI: its GPT-6.1 Sol model page (checked 2026-10-01) says to use the Responses API for tool calling and lists Chat Completions as supported without tool calling. Send tool-using requests to /v1/responses, where Router One serves GPT models natively, and keep Chat Completions for requests without tools.
Does the 272K price line apply to GPT-6.1 Sol? Yes. Its model page shows two rate lines: exactly at 272,000 input tokens the standard line applies; strictly above it, the long-context line applies to the whole request, output included. Monthly usage does not select the line.
Is GPT-6 Sol being retired? Not as of 2026-10-01: OpenAI's deprecations page names no retirement for it. Router One still lists openai/gpt-6-sol, and the GPT-6 Sol API guide covers it.
Can Claude Code call GPT-6.1 Sol? No. Claude Code sends Anthropic Messages requests to /v1/messages, which serves Claude-family and DeepSeek ids only; a GPT id there returns HTTP 400 before any model is called.
How much does GPT-6.1 Sol cost through Router One? Per token, at the posted rates on the GPT-6.1 Sol model page: two lines, with reasoning billed as output. This guide prints no per-token figures because they go stale; the comparison pages render the live gap against GPT-6 Sol, GPT-6 Astra and Claude Sonnet 5.5. No plan tier lists GPT-6.1 Sol in the 2026-10-01 plan response, so every call bills the wallet.
Is there no GPT-6.1 Astra? OpenAI's model catalog (checked 2026-10-01) has no GPT-6.1 Astra entry, and its GPT-6 guide lists GPT-6.1 Sol beside GPT-6 Astra. Router One lists GPT-6 Astra (openai/gpt-6-astra) and GPT-6.1 Sol (openai/gpt-6.1-sol); the live catalog at /models is the source of truth.
Next steps
- Open the GPT-6.1 Sol model page for the live rates, both price lines and the endpoint list.
- Compare it with GPT-6 Sol, GPT-6 Astra or Claude Sonnet 5.5.
- Staying on GPT-6 Sol? The GPT-6 Sol API guide and GPT-6 Sol in Codex CLI, Cursor, Cline and OpenCode cover it.
- Set up Codex CLI with Codex CLI in China and the Codex and Responses API page.
- Check which models each plan covers on the pricing page.
- See September's other catalog changes in the September 2026 new-model guide.