Integrate the uncensored LLM API
Drop this uncensored LLM API into your existing workflow. It works exactly like the OpenAI API but removes content filters.
https://api.openaicompatibleserver.com/v1uncensored
Set your base URL and API key
Point your client to our specific endpoint. Use https://api.openaicompatibleserver.com/v1 as your base URL. Generate a key via the dashboard. The key authenticates all requests.
Send your first chat completion
POST to the chat completions endpoint. Send your prompt and receive text. The model id is uncensored. It handles context up to 100,000 tokens.
Enable streaming and get real-time tokens
Set stream: true in your request. Receive Server-Sent Events. Token usage appears in the final chunk. This reduces perceived latency for long outputs.
Use function calling and JSON mode
Pass tools in the request body. The model follows strict JSON schemas. Set response_format to {"type": "json_object"} for reliable parsing. This ensures structured data for your applications.
Handle errors and usage limits
Check HTTP status codes for issues. A 401 means your key is invalid. A 402 indicates insufficient credit. A 429 signals rate limits. You get 300 requests per minute. The 100k context window includes prompt and completion.
Integrate with OpenAI compatible server clients
Replace your base URL in any SDK. Use the same Python or Node libraries. The protocol remains identical. This works with tools like Cline or Roo Code. Switch backends without rewriting code.
cURL
curl https://api.openaicompatibleserver.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Set the server timeout to 30 seconds"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicompatibleserver.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.openaicompatibleserver.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
Is this a drop-in replacement for the OpenAI API?
Yes. It uses the same endpoints and request structure. Change your base URL and API key. Keep your existing client code.
How does the prepaid crypto billing work?
You pay with USDT or USDC. Credit never expires. Errors and refusals do not consume tokens. This keeps your costs predictable.
What is the context window size?
The limit is 100,000 tokens total. This includes both your input and the model output. Max output is 16,000 tokens per request.
Secure your API key
Register, retrieve your key, and update your base URL. That is all.