FAQ
Crypto payment has its own section FAQ: Crypto FAQ. This page is for cross-section general questions.
What is primerouter
Q: How is it different from OpenRouter? A: primerouter wires "no model swap / no quantization / no token inflation / no silent prompt retention" into architecture, not marketing — every request carries a trace_id + upstream signature; bills can be drilled down per request. We also have deeper integration with Chinese frontier models (DeepSeek, Qwen, GLM, Kimi, MiniMax, Doubao).
Q: How does it differ from ChatGPT Plus / Claude Pro subscriptions? A: You're no longer locked to a single provider. One account, one key — use every model. Per-token billing — better for low-frequency users, more flexible across models for heavy users.
Q: Is it open or closed source? A: Core is closed source. The privacy-critical paths (no prompt storage, transparent usage pass-through) are independently verifiable per About → Privacy policy.
Billing
Q: Why does my bill differ from my estimate? A: Common reasons:
- Multi-turn history accumulates into prompt tokens
- You silently switched to a more expensive model
- Streaming client disconnect without socket close → upstream keeps generating → counts toward completion tokens
- Tool definitions and system prompts also count as prompt tokens
Q: Can I predict a conversation's cost? A: Possible but inaccurate — LLM output length is inherently unpredictable. Pragmatic: set max_tokens cap; predictable upper bound = (prompt_tokens × in_price) + (max_tokens × out_price).
Models
Q: How do you guarantee no model swapping? A: Each response carries a verifiable upstream signature (when upstream supports it), written to Logs. Clients can verify independently. When an upstream doesn't provide signatures, at minimum the trace_id is publicly tied to the upstream provider field.
Q: Can I force route to a specific upstream? A: Indirectly via Token's "group" field — certain groups only allow certain channels. Specific routing strategy is admin-configured.
Q: What happens when a model is unavailable? A: Returns 503 (with explicit "all upstream candidates failed") — never falls back to another model. Stick to what you asked for.
API
Q: Fully compatible with OpenAI SDK? A: Core endpoints (chat.completions, embeddings, images.generate, audio.speech / transcriptions) are fully compatible. responses (OpenAI new format) is supported. A few internal/beta endpoints aren't.
Q: Anything to watch out for with streaming? A: See API → Streaming. Common pitfalls: CDN / proxy buffering (turning streaming into "wait then everything at once"); client abort without socket close (continued billing).
Top-up
Q: How long until top-ups credit? A:
- Crypto: after on-chain confirmation (typically 1–15 min)
- Stripe / Apple Pay: instant
- Redemption code: instant
Q: Can I pay with CNY? A: Depends on your site config — main site supports CNY credit cards via Stripe. See Console → Top up.
Q: Can I get a refund? A: Default no. Exceptions in Pricing → billing rules.
Privacy
Q: Do you store my prompts? A: Default no. See About → Privacy policy.
Q: Will my prompts be used to train upstream models? A: Depends on upstream. OpenAI / Anthropic API calls default to opt-out from training; specifics per official policies.
Q: Can I be fully anonymous with crypto? A: Not fully — you still register an account (email). But crypto top-up doesn't require card / address PII, so it's more anonymous than fiat.
Security & failure
Q: What if the service goes down? A: Usually upstream issues. Multi-channel + auto-failover mitigates. If you see 503, all candidate channels are unavailable — retry later.
Q: My API key leaked. Now what? A: Immediately delete that key + create a new one. If abuse occurred and you can prove leak, you can appeal for quota refund.
Q: Found a bug or security issue? A: security@primerouter.ai; for security please follow coordinated disclosure (report first, give us reasonable time to fix, then disclose).
Integration
Q: Can I use it in Cursor / Cline / Claude Code / OpenCode / Crush / Codex CLI? A: All supported. Step-by-step config per tool (with macOS / Linux / Windows commands) at Coding Tools.
Q: Codex says Missing environment variable: PRIMEROUTER_API_KEY — now what? A: Re-run the one-click installer, curl -fsSL https://primerouter.ai/install/codex.sh | bash. Older versions kept the key in an environment variable, and when env_key cannot be read Codex fails the request outright instead of falling back — GUI apps, IDE extensions and any launch context you switch to after an upgrade all hit this. The current script stores the key in Codex's own credential file ~/.codex/auth.json, independent of the process environment.
Q: My codex resume history disappeared after switching to PrimeRouter. A: No session file is lost — they are all still under ~/.codex/sessions/. codex resume only lists sessions whose model_provider id matches your current config, so changing that id filters the older ones out. Re-running the one-click installer reuses the id this machine already had; to just take a look, run codex resume -c model_provider=your-old-id. Details in the Codex guide.
Q: Can I use it in n8n / Dify etc. workflows? A: Yes. Change the base_url in the OpenAI-compatible node.
Q: Can I set up an account system for my team? A: Today individual accounts + multiple API keys. Enterprise (teams, SSO, audit) — watch Changelog.
Other
Q: Can't find an answer? A: Contact methods at the bottom. Or post in GitHub Discussions (link on About).
