Authenticatie & basis-URL
Je API-sleutel verifieert elk verzoek. Genereer een sleutel via het dashboard met Google of e-mail; er is geen telefoonnummer nodig. Gebruik deze sleutel in de Authorization header. De basis-URL voor alle verzoeken is HTTPS://api.modelsnsfw.com/v1. Dit endpoint werkt met elke OpenAI-compatible client door simpelweg de base URL aan te passen en je sleutel op te geven.
curl https://api.modelsnsfw.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List all available nsfw model tiers and their monthly costs."}]
}'
Chat Completions Endpoint
Stuur tekst en ontvang tekst via POST /v1/chat/completions. De model-ID is uncensored. Het is een open-weight model getuned voor geen weigeringen op wettelijk volwassen inhoud. Het is geen GPT, Claude of een ander vendor-model. Input-tokens kosten $0,15 per miljoen; output-tokens kosten $0,50 per miljoen. Fouten zijn gratis.
from openai import OpenAI
client = OpenAI(base_url="https://api.modelsnsfw.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)
Streaming-responsen (SSE)
Activeer streaming door stream: true. De API retourneert Server-Sent Events (SSE) met tokengebruik in het laatste chunk. Dit is ideaal voor realtime chatinterfaces. Je ontvangt gedeeltelijke tokens onmiddellijk. Dit vermindert de waargenomen latentie voor de gebruiker aanzienlijk.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.modelsnsfw.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);
Functiedaanroep & JSON-modus
Gebruik response_format: {"type": "json_object"} voor gestructureerde uitvoer. Je kunt ook tools definiëren voor function calling. Het model ondersteunt temperature, top_p, stop, en seed parameters. Dit zorgt voor deterministische resultaten wanneer dat nodig is. JSON-modus dwingt de uitvoer af tot een geldig JSON-formaat.
Rate Limits & beperkingen
Je bent beperkt tot 300 verzoeken per minuut per sleutel. Er kunnen slechts 8 verzoeken gelijktijdig draaien. De request body mag niet groter zijn dan 8 MB. Als je te veel verzoeken stuurt, ontvang je een 429-fout. Ongeldige sleutels retourneren 401. Onvoldoende krediet retourneert 402. Fouten tijdens verwerking verbruiken niet je vooruitbetaalde krediet.
Tokengebruik & Facturatie
Het contextvenster bedraagt 100.000 tokens in totaal. Maximaal 16.000 tokens uitvoer per verzoek. Als max_tokens is niet ingesteld, dan wordt 2.048 als standaardwaarde gebruikt. Credits zijn vooraf betaald en vervallen niet. Opwaarderingen zijn alleen via crypto (USDT/TRC20 of USDC/Base). Bonus tegoed geldt voor grotere opwaarderingen. Er is geen abonnement vereist.
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)