Summary
- Our API uses the exact same format as OpenAI, allowing you to switch by changing just the base URL and API key.
- Pricing is transparent at $0.15 per million input tokens and $0.50 per million output tokens with no monthly subscriptions.
- Payments are processed exclusively via crypto (USDT or USDC), ensuring privacy and eliminating traditional payment fees.
- The model handles up to 100,000 tokens in context and supports streaming, function calling, and JSON mode natively.
What Is the deepseek API?
The DeepSeek API is an OpenAI-compatible endpoint that processes text inputs and returns text outputs using a large language model. It adheres strictly to the standard chat-completions format, meaning you can use the official OpenAI SDK or any compatible client library. You only need to update the base URL and provide your API key to start sending requests.
Unlike official platforms that may vary in pricing or availability, this service runs a dedicated uncensored model on its own infrastructure. The model is tuned to handle adult content, security research topics, and creative writing without unexpected refusals. It supports streaming via Server-Sent Events (SSE) and includes standard parameters like temperature, top_p, and stop sequences.
curl https://api.deepseekopenaicompatibleapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Summarize the release notes of the last stable build"}]
}'You can verify the model ID by querying the /v1/models endpoint. The system returns a simple JSON object confirming the model identifier as "uncensored". This ensures your code remains clean and predictable without needing complex routing logic or multiple API keys for different models.
Why Choose an uncensored LLM for NSFW Projects?
An uncensored LLM removes the guardrails that standard models use to block adult or controversial topics. This is critical for projects that generate fiction, roleplay, or security analysis where refusals disrupt the user experience. Standard models often reject lawful adult content, requiring workarounds that add latency and complexity to your application.
Our model allows lawful adult content, including detailed descriptions and nuanced narratives. It does not refuse based on the topic itself, only on specific hard limits like sexual content involving minors. This makes it ideal for creative writing tools, chatbots, and content generation platforms that need consistent output without manual prompting adjustments.
from openai import OpenAI
client = OpenAI(base_url="https://api.deepseekopenaicompatibleapi.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)You can test this by sending a request with a topic that standard models might flag. The response will return normally, allowing your application to handle the content as intended. This reliability reduces the need for post-processing or retry logic in your code.
Cost Comparison: proxy vs. Direct uncensored API
Proxy aggregators often hide routing fees by marking up the base price of tokens. They may charge a flat fee per request or add a percentage on top of the model cost. This makes it difficult to predict expenses, especially when traffic spikes. Direct APIs like ours show the exact cost per million tokens, ensuring transparency.
Our pricing is straightforward: $0.15 per million input tokens and $0.50 per million output tokens. Errors and refusals are free, so you only pay for what you use. There are no monthly subscriptions or minimum commitments. This model benefits high-volume users who want to control their spend without unexpected charges.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.deepseekopenaicompatibleapi.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);You can calculate your costs directly from the token counts in the response. This clarity helps you budget accurately and avoid the hidden fees that often appear in proxy services. The prepaid credit system ensures you know exactly how much you have available before each request.
Feature Breakdown: Streaming, Tools, and JSON Mode
Streaming via SSE allows you to receive tokens as they are generated, reducing perceived latency for users. The final chunk includes the total token usage, making it easy to track costs in real-time. This feature is essential for chat interfaces where instant feedback improves engagement.
Function calling enables the model to return structured data for external tools. You can define tools in the request, and the model will output JSON that matches your schema. This is useful for automated workflows, data extraction, and agent-based systems. JSON mode forces the output to be valid JSON, ensuring compatibility with your parser.
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)You can combine streaming with JSON mode to handle complex tasks efficiently. The model supports parameters like temperature and seed for reproducibility. These features make the API suitable for both casual chat and production-grade applications that require reliable structure.
Payment Options: Crypto vs. Traditional Methods
We accept crypto-only payments: USDT on the TRC20 network or USDC on the Base network. You can top up with any whole amount from $20 to $500. Larger amounts receive bonus credit: +5% from $50, +10% from $100, and +15% from $200.
Credit never expires, so you can add funds when convenient. There are no monthly fees or subscription plans. This model suits developers who prefer privacy and want to avoid the fees associated with traditional payment processors. The process is simple: send the crypto, and the credit appears in your account.
from openai import OpenAI
client = OpenAI(base_url="https://api.deepseekopenaicompatibleapi.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)You can sign up with Google or email and password. The API key is shown immediately, allowing you to start testing without delay. No phone number is required, keeping your personal information minimal. This streamlined process ensures you can focus on building your application rather than managing billing details.
Rate Limits and Concurrency
Each API key is limited to 300 requests per minute and 8 concurrent requests. The maximum request body size is 8 MB. These limits ensure stable performance for most applications. If you exceed the rate limit, you will receive a 429 error. You can implement retry logic with exponential backoff to handle these cases gracefully.
The context window supports up to 100,000 tokens for the combined prompt and completion. The maximum output per request is 16,000 tokens. If you do not set max_tokens, the default is 2,048 tokens. These limits are designed to balance performance with cost efficiency.
curl https://api.deepseekopenaicompatibleapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Summarize the release notes of the last stable build"}]
}'You can monitor your usage via the response headers or the final streaming chunk. This transparency helps you stay within your limits and avoid service interruptions. The single-key-per-account model simplifies management, as you only need to track one key per project.
How to Migrate Your OpenAI SDK
Migrating to our API requires changing two values in your OpenAI SDK configuration: the base URL and the API key. The rest of your code remains the same. This includes all parameter structures, streaming handlers, and error handling logic. You can switch back and forth easily if needed.
Update the base URL to HTTPS://api.deepseekopenaicompatibleapi.com/v1. Replace your existing API key with the one from your account. The model ID is "uncensored". You can test the connection by sending a simple chat completion request. If it returns a response, your migration is successful.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.deepseekopenaicompatibleapi.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);You can use the same client libraries you currently use for OpenAI. This includes support for Python, Node.js, and other languages. The compatibility ensures a smooth transition without rewriting your entire application. This reduces development time and minimizes the risk of bugs during the switch.