Uncensored Chat API Quickstart
Get started with the uncensored chat API by configuring your base URL and sending your first request. This guide covers authentication, SDK integration, streaming, and critical limits for building reliable AI applications.
Authentication and Base URL
Our API is fully compatible with the OpenAI SDK ecosystem. To use it, you only need to change the base_url and provide your API key. Sign up to get your key immediately; no phone number is required. Use the uncensored model ID for all requests. The base URL is https://api.uncensoredchat.cc/v1.
- Authentication: Pass your key via the
Authorizationheader. - Model ID: Always use
uncensored. - Compatibility: Works with any OpenAI-compatible client by overriding the base URL.
Your First Request
Send a standard POST request to the chat completions endpoint. This returns a text response based on your prompt. The model does not refuse lawful adult, fictional, or controversial topics, making it ideal for content generation and creative writing. Errors and refusals (except for the hard minor content limit) do not consume tokens.
curl https://api.uncensoredchat.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'The response includes token usage details in the final chunk when streaming, or in the standard completion object for non-streaming requests.
Python SDK Integration
Use the official OpenAI Python library to interact with our API. Set the base URL to point to our endpoint and provide your API key. This approach ensures you can leverage existing tooling and SDK features without writing custom HTTP clients. The code snippet below demonstrates a simple completion call.
from openai import OpenAI
client = OpenAI(base_url="https://api.uncensoredchat.cc/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)Ensure your Python environment has the openai package installed. The library handles serialization and retries automatically.
Node.js SDK Integration
For JavaScript developers, the OpenAI Node.js SDK works out of the box. Configure the basePath to our API URL and set the API key. This allows you to integrate uncensored generation directly into your Node applications, web services, or bots. The SDK manages the HTTP requests and parses the JSON responses.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.uncensoredchat.cc/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);You can install the package via npm or yarn. The configuration object mirrors the standard OpenAI setup, making migration from other providers straightforward.
Streaming Responses
Enable streaming by setting stream: true in your request. The API returns a Server-Sent Events (SSE) stream. Each chunk contains partial content, allowing you to display text in real-time. Token usage information is included in the last chunk of the stream. This is useful for chat interfaces where latency matters.
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)Handle the stream events in your client code to process each token as it arrives. This reduces perceived latency significantly compared to waiting for the full completion.
Limits, Errors, and Context
Each API key is limited to 300 requests per minute and 8 concurrent requests. The request body must not exceed 8 MB. If the key is invalid, you will receive a 401 error. If you have no credit, you will receive a 402 error. Rate limits return a 429. The context window is 64,000 tokens total, with a default max output of 2,048 tokens unless you specify a higher max_tokens value (up to 16,000). Credit never expires, and errors are free.
Questions and answers
How do I pay for the API?
We accept only crypto: USDT (TRC20) or USDC (Base). You can top up any whole amount from $10 to $500. There are no monthly fees or subscriptions, and prepaid credit never expires.
Is there a free trial?
Yes, every new account gets $0.50 of trial credit valid for 7 days. No credit card is needed to sign up. Mistakes like double charges are handled via the Support page, but credit is non-refundable.
What content is blocked?
The model is uncensored for lawful adult, fictional, and controversial topics. The only hard limit is sexual content involving minors, which is always refused. Requests containing this content will be blocked.
Your key is one form away
Create an account, copy the key, change the base URL. That is the whole setup.