API Documentation
Start sending requests to our uncensored AI endpoint using standard OpenAI-compatible libraries. This guide covers authentication, streaming, and limits for immediate integration.
Base URL and Authentication
Your requests route through https://api.whatdoesabliteratedmean.com/v1. Authenticate by passing your API key in the Authorization header. You receive one key per account, visible immediately after signup.
First Request
Send a POST request to /v1/chat/completions with your model ID set to uncensored. The endpoint accepts standard JSON payloads and returns text output. You can adjust parameters like temperature to control creativity. Use this structure to verify connectivity before scaling usage.
curl https://api.whatdoesabliteratedmean.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain the etymology of abliterated clearly"}]
}'
Python SDK Integration
Install the official OpenAI package and point it at our base URL. Set the model to uncensored to bypass standard refusals. This approach works with existing codebases without major refactoring. You can stream responses or process them synchronously based on your latency needs.
from openai import OpenAI
client = OpenAI(base_url="https://api.whatdoesabliteratedmean.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 Integration
Initialize the OpenAI client with the correct base URL and your API key. Configure the model ID to uncensored for unrestricted outputs. Node developers can use async/await patterns for clean code. This setup ensures compatibility with standard OpenAI-compatible clients.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.whatdoesabliteratedmean.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 Responses
Enable streaming by setting stream: true in your request. The API sends Server-Sent Events (SSE) for real-time token delivery. Each chunk contains partial text, allowing instant display. Token usage details appear in the final chunk. This reduces perceived latency for long outputs.
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)
Limits and Errors
You are limited to 300 requests per minute and 8 concurrent requests per key. The context window supports 100,000 tokens total, with a max output of 16,000 tokens. A 401 error indicates an invalid key, while 402 means you need to top up credit. The 429 status signals you have hit the rate limit. Errors and refusals do not consume your credits.
Frequently asked questions
What does abliterated mean?
It refers to models where safety alignments have been removed. This allows the AI to answer controversial or NSFW questions without refusal. Our model is tuned for this specific behavior.
How do I get more credit?
Top up using USDT (TRC20) or USDC (Base). Amounts range from $20 to $500. You receive bonus credit based on your top-up amount, with up to 15% extra.
Is the model GPT?
No, it is an open-weight model run on our servers. It is not GPT, Claude, or Gemini. It is a distinct model optimized for uncensored responses.
Get your API key now
Sign up, retrieve your key, and point your base URL. That is all you need to configure.