sv ▾
Claim trial key

API documentation for developers

This quickstart guide helps you integrate our uncensored, OpenAI-compatible API using standard SDKs and raw HTTP calls. You get direct access to a single high-performance model with transparent prepaid pricing and no hidden routing fees.

Base URL and Authentication

Send your requests to https://api.cheapestopenaiapimodel.com/v1 using a standard Bearer token. You receive your API key immediately after signing up with Google or email. This key authenticates every request to our chat-completions endpoint. There are no monthly subscriptions or hidden fees. Your prepaid credit covers token usage, and errors do not consume balance. Keep your key secure, as one active key replaces the previous one on regeneration.

Chat Completions Endpoint

Use the POST /v1/chat/completions endpoint to generate text responses. Our model id is uncensored, which you must specify in the request body. This endpoint handles standard chat histories and system prompts. It does not support embeddings, images, or audio generation. You get a clean, predictable JSON response containing the generated text. Use this endpoint for all your text-completion needs without worrying about model routing surprises.

Streaming and Token Usage

Enable streaming by setting the stream parameter to true. This returns Server-Sent Events (SSE) for real-time token delivery. Token usage statistics appear only in the final chunk of the stream. This approach reduces latency for interactive applications and allows you to display responses as they generate. You can parse these events using any standard HTTP client that supports streaming protocols.

Function Calling and JSON Mode

Supports function calling via the tools and tool_choice parameters. You can also enforce strict JSON output using response_format set to json_object. This feature allows your application to parse structured data reliably from the model. Use these capabilities to build complex agents or data extraction pipelines. The model handles tool definitions and execution seamlessly within the chat context.

Parameters: Temperature, Top P, and More

Control the model's behavior with parameters like temperature, top_p, and seed. Adjust temperature for creativity or determinism, and use top_p for nucleus sampling. You can also set stop sequences and penalty parameters for presence and frequency. These settings give you fine-grained control over the output quality. Default values work well for most general-purpose text generation tasks.

Limits, Errors, and Context Window

The context window supports 100,000 tokens for prompt and completion combined. Each request allows up to 16,000 tokens of output. You are limited to 300 requests per minute and 8 concurrent requests per key. Common errors include 401 for invalid keys and 402 for insufficient credit. A 429 status indicates you have exceeded your rate limit. Requests exceeding the body size limit of 8 MB will also fail.

cURL

curl https://api.cheapestopenaiapimodel.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Return a list of ten python libraries for data science."}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.cheapestopenaiapimodel.com/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.cheapestopenaiapimodel.com/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

Streaming

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Common questions

What is the cheapest openai API model alternative for uncensored use?

Our API offers a pure, uncensored text-completion model at competitive rates. You pay only for tokens used, with no subscription fees. The model is tuned for unrestricted lawful use, making it ideal for content creators and developers who need reliable, unfiltered responses.

How do I handle streaming responses in my application?

Set the <code>stream</code> parameter to <code>true</code> in your request. The API returns Server-Sent Events (SSE) containing token chunks. Token usage details are included only in the final chunk. This allows you to display text as it generates, improving the user experience for interactive applications.

What happens if I exceed my rate limit?

You will receive a 429 status code indicating that you have exceeded your request limit. The limit is 300 requests per minute per key. You can also have up to 8 concurrent requests. Wait for the rate limit window to reset before sending more requests.

Get your API key

Sign up, copy the key, update the base URL. Done.