Uncensored API. Prepaid. No nonsense.

API Documentation for heretic llm models

Get raw, uncensored text generation with our OpenAI-compatible API. This quickstart guides you to your first request using standard SDKs.

Get your key

Base URL and Authentication

Use https://api.hereticllmmodels.com/v1 as your base URL. Pass your API key in the Authorization: Bearer <key> header. Generate keys via Google or email login. Tokens are charged per token used.

First Request

Send a POST to /v1/chat/completions. Use model uncensored. Set max_tokens to 16,000. Errors are free. Credit never expires. No monthly fees apply.

curl https://api.hereticllmmodels.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "calculate the derivative of 3x squared plus 5x"}]
  }'

Python SDK

Install the official OpenAI package. Set base_url to our endpoint. Use model="uncensored". Streaming works via SSE. Tool use is supported. JSON mode is available. Temperature adjusts randomness. Top_p controls nucleus sampling. Stop sequences halt generation. Seed ensures reproducibility. Presence and frequency penalties reduce repetition. Errors do not consume credit.

from openai import OpenAI

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

Configure the Node.js client. Set the base URL correctly. Use the uncensored model ID. Stream responses easily. Pass tools for function calling. Enforce JSON output mode. Adjust temperature and top_p. Set stop sequences. Fix seeds for consistency. Apply penalty modifiers. Errors are free.

import OpenAI from "openai";

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

Set stream: true in your request. Receive Server-Sent Events (SSE). Parse chunks sequentially. Token counts appear in the final chunk. This method reduces perceived latency significantly. It allows real-time display of generated text. Buffer management remains your responsibility. Errors may still occur mid-stream. Handle disconnects gracefully.

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

Context window is 100,000 tokens. Max output is 16,000 tokens. Limit is 300 requests per minute. Allow 8 concurrent requests per key. Max body size is 8 MB. Use 401 for invalid keys. Use 402 for insufficient credit. Use 429 for rate limits.

Common questions

What is the heretic LLM models context limit?

The context window supports 100,000 tokens combined. This includes both your input prompt and the model's output. You can generate up to 16,000 tokens per request.

How do I handle errors and billing?

Errors and refusals are free. You only pay for successfully generated tokens. Credit never expires and does not require a subscription. Use 402 codes to check your balance status.

What authentication methods are available?

Sign up with Google or email. Generate a single API key per account. Pass it via the Authorization header. No phone number is required for registration.

Secure your API key

Register, retrieve your key, update the endpoint. Minimal config required.