EN ▾
Claim trial key

Uncensored API, OpenAI compatible, crypto only

https://api.chatgptsansrestriction.com/v1uncensored

Uncensored API Documentation

Get your uncensored API key and start sending requests in minutes. This guide shows you exactly how to configure your OpenAI-compatible client to use our hosted model for unrestricted text generation.

Claim trial key

Quickstart: Install and Configure

The first step is obtaining your API key from the dashboard. Once you have your credentials, configure your client to point at our base URL. This ensures all requests route through our uncensored infrastructure instead of the standard OpenAI endpoints. You only need to update the base URL and set the authorization header. Our API is fully compatible with standard OpenAI SDKs, so you can reuse your existing client code with minimal changes.

Authentication and Headers

Authentication relies on a single bearer token passed in the Authorization header. Every request must include this key to verify your account and deduct prepaid credits. If the key is missing or invalid, the API returns a 401 error. You can generate a new key at any time from your dashboard, which immediately invalidates the previous one. Keep your key secure, as it is the sole identifier for your credit balance and usage limits.

Chat Completions Endpoint

Send text requests to the POST /v1/chat/completions endpoint. This is the standard interface for generating responses from the uncensored model. You provide a list of messages including the user prompt and optional system instructions. The model returns a text response without the typical content refusals found in mainstream models. Use this endpoint for all text generation needs, keeping in mind that embeddings, images, and audio are not supported.

Streaming Responses

Enable streaming by setting the stream parameter to true. This returns responses chunk by chunk as they are generated, reducing perceived latency for long outputs. You must handle Server-Sent Events (SSE) to process each token as it arrives. The final chunk includes the total token usage statistics for billing. Streaming is ideal for real-time chat interfaces or applications requiring immediate partial results.

Model Parameters and Options

Control the model's behavior using standard parameters like temperature, top_p, and stop. You can enforce structured output by setting response_format to json_object or use tools for function calling. The model supports a context window of 100,000 tokens, allowing for extensive input data. Max output is 16,000 tokens per request unless specified otherwise. Adjust these settings to balance creativity and precision for your specific use case.

Limits, Errors, and Context

Each API key is limited to 300 requests per minute and 8 concurrent connections. Request bodies must not exceed 8 MB. Common errors include 401 for invalid keys, 402 when credits are exhausted, and 429 for rate limits. Your prepaid credits never expire, so you can pause usage without losing funds. The context window includes both prompt and completion tokens. If you exceed limits, the API will return an appropriate error code. Use retries with exponential backoff for 429 errors.

cURL

curl https://api.chatgptsansrestriction.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "What is the capital of France?"}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.chatgptsansrestriction.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.chatgptsansrestriction.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 the official ChatGPT sans restriction API?

No, we are an independent provider offering an OpenAI-compatible API. Our model is an open-weight architecture tuned for unrestricted responses, distinct from GPT-4 or other vendor models. It serves the same client code but operates on our own infrastructure.

How do I handle errors when credits are low?

The API returns a 402 status code when your prepaid balance is insufficient. You can top up with USDT or USDC via crypto to restore access instantly. Credits never expire, so you can add funds at any time without losing your previous balance.

What is the maximum context window size?

The model supports a 100,000 token context window, combining both input and output tokens. This allows for extensive conversations or large document processing. The maximum single response length is 16,000 tokens, or 2,048 tokens if not explicitly set.

Get your key in minutes

Register, copy the token, update the base URL. That is all.