Uncensored AI API. Prepaid. No Filters.

Get your key

API Documentation & Quickstart

Drop an unrestricted local AI models endpoint into your existing stack with zero configuration overhead.

Base URL and Authentication Setup

The API key authenticates every request. Generate it via the dashboard using Google or email credentials. Pass it in the Authorization header as a Bearer token.

  • Base URL: https://api.unrestrictedlocalaimodels.com/v1
  • Header: Authorization: Bearer YOUR_API_KEY

No subscription fatigue or monthly billing cycles apply. Credit is prepaid and never expires.

The /v1/chat/completions Endpoint

Send a standard chat request to generate text without content refusal logic.

The endpoint accepts the same JSON structure as OpenAI. Set model to uncensored. The system processes your input and returns the raw output.

Errors during processing do not consume credit. Refusals are free. Only successful token generation counts against your balance.

Python SDK Integration

Use the official OpenAI Python library. Point it to our base URL.

This allows you to leverage existing code. The library handles JSON serialization automatically.

Set api_key to your key. Set base_url to our endpoint. Pass model="uncensored" in your request.

Node.js SDK Integration

Initialize the OpenAI client with our base URL. This works with any compatible SDK.

Configure the client object. Pass your API key. The library manages the request lifecycle.

Call chat.completions.create(). Set the model ID. Receive the response object containing the generated text.

Streaming Responses and Token Usage

Enable streaming by setting stream: true. The server sends Server-Sent Events.

Token usage data appears in the final chunk. This allows accurate billing tracking.

Handle partial updates. Update your UI in real time. The SSE stream ends cleanly.

Error Handling and Rate Limits

Rate limits apply per key. You can send 300 requests per minute. Concurrency is limited to 8 simultaneous requests.

A 401 status means an invalid key. A 402 status indicates insufficient credit. A 429 status signals rate limiting.

The context window is 100,000 tokens. Output is limited to 16,000 tokens. Request bodies must stay under 8 MB.

cURL

curl https://api.unrestrictedlocalaimodels.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the three main dependencies for this rust crate"}]
  }'

Python

from openai import OpenAI

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

Frequently asked questions

How do I top up my prepaid credit?

Top up using crypto only. We accept USDT on TRC20 or USDC on Base. Minimum top-up is $20. Bonus credit applies to larger amounts.

Is the model trained on my data?

No. Prompts are not used for training. Your data remains private. We do not retain your conversation history for model improvement.

Can I use this for NSFW content?

Yes. The model is uncensored. It does not refuse lawful adult content. The only hard limit is no sexual content involving minors.

Get your API key

Register, retrieve your key, and update your base URL. That is all that is required.

Get your key