EN ▾
NSFW LLMCreate key

Quickstart Guide

Get your uncensored LLM running in minutes with this OpenAI-compatible API. We skip the subscription locks so you can generate adult content without refusals.

Install the SDK

Start by installing the official library for your language. This gives you direct access to the chat.completions endpoint without extra routing layers.

  • Python: pip install openai
  • Node.js: npm install openai

Keep the package updated to ensure compatibility with streaming and function calling features.

Set your base URL

Point your client to our specific endpoint to bypass standard provider filters. Use https://api.nsfwllmsystemprompt.com/v1 as your base URL.

Pass your API key in the header. This ensures requests go to the uncensored model directly.

curl https://api.nsfwllmsystemprompt.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the top five features of this model"}]
  }'

Send your first request

Make a POST request to /v1/chat/completions. Send the model ID uncensored and your system prompt.

The model answers without refusing lawful adult topics. Set max_tokens to control output length.

from openai import OpenAI

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

Handle streaming responses

Enable streaming by setting stream: true. This returns data token-by-token via Server-Sent Events.

Process each chunk to display real-time output. Check the final chunk for total token usage and billing data.

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)

Enable function calling

Define tools in your request to let the model call external functions. Pass the tools array with your schema.

Set tool_choice to auto or a specific tool name. The model returns tool calls in the response content.

import OpenAI from "openai";

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

Check your usage and limits

You have 300 requests per minute and 8 concurrent connections per key. The context window is 100,000 tokens total.

Errors like 401 (invalid key) or 402 (no credit) are free. Refusals due to content are also free. Pay only for successful token usage.

Switch your base URL in production

Update your environment variable to point to the stable endpoint. Ensure your API key is secure in your production environment.

Monitor your token usage via the final streaming chunk. Refill credit via crypto when needed.

Frequently asked questions

Is this the NSFW LLM system prompt API?

Yes, we host an uncensored model optimized for adult content. It is not GPT, Claude, or any other vendor's model.

Why am I getting a 402 error?

Your prepaid credit is exhausted. You can top up via USDT or USDC. Errors and refusals do not consume credit.

What is the context window size?

The model supports 100,000 tokens for prompt and completion combined. Max output is 16,000 tokens per request.

Start with free credits

Enter your email and password to receive your key instantly.

Create key