EN ▾

Quick Start Guide: Integrate Our API Sin Restricciones

Integrate our uncensored AI API in minutes using the standard OpenAI protocol. Generate text without content blocks with predictable latency and transparent pricing per token.

Prerequisites

Before you begin, make sure you have an account created on apisinrestricciones.com. Register with your email and password to get your API key instantly. You don't need a credit card for the initial $0.50 free trial credit. This uncensored API uses the standard chat-completions protocol, meaning you can use the official OpenAI libraries or any compatible client.

La api ia expone un único modelo idenficado como uncensored. No hay elección de modelos ni enrutamiento. El modelo es un LLM de peso abierto alojado en nuestros servidores, diseñado para responder sin censura a contenido adulto legal y temas controversiales. No ofrecemos embeddings, imágenes ni audio.

API Key Authentication

Authentication is performed via the Authorization: Bearer YOUR_API_KEY header. Your key is unique per account and can be regenerated at any time, immediately invalidating the previous one. If the key is invalid, the API returns a 401 error. If your balance is depleted, the request fails indicating the need to top up.

No phone number or additional data is required for the trial. Privacy is strict: your prompts are not used to train the model. Keep your key secure, as whoever possesses it has full access to your token quota.

Endpoint: Chat Completions

El punto de entrada principal es POST /v1/chat/completions. Aquí envías el historial de conversación y recibes texto generado. La URL base es https://api.apisinrestricciones.com/v1. Asegúrate de configurar tu cliente para apuntar a este base_url en lugar del de OpenAI.

The model accepts up to 100,000 combined input and output tokens. It supports function calling according to industry standards. Do not assume specific parameters from another provider; this endpoint follows the general convention for function integration. Data is processed asynchronously based on load, with no fixed latency guarantees.

Python Example

Use the Python openai library to interact with the API. Set the key and base_url correctly. The following code demonstrates a basic text completion request.

  • Install the library with pip install openai.
  • Replace YOUR_API_KEY with your actual key.
  • Send the message and process the response.
from openai import OpenAI

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

This example generates a complete response without streaming. It is ideal for batch processing or deterministic responses where you do not need to update the interface in real time.

JavaScript Example

For Node.js environments or modern browsers, use the same official library. The structure is similar to Python, but adapted to JavaScript's asynchronous syntax.

  • Make sure to handle promises correctly.
  • Set the base_url to https://api.apisinrestricciones.com/v1.
  • Access the generated content from response.choices[0].message.content.
import OpenAI from "openai";

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

This method is efficient for web applications that need to generate text quickly without managing manual streaming events.

Streaming with SSE

For a smoother user experience, enable streaming by setting stream: true. The API returns a stream of server-sent events. You will receive text fragments progressively instead of waiting for the entire generation to complete.

This is useful for chat interfaces that display text in real time. Handle content events to accumulate the final response. Streaming does not affect token counting; all generated tokens are billed just like in a non-streaming request.

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)

Remember that streaming consumes the same token quota and is subject to the same rate limits.

Limits, Errors and Context

Your key is limited to 300 requests per minute. If you exceed this threshold, you will receive a 429 (Too Many Requests) error. The request body must not exceed 8 MB. If the key is invalid, you will get a 401. If there is no balance, the system indicates the need to top up.

The model supports a context of 100,000 tokens. This includes both the prompt and the response. If you exceed this limit, the API will reject the request. There is no speed guarantee based on server load; performance varies based on GPU availability. Balance errors do not have a universally standardized HTTP code, but clearly indicate a lack of funds.

cURL

curl https://api.apisinrestricciones.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

Capabilities and limits

If your tool speaks the OpenAI API, these are the details that matter.

ItemValue
CompatibilityOpenAI Chat Completions schema; official openai SDKs work unchanged
MethodsPOST /v1/chat/completions · GET /v1/models
Model IDuncensored
AuthenticationAuthorization: Bearer YOUR_KEY
Base URLhttps://api.apisinrestricciones.com/v1
Sampling parameterstemperature, top_p, stop, seed and the two penalties are passed through
Max outputprompt + completion fit within 100,000 tokens; max_tokens optional, no separate output cap
SSE streamingSupported (stream: true), usage included at the end
Function callingYes — tools, tool_choice; replies carry tool_calls, also when streaming; send results back as role: tool
Max context100,000 tokens (prompt + completion together)
JSON modeJSON object mode via response_format json_object
Concurrency8 requests at the same time per key
Requests per minute300 requests per minute per key
Response headersX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Max bodyup to 8 MB per request
Priceinput $0.25 / 1M tokens, output $1.00 / 1M tokens
Paymentcrypto: USDT on TRON or USDC on Base, $10–$500, any whole sum
Volume bonus+5% from $50, +10% from $100
Credit expiryno monthly fee; paid credit does not expire
How you paypay as you go from prepaid credit; nothing is charged for failed or refused requests
Free trial$0.50 for 7 days, no card · Trial key: 2 parallel requests, 60 req/min; full limits (8 and 300) after first top-up
Keysone key per account, regenerate any time (the old one stops working)
Contentadult content allowed; sexual content involving minors is refused
Sign-inGoogle or e-mail and password

Error codes

The type field is stable, the message is for humans. Errors cost nothing.

StatusTypeReason
400bad_requestinvalid JSON, empty messages, bad parameter, or prompt + max_tokens over the window — fix and resend
401missing_key · invalid_key · key_revokedno key, wrong key, or a key replaced by a newer one
402no_creditout of credit; add credit and retry
403content_blockedsexual content involving minors — refused, not billed
404not_foundunknown endpoint
413request_too_largerequest body larger than 8 MB
429rate_limited · concurrencyover 300/min or 8 parallel — back off and retry
503upstream_busytemporary overload, retry shortly

Frequently asked questions

What exactly does 'uncensored' mean?

The model does not reject legal adult content, fiction, or controversial topics by default. It specifically blocks sexual content involving minors. It is not a GPT or Claude model, but an open-weight model optimized for this purpose.

How much does it cost and how is billing handled?

You pay only for what you use: $0.25 per 1M input tokens and $1.00 per 1M output tokens. No monthly subscriptions. Prepaid credit never expires and you can top up from $10 with cryptocurrencies (USDT or USDC).

Can I use the API for function calling?

Yes, the endpoint supports function calling according to the OpenAI standard. Use the <code>tools</code> parameter to define your functions and the model will invoke them when appropriate.

Your key is one step away

Create an account, copy the key, and change the base URL. That's it.

Get API key
Get API key