EN ▾
Try with trial credit

NSFW LLM Models API Documentation

Get started with the uncensored API in minutes. Use our OpenAI-compatible endpoints to send prompts and receive text without content filters.

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

Base URL and Authentication

Start by sending requests to https://api.nsfwllmmodels.com/v1 and including your API key in the Authorization header. You receive this key immediately after signing up with Google or email, with no phone number required. The key authenticates your prepaid credits for every token processed. Keep your key secure, as it is the only active key for your account.

First Request

Make your first call by POSTing to /v1/chat/completions with the model ID uncensored. This endpoint accepts standard parameters like temperature and top_p to control generation. The model responds with text generated without refusals for lawful adult content. You can test the connection with a simple message to verify your credits are active.

curl https://api.nsfwllmmodels.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Count tokens in this input string"}]
  }'

Python SDK

Use the official OpenAI Python library to integrate the API into your backend. Configure the client with your API key and the custom base URL to route requests correctly. This approach allows you to use familiar methods like chat.completions.create() for synchronous calls. The library handles JSON serialization automatically for your requests.

from openai import OpenAI

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

Import the OpenAI package in your Node.js environment to interact with the endpoint. Set the baseURL property to point to our server instead of the default OpenAI host. This ensures your prompts are sent to the uncensored model. You can then call the completion method just like any other OpenAI-compatible service.

import OpenAI from "openai";

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

Enable streaming by setting stream to true in your request body. The API returns chunks of text as they are generated, allowing for lower latency in your application. Each chunk includes token usage data in the final event. This method is ideal for real-time chat interfaces where users expect immediate feedback.

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

Watch for specific HTTP status codes to manage your application flow. A 401 error indicates an invalid key, while 402 means you need to top up your prepaid credit. Rate limits cap you at 300 requests per minute and 8 concurrent connections. The context window supports 100,000 tokens total, with a max output of 16,000 tokens per request.

01

FAQ

What is the uncensored LLM model?

It is an open-weight large language model tuned specifically for adult use. It answers without content refusals for lawful topics, unlike generalist corporate models. It is not GPT, Claude, or any other vendor's model.

How do I add credits to my account?

You can top up using USDT on TRC20 or USDC on Base. Minimum amounts start at $20, with bonus credit for larger deposits. Credits never expire and are charged based on real token usage.

Is this a subscription service?

No, there are no monthly fees or subscriptions. You pay only for the tokens you use from your prepaid balance. Errors and refusals do not consume your credits.

Get your API key in 3 steps

Sign up, retrieve your key, and point your client to our base URL. Simple setup.

Try with trial creditView documentation