Dolphin uncensored llm API Documentation

Get your uncensored LLM API key and start sending requests to our OpenAI-compatible endpoint immediately.

https://api.dolphinuncensoredllm.com/v1uncensored

Authentication and Base URL

Your API key authenticates every request to our hosted infrastructure. You find this key on the Get API key page after signing in with Google or an email password. Keep this string secret because it grants full access to your prepaid credits.

Point your SDK or HTTP client at our base URL. You replace the default OpenAI endpoint with this address to ensure your calls route to our uncensored model.

https://api.dolphinuncensoredllm.com/v1

The chat.completions Endpoint

Send your prompt to the chat completions endpoint to receive text output. This standard endpoint accepts your system instructions and user messages. You must specify the model ID as uncensored in every request.

Here is a basic request using the curl command:

curl -X POST https://api.dolphinuncensoredllm.com/v1/chat/completions \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "uncensored", "messages": [{"role": "user", "content": "Tell me a dark story."}], "max_tokens": 500 }'

Python SDK Integration

Use the official OpenAI Python library to interact with our API. You initialize the client with your base URL and API key. This allows you to use familiar methods like chat.completions.create.

The following code demonstrates a simple text generation request:

import openai client = openai.OpenAI( base_url="https://api.dolphinuncensoredllm.com/v1", api_key="YOUR_API_KEY" ) response = client.chat.completions.create( model="uncensored", messages=[{"role": "user", "content": "Explain quantum computing."}], max_tokens=1024 )

Node.js Client Setup

Install the OpenAI npm package and configure it to use our base URL. This ensures your Node.js application sends requests to the correct uncensored model.

Initialize the client with your credentials and send a message:

import OpenAI from 'openai'; const client = new OpenAI({ baseURL: 'https://api.dolphinuncensoredllm.com/v1', apiKey: 'YOUR_API_KEY' }); const response = await client.chat.completions.create({ model: 'uncensored', messages: [{ role: 'user', content: 'Write code for a scraper.' }] });

Streaming Responses and Token Counts

Enable streaming by setting the stream parameter to true. This returns tokens progressively, improving perceived latency for long outputs. The final chunk in the stream contains the full token usage statistics.

This approach is ideal for real-time interfaces:

const stream = await client.chat.completions.create({ model: 'uncensored', messages: [{ role: 'user', content: 'Write a long poem.' }], stream: true }); for await (const chunk of stream) { process.stdout.write(chunk.choices[0]?.delta?.content || ''); }

Error Codes and Rate Limits

You will encounter specific HTTP status codes when something goes wrong. A 401 error means your API key is invalid or missing. A 402 error indicates your prepaid credit balance is too low for the request.

Rate limits protect the infrastructure. You are allowed 300 requests per minute per key. If you exceed this, you receive a 429 Too Many Requests error. You can also send 8 requests simultaneously. Your context window is 100,000 tokens total for prompt and completion combined.

cURL

curl https://api.dolphinuncensoredllm.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Summit the meeting notes to bullet points"}]
  }'

Python

from openai import OpenAI

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

import OpenAI from "openai";

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

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)

Frequently asked questions

How do I authenticate my requests?

Include your API key in the Authorization header as a Bearer token. You generate this key on the dashboard after signing in with Google or email. Keep this key secure as it controls your prepaid credits.

What is the context window size?

The model supports a 100,000 token context window. This limit applies to the combined total of your input prompt and the generated output. Exceeding this limit will result in an error.

What happens if I hit the rate limit?

You will receive a 429 status code if you exceed 300 requests per minute. You can also run 8 concurrent requests. Wait a few seconds before retrying to avoid further throttling.

Get your API key

Sign up, copy the key, update the base URL. That is all.

Get your key