EN ▾
Get API key

Kimicode: First request in five minutes

Get your first uncensored response in five minutes. This guide covers the base URL, authentication, and key endpoints for the kimicode API.

https://api.kimicode.top/v1

Base URL and Authentication

Start by pointing your client to our base URL: https://api.kimicode.top/v1. You need an API key for every request. Generate one by clicking Get API key on the site. Use Google sign-in or an email and password. No phone number is required. The key is shown immediately after creation. Keep it secure; there is one active key per account. If you generate a new key, the old one stops working. Pass the key in the Authorization header as a bearer token.

First Request

Send your first prompt to the chat completions endpoint. Use the model ID uncensored. The API accepts standard OpenAI-compatible formats. Input goes in, text comes out. Errors and refusals are free, so you only pay for successful token usage. Test connectivity with a simple prompt.

curl https://api.kimicode.top/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."}]
  }'

If the key is invalid, you get a 401 error. If you lack credit, you get a 402. Check your account balance if requests fail unexpectedly.

Python SDK Integration

Use the official OpenAI Python SDK. Set the base URL to our endpoint. Pass your API key. The client handles the request format automatically. This works for any language that supports OpenAI-compatible clients. Install the library via pip. Configure the client with your base URL and key. Send a message using the chat completions endpoint. The response contains the generated text. You can parse the content directly from the response object.

from openai import OpenAI

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

Ensure your code handles exceptions gracefully. Network issues or rate limits may require retries.

Node SDK Usage

The Node.js SDK works identically. Import the client. Configure the base URL and API key. Call the chat completions method. Pass the model ID and messages array. The response structure matches the OpenAI format. Extract the assistant message content. This approach works for server-side generation or edge functions. No additional configuration is needed beyond the base URL change.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.kimicode.top/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 errors by checking the status code. Rate limits return 429. Insufficient funds return 402.

Streaming Responses

Enable streaming by setting stream: true. The API returns Server-Sent Events (SSE). Each chunk contains partial content. Token usage details appear in the last chunk. This reduces perceived latency for long outputs. Handle stream termination properly. Close the connection when the stream ends or an error occurs. Streaming works with all standard clients that support SSE.

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)

Ensure your client buffers chunks correctly. Concatenate the content to form the final response.

Limits, Errors, and Context

Context window is 100,000 tokens total. Max output is 32,000 tokens per request. Set 2,048 if max_tokens is unset. Rate limit is 300 requests per minute per key. Concurrency limit is 8 simultaneous requests. Request body max is 8 MB. Errors include 401 for invalid keys, 402 for no credit, and 429 for rate limits. Credit never expires. Errors are free. No subscription traps.

Specs at a glance

A quick checklist for developers: format, limits, features, billing.

FeatureSupport
ProtocolOpenAI Chat Completions schema; official openai SDKs work unchanged
Base URLhttps://api.kimicode.top/v1
Model IDuncensored
AuthenticationAuthorization: Bearer YOUR_KEY
EndpointsPOST /v1/chat/completions · GET /v1/models
JSON moderesponse_format: {"type": "json_object"}
SSE streamingYes — server-sent events; the last chunk carries token usage
Sampling parameterstemperature, top_p, stop, seed and the two penalties are passed through
Context window100,000 tokens, input and output combined
Function callingSupported: tools + tool_choice, tool_calls in the reply (streamed too), tool results as role: tool messages
Completion lengthprompt + completion fit within 100,000 tokens; max_tokens optional, no separate output cap
Max body8 MB request body
Parallel requests8 requests at the same time per key
Requests per minute300 requests per minute per key
Response headersX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Free trial$0.50 for 7 days, no card · Trial key: 2 parallel requests, 60 req/min; full limits (8 and 300) after first top-up
Top-upUSDT (TRC20) or USDC (Base), any whole amount from $20 to $500
Credit expirypaid credit never expires, no subscription
Billingpay as you go from prepaid credit; nothing is charged for failed or refused requests
Bonus credit+5% on $50+, +10% on $100+, +15% on $200+
Priceinput $0.15 / 1M tokens, output $0.50 / 1M tokens
Contentadult content allowed; sexual content involving minors is refused
Sign-insign in with Google or with e-mail + password
Key managementone active key per account; a new key replaces the old one

Errors and what to do

Errors come back as JSON with a stable type; failed and refused requests are not billed.

CodeTypeMeaning
400bad_requestmalformed request or too long for the context window
401missing_key · invalid_key · key_revokedcheck the Authorization header or use your current key
402no_creditbalance is empty — top up, requests resume at once
403content_blockedrefused by the content policy
404not_foundonly /v1/chat/completions and /v1/models exist
413request_too_largebody over 8 MB
429rate_limited · concurrencyslow down: rate or parallel limit reached
503upstream_busytemporary overload, retry shortly

Questions and answers

Does the API support image or audio generation?

No. This is a text-only API. It serves one uncensored large language model. No embeddings, image, audio, or video generation are supported. Fine-tuning is also not available.

How do I top up my credit?

Top up by crypto (USDT on TRC20, USDC on Base). Minimum top-up is $20, maximum is $500. Bonuses apply for larger amounts. No cards are needed to sign up or for the trial.

Is the trial credit refundable?

No. Trial credit is $0.50 valid for 7 days. It is non-refundable. Claim this credit with one click on your API key page. Regular credit also never expires. Mistakes like double charges are fixed via the Support page.

Your key is one form away

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

Get API key