Skip to content

OpenAI-compatible API

An OpenAI-compatible API accepts the same requests and returns the same responses as OpenAI's API, so existing code and tools can use another provider by changing little more than the address and the key. The shape of the request is the standard, not the model behind it.

Last updated November 8, 2026

  1. Readable on your devices only.

    Your conversation is readable on your device, and on your other devices if you sync them. Nowhere else.

  2. Unreadable to us.

    Your message passes through without being written down; your chats are only ever stored encrypted.

  3. The model doesn’t know you.

    It gets the question, never your email, your account or your IP address.

  4. Nothing is left along the way.

    The reply comes back and is stored here, encrypted; even when you sync, your key never reaches us in the clear.

How a conversation travels on NeverNo. The details are on the transparency page.

How it works

OpenAI's chat format became a de facto standard. A request is a JSON body naming a model and a list of messages, each with a role such as system, user or assistant. The system or developer role carries standing instructions, while user and assistant alternate as the conversation unfolds. The reply comes back as a list of choices, or as a stream of server-sent events that ends with a done marker. Tool use follows the same pattern: you describe functions with a JSON schema, the model answers with a tool call, you run the function and send the result back. Other endpoints, for embeddings or images, follow OpenAI's shapes as well. Official libraries exist for Python and JavaScript, and a plain curl command works too.

Compatibility means these shapes match, which is why official SDKs and many coding agents let you set a custom base URL. It does not mean everything matches. Model names are the provider's own, supported parameters can differ, limits and prices are set by each service, and error codes may vary in detail. A model also needs the right capability: calling a function on a model that cannot use tools returns an error, so check what each model supports before relying on it. Testing is cheap: send one short request, compare the JSON you get with what your library expects, and read the error body, which usually names the offending field.

Anthropic uses a different format, called Messages, with its own blocks for tool use and streaming events. Some providers offer both formats, so that tools built for one family work without code changes. The practical advantage is portability: you can compare models or leave a provider without rewriting your application, and the cost of switching shrinks to a configuration change. Retries deserve care too: a timeout during a long answer may still have been billed, so log request identifiers.

In NeverNo

NeverNo's API follows both. Set the base URL to https://neverno.ai/api/v1 and pass a key that starts with nn_live_ as a bearer token, or in an x-api-key header as the Anthropic SDKs send it. POST /chat/completions handles chat in one piece or streamed, with function calling, JSON output and vision, GET /models lists every model with its capabilities and its price in credits, and POST /messages speaks Anthropic's format for Claude Code. Parameters such as temperature, top_p, stop and seed are passed to the models that take them. Embeddings, images and POST /image/upscale are there too.

Usage is paid from its own API balance, where 1 credit equals $0.01, separate from a plan's credits. Each account has a number of requests per rolling 24 hours, and past it calls get a 429. NeverNo does not log or keep prompts, messages, replies or images sent through the API, only what billing needs. GPT-6.1 Terra, OpenAI's quick model, is reached anonymized and lets you switch reasoning off or up; the ChatGPT alternative page explains why people come to NeverNo for this choice of models.

Worth remembering

  1. Compatibility concerns request and response shapes: messages, roles, streaming and tool calls.

  2. Moving over typically means editing three settings: base URL, key and model name.

  3. Model names, parameters, quotas, prices and error details still vary by provider.

  4. Anthropic's Messages format is separate; NeverNo accepts it as well as OpenAI's.

Frequently asked questions

What do I change to use NeverNo from code written for OpenAI?

The base URL, now https://neverno.ai/api/v1, and the key, which starts with nn_live_. Then choose a model id from the /models list; the rest of an OpenAI-compatible SDK or tool runs unchanged.

Can I use Claude Code or the Anthropic SDKs?

Yes. A Messages endpoint compatible with Anthropic's is available, so Claude Code and the Anthropic SDKs can target it through environment variables. Calls draw credits like any other.

How is the API paid for?

In credits, from a dedicated API balance where 1 credit equals $0.01, topped up from Settings and separate from your plan's credits. An empty balance returns an insufficient credits error, and the models list shows each price.

Ask your first question

No account and no card. Write in any of the 10 languages NeverNo speaks.

Open the chat