API Quickstart Guide
Connect your existing tools to an uncensored chat GPT backend with a single base URL change. This guide walks you through authentication, coding, and handling refusals in your preferred language.
Authentication and Base URL
Your API key authenticates every request to our uncensored LLM API. We use standard Bearer token headers, so you can swap your base URL and key into any OpenAI-compatible SDK without rewriting logic. The endpoint lives at https://api.gptchatuncensored.com/v1 and accepts POST requests to /chat/completions. You must include your key in the Authorization: Bearer YOUR_KEY header. This setup works immediately with official SDKs or third-party wrappers. We do not offer embeddings or vision features, so keep your payloads focused on text generation. Your credit is charged only when tokens are processed, ensuring predictable costs for high-volume uncensored usage.
Sending your first completion
Send a completion request to generate text using the uncensored model. This example uses cURL to demonstrate the basic structure of a prompt. You can adjust the temperature to control creativity or set a stop sequence for roleplay. The response returns a JSON object containing the generated text in the choices array. Make sure your system prompts allow for the uncensored style you need. If you encounter errors, check your key validity or credit balance. The model responds to lawful adult content without the refusals common in standard LLMs.
curl https://api.gptchatuncensored.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Generate a 200 word scene with two characters in a room"}]
}'
This simple call proves your integration is working. You can now build complex applications on top of this foundation. The uncensored API handles the heavy lifting of context management. You only need to focus on your application logic and user experience. No complex setup is required to start generating content immediately.
Configuring parameters (temp, top_p)
Adjust temperature and top_p to control the randomness of your outputs. A lower temperature makes responses more deterministic and focused, which is ideal for code or factual tasks. Higher temperatures increase creativity, making them perfect for roleplay or creative writing. The top_p parameter filters the vocabulary by cumulative probability, offering another layer of control. You can combine these with max_tokens to limit output length. These parameters work exactly as they do in standard OpenAI APIs, ensuring familiarity. Use seed for reproducible results during testing. Fine-tune these settings to match the uncensored style you prefer for your specific use case.
from openai import OpenAI
client = OpenAI(base_url="https://api.gptchatuncensored.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)
Python developers can leverage the official SDK for easy integration. The code snippet demonstrates how to set these parameters in a standard request. You can pass a list of messages to maintain conversation history. The uncensored LLM API respects these constraints strictly. This flexibility allows you to experiment with different tones and styles without changing your infrastructure.
Streaming responses
Enable streaming to receive tokens as they are generated, reducing perceived latency for users. Streaming is essential for real-time chat applications or long-form content generation. Our API supports Server-Sent Events (SSE) for efficient data delivery. You must handle the final chunk to get the total token usage for billing accuracy. The uncensored API ensures that streaming works reliably even for large context windows. Set stream=True in your SDK client to activate this mode. This approach provides a smoother user experience for creative writing or roleplay scenarios. Monitor the delta field to accumulate the full response text.
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)
Streaming also helps with memory usage since you do not need to wait for the entire response. You can start displaying content to the user immediately. This feature is particularly useful for long conversations or detailed explanations. The uncensored model maintains coherence throughout the stream. Ensure your UI handles partial responses gracefully for the best experience.
Handling errors and refusals
Our uncensored model rarely refuses content, but it does enforce a hard limit on sexual content involving minors. You will receive a standard HTTP error code if a request fails or exceeds limits. A 401 status indicates an invalid or expired API key, requiring you to check your credentials. A 402 status means your prepaid credit is exhausted; top up via crypto to continue. A 429 error signals that you have exceeded the 300 requests per minute limit. These errors are clearly documented in the response body. Refusals for minor-related content are always applied, ensuring compliance. Check your dashboard for detailed usage logs to troubleshoot issues quickly.
Limits and context window
The API supports a massive 100,000 token context window, allowing for extensive conversation history or long documents. Each request can output up to 16,000 tokens, or 2,048 if max_tokens is unset. You are limited to 300 requests per minute and 8 concurrent requests per key. The request body size must not exceed 8 MB. These limits are designed for high-volume uncensored usage without compromising performance. Your API key is unique to your account, and you can generate new keys if needed. The prepaid credit model ensures you only pay for what you use. No monthly fees or subscriptions complicate your billing. This transparency makes it easy to scale your application.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.gptchatuncensored.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);Technical FAQ
Is this the official uncensored chat GPT from OpenAI?
No, we are an independent provider of an uncensored LLM API. We serve our own open-weight model, not the official GPT models from OpenAI. Our API is compatible with OpenAI clients, so your code works without changes, but the underlying model is different.
How do I pay for the uncensored API service?
We accept crypto only: USDT (TRC20) or USDC (Base). You can top up between $20 and $500, with bonus credit for larger amounts. There are no monthly subscriptions, and your prepaid credit never expires. Errors and refusals do not consume your credit.
What content is refused by the uncensored model?
The model is uncensored for lawful adult, fictional, and controversial topics. However, it strictly refuses sexual content involving minors. This is a hard limit applied to all requests. All other content types, including explicit adult material, are generally allowed.
Retrieve your API key
Register, copy the key, update your base URL. That’s the entire configuration.