de ▾
Claim trial key

API Documentation

Connect to our uncensored LLM API with standard OpenAI-compatible code. Send text, receive raw tokens, and pay only for what you use.

Base URL & Authentication

Use https://api.gemininsfwprompt.com/v1 as your base endpoint. Authentication relies on a single API key passed via the Authorization: Bearer <key> header. Create your key on the dashboard using Google or email. No phone number is required. The key grants immediate access to the uncensored model.

First Request

Send a standard completion request to test connectivity. The API accepts raw text and returns generated text without restrictive filters. Ensure your payload includes the model ID and user messages. Verify the response contains generated content before proceeding to integration.

curl https://api.gemininsfwprompt.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Check if port 8080 is open and listening"}]
  }'

Python SDK Integration

Initialize the client with your base URL and key. Point the client to our hosted endpoint. Pass the model ID uncensored in your completion call. The library handles tokenization and transmission. Receive the full response text for immediate use in your application logic.

from openai import OpenAI

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

Configure the Node client with the same base URL. Set the API key in the environment or client config. Request completions using the uncensored model ID. The SDK manages the HTTP connection and parses the JSON response. Use this for server-side generation or local scripts.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.gemininsfwprompt.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. The API sends Server-Sent Events (SSE) as tokens are generated. Read each chunk to display real-time output. The final chunk contains the total token usage statistics. This approach reduces perceived latency for long-form content generation.

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

Rate limits enforce 300 requests per minute per key. Concurrent requests cap at eight per key. The context window holds 100,000 tokens total. Errors include 401 for invalid keys and 429 for rate limits. Handle these gracefully in your client logic to maintain uptime.

Common questions

Is this the official Gemini NSFW prompt API?

No. We are an independent service. We do not serve Google's Gemini model. Our API is OpenAI-compatible and uses our own uncensored model. Check Google's documentation for their specific limits and pricing.

What is the context window size?

The context window is 100,000 tokens. This includes both the input prompt and the generated output tokens. Requests exceeding this limit will fail.

Do you support image or video generation?

No. We provide a text-only API. Endpoints support <code>chat/completions</code> and <code>models</code> only. No embeddings, audio, or vision features are available.

Obtain your API key

Register, retrieve the key, update the endpoint URL. Setup is complete.

Claim trial key

$0.50 trial creditClaim trial key