Uncensored LLM API. Prepaid credit.
API Documentation
Get started with our uncensored LLM API in minutes. Use standard OpenAI SDKs to send text and receive unfiltered responses instantly.
Authentication and base URL
Start by generating your key on the dashboard. Our base URL is HTTPS://api.aivenice.cc/v1. Pass your key in the Authorization header. One active key per account replaces the old one automatically.
First request example
Send a simple chat completion to test connectivity. The model ID is "uncensored". It handles text in and text out efficiently. You can adjust parameters like temperature for creativity.
from openai import OpenAI
client = OpenAI(base_url="https://api.aivenice.cc/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)
Errors are free. Refusals do not consume credit. This ensures predictable billing from your first call.
Node.js integration
Use the official Node SDK for easy integration. Set the base URL to our endpoint. Pass your API key in the configuration object. This approach works with most standard OpenAI-compatible libraries.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.aivenice.cc/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);
Handle responses directly in your JavaScript environment. The structure matches standard OpenAI formats for familiarity.
Streaming responses
Enable streaming by setting stream to true. You receive tokens as they generate. This reduces perceived latency for users. The final chunk includes total token usage details.
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)
Parse the SSE events to update your UI in real time. This is ideal for chat interfaces requiring instant feedback.
Parameters and limits
Adjust temperature, top_p, and seed for control. Max output is 16,000 tokens. Context window is 100,000 tokens. Rate limit is 300 requests per minute. Body size maxes at 8 MB.
These limits ensure stable performance. Exceeding rate limits returns a 429 error. Increase concurrency if needed.
Errors and context window
Handle 401 for invalid keys. Use 402 when credit is low. 429 indicates rate limit exceeded. Errors and refusals are free. Your prepaid credit never expires. Context window counts prompt plus completion tokens together.
Monitor usage via the final chunk in streaming. This helps you stay within budget. No hidden fees apply.
cURL
curl https://api.aivenice.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "fetch the latest error logs from server logs"}]
}'Common questions
What is venice AI API pricing?
Pricing is $0.15 per 1M input tokens and $0.50 per 1M output tokens. Errors and refusals are free. Credit never expires.
How do I get a venice AI API key?
Sign up with Google or email on the dashboard. Your key is shown immediately. No phone number is required.
What is the context window for the uncensored model?
The context window is 100,000 tokens. This includes both the prompt and the completion. Max output per request is 16,000 tokens.
Get your key now
Sign up, copy the token, update your base URL. That’s it.