de ▾

Quickstart: Chat Completions API

Get your uncensored LLM API key and start sending requests immediately. This quickstart covers the base URL, authentication, and core endpoints for the standard OpenAI-compatible interface.

https://api.dolphinaiuncensored.com/v1uncensored

Authentication & Base URL

Start by generating your key via the Get API key page. The base URL is HTTPS://api.dolphinaiuncensored.com/v1. Send your key in the Authorization header.

Use the official OpenAI SDKs or any compatible client. Change the base URL and API key in your client configuration. The model ID to send is uncensored.

POST /v1/chat/completions

Send a standard chat completion request to the /v1/chat/completions endpoint. This is a text-in, text-out API. The model does not refuse lawful adult topics.

Set the model field to uncensored. Use messages for your conversation history. The API returns a JSON object with the generated text.

Errors like 401 indicate an invalid key. 402 means you need to top up. 429 means you hit the rate limit.

curl https://api.dolphinaiuncensored.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "explain the syntax of python lists"}]
  }'

Streaming Responses (SSE)

Enable streaming by setting stream to true. The API sends Server-Sent Events (SSE) for real-time token delivery.

Read the chunks to build your response incrementally. The last chunk contains the final token usage statistics.

This is ideal for chat interfaces. It reduces perceived latency for the end user.

from openai import OpenAI

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

Function Calling & Tools

Define tools in your request. The model will output structured tool calls when needed.

Set tool_choice to auto or a specific tool. The API handles the JSON parsing for you.

Use this for automated workflows. It works with the standard tool schema.

import OpenAI from "openai";

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

JSON Mode Configuration

Force strict JSON output by setting response_format to {"type": "json_object"}.

This ensures the model returns valid JSON. It is useful for parsing structured data.

Combine this with function calling for robust integrations.

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)

Parameters: Temperature, Top-P, and Seed

Adjust temperature for creativity. Use top_p for nucleus sampling. Set seed for reproducibility.

The context window is 100,000 tokens. Max output is 16,000 tokens. Errors are free.

Tune these for your use case.

Frequently asked questions

What is the base URL for the uncensored LLM API?

The base URL is HTTPS://api.dolphinaiuncensored.com/v1. Send requests to this endpoint with your API key in the Authorization header.

How do I authenticate my requests?

Include your API key in the <code>Authorization: Bearer YOUR_API_KEY</code> header. The key is generated on the Get API key page.

What happens if I hit the rate limit?

You will receive a 429 status code. The limit is 300 requests per minute per key. Wait a few seconds and retry.

Your API key is one step away

Register, grab your key, and update the base URL. Simple setup.

Get API key