Prerequisites: SDK and Key
Start by creating an account with just an email or Google sign-in. This key authenticates every request to the uncensored AI chatbot endpoint. You can generate a new key anytime, which replaces the old one. Keep it secure, as it provides full access to your prepaid credits.
Base URL Configuration
Configure your client to point at HTTPS://api.unfilteredchatbotapi.com/v1. This base URL works with any standard OpenAI-compatible SDK. You must also set your API key in the Authorization header. The system expects Bearer token format for authentication. This single endpoint serves the uncensored model without routing to other vendors. You do not need to change the model name in your code; it is fixed.
Sending Your First Request
Make a POST request to /v1/chat/completions with your message. The model id is always "uncensored". Send your content in the messages array with a role and content field. The API returns a text response without standard safety refusals for lawful adult topics. Use this simple structure to verify connectivity and response quality. Ensure your payload stays under 8 MB. Errors during processing do not consume your credits.
cURL
curl https://api.unfilteredchatbotapi.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.unfilteredchatbotapi.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.unfilteredchatbotapi.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)