Get API key

Quickstart for DeepSeek users

Migrate your code to our uncensored LLM endpoint by updating the base URL and API key. The API follows the OpenAI chat-completions specification, allowing you to swap in our model without changing your application logic.

Base URL
https://api.deepseekapikey.com/v1
Model
uncensored

Authentication and Base URL

Our API is hosted at https://api.deepseekapikey.com/v1. To authenticate, include your API key in the Authorization header as a Bearer token. You can generate a key on the Get API key page using just an email and password. If you lose your key, you can regenerate it at any time, which immediately revokes the previous one. Unlike some vendors, we do not require a credit card for the initial trial account.

First Request

Send a standard POST request to /v1/chat/completions. Use the model ID uncensored to access our open-weight model. The request body follows the standard structure with a messages array containing your prompt. This endpoint supports text input and text output, making it a drop-in replacement for many existing integrations.

curl https://api.deepseekapikey.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

Python SDK Integration

If you are using the official OpenAI Python client, you can point it to our base URL by overriding the base_url parameter. Pass your key to the client initialization. This approach allows you to keep your existing Python code structure while routing requests through our uncensored endpoint. The client handles JSON serialization and response parsing automatically.

from openai import OpenAI

client = OpenAI(base_url="https://api.deepseekapikey.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 SDK Integration

For Node.js applications, initialize the OpenAI client with the same configuration strategy. Set the baseURL to our API endpoint and provide your key. This ensures that all subsequent calls, including tool usage, route correctly to our servers. This method works with any OpenAI-compatible SDK that respects the baseURL override.

import OpenAI from "openai";

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

Enable streaming by setting stream: true in your request payload. The API returns a Server-Sent Events (SSE) stream, allowing you to receive tokens as they are generated. This is ideal for user interfaces that benefit from real-time feedback. The stream format matches the standard OpenAI SSE specification, so your existing streaming handlers should work without modification.

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)

Limits, Errors, and Context

The context window supports 100,000 tokens for both prompt and completion combined. If you exceed the rate limit of 300 requests per minute, the API returns a 429 error. Authentication failures return a 401 status, while insufficient prepaid credit results in a 402 error. You can check available models via GET /v1/models, though the primary endpoint is designed for chat completions. Prompts are not used for training, and the model blocks sexual content involving minors.

API facts in one table

Everything the endpoint can and cannot do, in one place — check it before you top up.

FeatureSupport
API formatOpenAI-compatible: any OpenAI SDK or client works — change the base URL and the key
Modeluncensored
EndpointsPOST /v1/chat/completions · GET /v1/models
Base URLhttps://api.deepseekapikey.com/v1
API keyAuthorization: Bearer YOUR_KEY
Tools / tool callsYes — tools, tool_choice; replies carry tool_calls, also when streaming; send results back as role: tool
Completion length16,000 tokens max; 2,048 if max_tokens is not set
Structured outputJSON object mode via response_format json_object
Sampling parameterstemperature, top_p, stop, seed and the two penalties are passed through
Max context100,000 tokens (prompt + completion together)
StreamingYes — server-sent events; the last chunk carries token usage
HeadersX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Concurrency8 requests at the same time per key
Requests per minute300 requests per minute per key
Request size8 MB request body
Billingpay as you go from prepaid credit; nothing is charged for failed or refused requests
Priceinput $0.25 / 1M tokens, output $1.00 / 1M tokens
Subscriptionpaid credit never expires, no subscription
Trial credit$0.50 of credit valid 7 days, no card needed
Bonus credit+5% from $50, +10% from $100
Paymentcrypto: USDT on TRON or USDC on Base, $10–$500, any whole sum
Contentadult content allowed; sexual content involving minors is refused
Sign-inGoogle or e-mail and password
Keysone active key per account; a new key replaces the old one

Error codes

The type field is stable, the message is for humans. Errors cost nothing.

CodeTypeMeaning
400bad_requestmalformed request or too long for the context window
401missing_key · invalid_key · key_revokedno key, wrong key, or a key replaced by a newer one
402no_creditout of credit; add credit and retry
403content_blockedrefused by the content policy
404not_foundunknown endpoint
413request_too_largerequest body larger than 8 MB
429rate_limited · concurrencyover 300/min or 8 parallel — back off and retry
503upstream_busytemporary overload, retry shortly

Questions and answers

Is this model the same as DeepSeek?

No, this is an independent open-weight model run on our own GPU servers. It is not GPT, Claude, Gemini, Grok, or DeepSeek. It is tuned to answer without content refusals for lawful adult use.

How does pricing work?

We use transparent pay-as-you-go pricing: $0.25 per 1M input tokens and $1.00 per 1M output tokens. There are no monthly fees or hidden tiers, and prepaid credit never expires.

Can I use this for tool/function calling?

Yes, the POST /v1/chat/completions endpoint supports standard tool and function calling payloads. The API accepts the same schema format used by OpenAI-compatible clients.

Your key is one form away

Create an account, copy the key, change the base URL. That is the whole setup.

Get API key