ru ▾

Uncensored API documentation and endpoints

Start sending text to our uncensored LLM in minutes. Use the standard OpenAI-compatible endpoints with your prepaid API key for zero-friction integration.

Authentication and base URL

Send requests to our hosted endpoint using your unique API key. The base URL is https://api.apikeyprice.com/v1. Pass your key in the Authorization header as a Bearer token. This works with any OpenAI-compatible client library. You generate the key on the signup page. No phone number is required. Google or email login works instantly.

curl https://api.apikeyprice.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Show me the monthly cost for 10k requests."}]
  }'

Keep your key secure. One active key replaces the old one if you regenerate it. Errors and refusals do not consume credit. You pay only for real token usage.

POST /v1/chat/completions

Execute your first chat completion with a simple POST request. Use the model ID uncensored for open-weight inference. The endpoint accepts standard message arrays. Input tokens cost $0.15 per million. Output tokens cost $0.50 per million. Prepaid credit deducts automatically. No subscription fees apply.

from openai import OpenAI

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

Set the max_tokens parameter to control output length. The default is 2,048 tokens. You can request up to 16,000 tokens per call. Context windows support 100,000 tokens total. This includes both prompt and completion.

Streaming responses (SSE)

Receive tokens in real-time using Server-Sent Events. Set stream: true in your request. The API sends incremental chunks as they are generated. This reduces perceived latency for end-users. The final chunk contains the total token usage statistics.

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)

Handle partial responses gracefully. Buffer the tokens on the client side. Concatenate them to form the final answer. Streaming works with all standard parameters. Temperature and top_p apply per request.

Function calling and JSON mode

Enable structured outputs for reliable parsing. Use response_format set to {"type": "json_object"} for strict JSON. This ensures consistent data structures. Function calling supports tool definitions. The model returns tool calls in the standard format.

Use tool_choice to force specific behavior. This is useful for automated pipelines. Validate the JSON schema on your side. Errors in formatting do not incur extra charges. The uncensored model handles complex instructions well.

Rate limits and concurrency

Respect the 300 requests per minute limit per key. You can send 8 concurrent requests simultaneously. The maximum request body size is 8 MB. Exceeding limits returns a 429 status code. Retry with exponential backoff. Do not spam the endpoint.

Monitor your usage via the dashboard. Credit never expires. You can top up anytime with crypto. No monthly minimums exist. Pay only for what you use. Errors are free.

Error codes and retries

Handle common HTTP errors efficiently. A 401 status means your API key is invalid. Check your credentials. A 402 status indicates insufficient credit. Top up via crypto to continue. A 429 status signals rate limiting. Wait before retrying.

Refusals for minor content do not cost credit. Other errors may consume tokens. Always log the error response. This helps debug integration issues. The uncensored model is stable. No hidden fees apply.

Node.js

import OpenAI from "openai";

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

Frequently asked questions

How do I get an API key?

Sign up on the Get API key page. Use Google or email login. The key appears immediately. No phone number is needed. You can regenerate the key later.

What models are available?

We offer one model: <code>uncensored</code>. It is an open-weight model tuned for adult use. It is not GPT, Claude, or Llama. Check the /v1/models endpoint for details.

Does credit expire?

No. Prepaid credit never expires. You can top up at any time. Use USDT or USDC for bonuses. Errors and refusals are free.

Generate your key now

Sign up, copy your key, update your base URL. That’s it.

Get your key