For developers
An OpenAI-compatible API: what it is and why it is convenient
The OpenAI API format became the common language for working with models. If a service supports it, you plug it into existing code and tools without rewriting.
Tenzo Cloud team2 min read
What “compatible” means
A compatible API accepts requests in the OpenAI Chat Completions format: a list of messages with system, user and assistant roles, plus model, temperature and stream parameters. It answers in the same format, streaming included.
That is why the official openai SDKs, LangChain, n8n and editors like Cursor and Continue work with it: they only need a different address and key.
Switching providers in two lines
from openai import OpenAI
# before: client = OpenAI()
client = OpenAI(base_url="https://tenzo-cloud.com/v1", api_key="tc-your-key")What to watch out for
- Model names differ between providers, change the model parameter
- Not every provider supports the same extra parameters
- Error format: Tenzo Cloud uses the OpenAI one, an error object with message, type and code
- Check the limits: we limit concurrent requests, not tokens
Why the standard won
When one API got the most users, tool authors started writing integrations for it. New providers found it easier to support the familiar format than to ask everyone to rewrite code. Compatibility became the norm: switching models is now as easy as changing a database address.
A provider migration checklist
- Move base_url and the key into environment variables
- Check which models you need and change their ids
- Run your main scenarios and tests on the new model
- Set up retries for 429, a normal answer when streams are capped
- Keep a quick way back to the previous provider
Models available over the API
- Qwen 3.8 MaxOperationalBest for: large codebases and documentsContext: 256K tokensReads screenshots and diagrams
- GLM 5.3Coming soonBest for: code and agentsContext: 200K tokensText and code only
- DeepSeek V4 ProComing soonBest for: reasoning and reviewsContext: 128K tokensText and code only
- GLM 5.3 FlashComing soonBest for: fast, high-volume tasksContext: 128K tokensReads screenshots and diagrams
- DeepSeek V4.1 FlashComing soonBest for: fast, high-volume tasksContext: 128K tokensReads screenshots and diagrams
FAQ
Is streaming supported?
Yes, stream=True works the same way as with OpenAI.
Do I need to change prompts?
Usually not. Models differ though, so test your key scenarios on the new model.
Where do I get a key?
In the Tenzo Cloud dashboard under API keys. The first 3 hours are free.
See also
- SolutionsAn LLM API for developers: OpenAI-compatible with no token limitsAn OpenAI-compatible LLM API for developers: Qwen, GLM and DeepSeek, streaming, restricted keys, no token limits and no VPN. Connect in a minute, 3 hours free.Learn more
- IntegrationsLLM API in Python: the official openai library, two linesHow to call Qwen 3.8 Max and GLM 5.3 from Python with the official openai library: streaming, a key in an environment variable, error handling. No token limits, no VPN.Learn more
- IntegrationsLLM API in Node.js: the official openai SDK without rewriting codeHow to connect Qwen 3.8 Max and GLM 5.3 in Node.js and TypeScript with the official openai SDK: streaming, a key in the environment, common errors. No token limits, no VPN.Learn more
- ComparisonsTenzo Cloud or OpenRouter: a per-token aggregator versus a subscriptionTenzo Cloud or OpenRouter: a per-token model aggregator versus a model subscription at a fixed price per stream. Prices in tenge or rubles, prompt retention, access from the CIS. October 2026.Learn more
Try it on your own work
Three free hours with every model, no card and no VPN. Connect Cursor, Claude Code or your own code in a minute.