EN ▾

Uncensored API, zero refusals.

per 1M input tokens
$0.15
Output tokens / 1M
$0.50
token context
100,000
trial credit
$0.50
requests per minute
300

Uncensored api quickstart guide

The uncensored LLM API provides an openai compatible chat-completions endpoint that removes moderation filters for reliable tool calling and unrestricted text generation. This guide shows you how to authenticate, send requests, and handle streaming responses with the single uncensored model.

Base URL and authentication

Start by pointing your SDK or HTTP client to the base URL https://api.uncensoredllmmodels.com/v1. You need a valid API key sent in the Authorization header as a Bearer token. Create an account using Google or email, and the system displays your key immediately. One active key per account simplifies rotation without complex proxy setups.

curl https://api.uncensoredllmmodels.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Generate a list of 5 Python libraries for async web scraping"}]
  }'

First request via chat completions

Send a POST request to /v1/chat/completions with the model ID set to uncensored. The endpoint accepts standard OpenAI payload structures for text-in, text-out interaction. You can specify max_tokens to control output length, defaulting to 2,048 if omitted. The model responds with generated text without applying typical safety refusals for lawful adult content.

from openai import OpenAI

client = OpenAI(base_url="https://api.uncensoredllmmodels.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)

Verify your model endpoint

Use the GET /v1/models endpoint to confirm connectivity and list available models. This returns metadata about the uncensored model, ensuring your client is correctly configured. It is a quick sanity check before integrating the API into your automation pipelines. No other models are served by this specific endpoint.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.uncensoredllmmodels.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);

Function calling and JSON mode

The API supports tool definitions and JSON mode via response_format. You can enforce structured output using {"type": "json_object"} for reliable parsing in your code. Function calling allows the model to return structured data for automation tasks. This eliminates the need for post-processing regex hacks on raw text outputs.

Streaming responses and token usage

Enable streaming by setting stream: true in your request. The API sends Server-Sent Events (SSE) chunks as the model generates text. Token usage statistics appear in the final chunk of the stream. This allows your application to track costs and context window consumption in real time.

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)

Rate limits, errors, and context window

Each key allows 300 requests per minute and eight concurrent requests. The context window supports 100,000 tokens total, with a maximum output of 16,000 tokens. Errors include 401 for invalid keys and 402 if prepaid credit is exhausted. Requests under 8 MB are accepted. Refusals due to content policy are rare but apply to minor sexual content.

Support Q&A

Is this uncensored LLM API compatible with standard OpenAI SDKs?

Yes, it uses the same request and response structures as the OpenAI API. You only need to update the base URL and API key in your client configuration. All standard parameters like temperature and top_p are supported.

What happens if I exceed the rate limits?

The API returns a 429 status code when you exceed 300 requests per minute or eight concurrent connections. You should implement exponential backoff in your client. Retry after the specified delay to avoid further throttling.

How does the prepaid credit model work?

Credit is charged based on real token usage with errors being free. You can top up using USDT or USDC with bonus credits for larger amounts. No subscription fees apply, and unused credit never expires.

Access via API key

Register, retrieve your key, and update your base URL. That is the complete configuration.

Get your key