Authentication & Base URL
Start by creating an account and generating your API key. The base URL for all requests is https://api.nofilteraichat.com/v1. You can use the official OpenAI SDKs or any compatible client by pointing it to this URL and providing your key in the Authorization header. Sign up is instant via Google or email, with no phone number required. Your key is shown immediately upon creation. You only get one active key per account; generating a new one replaces the old one. Keep your key secure, as it grants full access to your prepaid credit. There are no monthly subscriptions, and unused credit never expires.
Basic Text Completion
Send a standard chat completion request to generate text. The model ID is uncensored. This endpoint supports raw text input and output without content filters for lawful adult content. You can control the response style using parameters like temperature and top_p. If you do not specify max_tokens, the response can run to the end of the window. The context window supports up to 100,000 tokens total for prompt and completion combined. Requests are charged based on real token usage, and errors are free.
Python SDK Integration
Use the official OpenAI Python library to interact with our API. Set the base URL to our endpoint and provide your API key. This allows you to leverage familiar methods like chat.completions.create while benefiting from our uncensored model. The library handles JSON serialization and retries automatically. You can stream responses or get synchronous results. Ensure you are using a recent version of the SDK to support all features like tool calling and JSON mode. This approach minimizes boilerplate code and speeds up development for Python-based applications.
Node.js SDK Integration
Integrate the API into your Node.js applications using the OpenAI Node SDK. Configure the client with our base URL and your API key. This setup allows you to call chat completions just like you would with other OpenAI-compatible services. The SDK supports modern JavaScript features and async/await patterns. You can easily handle responses and manage errors in your Node environment. This method is ideal for web servers, backend services, or any Node.js application requiring uncensored LLM capabilities. It provides a straightforward way to add AI features without complex configuration.
Streaming Responses
Enable streaming by setting stream: true in your request. The API returns Server-Sent Events (SSE) as tokens are generated. This provides a smoother user experience by displaying text in real-time. Token usage statistics are included in the final chunk of the stream. Streaming is supported via all SDKs and raw HTTP clients. This feature is essential for chat interfaces and applications where latency matters. The model generates tokens sequentially, allowing you to render partial responses immediately. This reduces perceived wait times significantly compared to synchronous requests.
Limits, Errors & Context
Monitor your usage to avoid service interruptions. The API allows 300 requests per minute per key and 8 concurrent requests. The maximum request body size is 8 MB. If the API key is invalid, you will receive a 401 error. A 402 error indicates insufficient credit; top up by crypto (USDT on TRC20 or USDC on Base) to continue. A 429 error means you have hit the rate limit. The context window is 100,000 tokens. Errors and refusals do not consume credit. Keep your requests within these limits for optimal performance. The model refuses sexual content involving minors, which is a hard limit.
cURL
curl https://api.nofilteraichat.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.nofilteraichat.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.nofilteraichat.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)