chatbotapis.comDokumentation
Schnellstartanleitung für die Chatbot-API
Starte in Minuten mit der Chatbot-API. Diese Anleitung behandelt Authentifizierung, einfache Anfragen, Streaming und Function Calling über unseren OpenAI-kompatiblen Endpunkt.
Basis-URL & Authentifizierung
Ersetze die Standard-OpenAI-Basis-URL durch https://api.chatbotapis.com/v1, um Anfragen an unser unzensiertes LLM zu leiten. Du authentifizierst dich mit einem Standard-API-Schlüssel, der im Authorization-Header übergeben wird. Dein Schlüssel wird direkt nach der Anmeldung auf der Seite „API-Schlüssel“ generiert und ist an ein Konto gebunden. Du kannst den Schlüssel jederzeit neu generieren, wodurch der vorherige sofort ungültig wird. Für den Start ist keine Kreditkarte erforderlich, und das Testguthaben gilt 7 Tage lang.
Einfache Vervollständigungsanfrage
Sende eine standardmäßige chat/completions-Anfrage, um Textausgaben zu erhalten. Die Modell-ID ist immer uncensored. Diese API unterstützt Texteingabe und Textausgabe mit einem Kontextfenster von 100.000 Token. Nutze diesen Endpunkt für direkte LLM-Interaktionen ohne Embeddings oder Bildgenerierung.
curl https://api.chatbotapis.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."}]
}'Die Antwort enthält den generierten Text im Feld content. Wenn dein Schlüssel ungültig ist, erhältst du einen 401-Fehler. Wenn du kein Prepaid-Guthaben hast, erhältst du einen 402-Fehler.
Python SDK Schnellstart
Installiere die offizielle OpenAI Python-Bibliothek und verweise sie auf unsere Basis-URL. So kannst du das gleiche SDK verwenden, das du bereits von OpenAI kennst, aber direkt auf unser unzensiertes Modell zugreifen. Lege api_key und base_url fest, bevor du Anfragen stellst.
from openai import OpenAI
client = OpenAI(base_url="https://api.chatbotapis.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)Diese Einrichtung funktioniert sowohl für einfache Vervollständigungen als auch für komplexes Function Calling. Das SDK formatiert JSON automatisch. Beachte, dass Prompts nicht verwendet werden, um die Daten deines Accounts zu trainieren.
Node.js SDK-Integration
Für JavaScript-Entwickler funktioniert das Node.js OpenAI SDK identisch. Initialisiere den Client mit deinem Schlüssel und der spezifischen Basis-URL für ChatBotApis. Dies ist nützlich für den Aufbau von Backend-Diensten oder serverlosen Funktionen, die rohe LLM-Ausgaben benötigen.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.chatbotapis.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);Stelle sicher, dass du Fehler ordnungsgemäß behandelst. Ein 429-Statuscode bedeutet, dass du das Ratenlimit von 300 Anfragen pro Minute erreicht hast. Ein 400-Fehler deutet normalerweise auf einen fehlerhaften Anfragekörper oder das Überschreiten des 8-MB-Limits hin.
Streaming-Antworten über SSE
Nutze Server-Sent Events (SSE) für textgenerierung mit geringer Latenz. Setze stream: true in deiner Anfrage. Die API gibt Textchunks zurück, sobald sie generiert werden, sodass deine Anwendung Token in Echtzeit anzeigen kann. Dies reduziert die wahrgenommene Latenz erheblich im Vergleich zum Warten auf die vollständige Antwort.
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)Der Stream-Modus funktioniert sowohl mit dem Python- als auch dem Node-Sdk. Er ist ideal für Chat-Schnittstellen, bei denen Benutzer sofortiges Feedback erwarten. Das Kontextfenster gilt weiterhin für die Gesamtzahl der Prompt- und Completion-Token.
Ratenlimits, Fehler & Kontext
Unsere API setzt strenge Limits durch, um Stabilität zu gewährleisten. Du darfst 300 Anfragen pro Minute pro Schlüssel senden. Die maximale Größe des Anfragekörpers beträgt 8 MB. Überschreitest du das Limit, erhältst du einen 429-Fehler. Das Kontextfenster umfasst 100.000 Token, sowohl Input- als auch Output-Token. Dieses Modell ist unzensiert für die Nutzung durch Erwachsene, blockiert jedoch sexuelle Inhalte, die Minderjährige betreffen. Es gibt keine SLA-Garantien oder Zertifizierungen, aber die Preise sind transparent und das Prepaid-Guthaben verfällt nie.
Fragen und Antworten
Ist dies die offizielle OpenAI-API?
Nein. Wir sind ein unabhängiger Dienst, der das OpenAI-kompatible API-Format verwendet. Unser Modell ist ein Open-Weight-Modell, das auf unseren eigenen Servern gehostet wird, nicht GPT-4 oder GPT-3.5.
Wie funktionieren Bonusguthaben?
Du erhältst +5 % Bonusguthaben, wenn du 50 $ oder mehr auflädst, und +10 %, wenn du 100 $ oder mehr auflädst. Die Guthaben werden zu deinem Prepaid-Guthaben hinzugefügt und verfallen nie.
Was passiert, wenn ich meinen API-Schlüssel neu generiere?
Der alte Schlüssel wird sofort widerrufen und kann nicht mehr verwendet werden. Der neue Schlüssel ist sofort gültig. Du verlierst kein Prepaid-Guthaben oder Verlauf durch das Ändern der Schlüssel.
Dein Schlüssel ist nur ein Formular entfernt
Erstelle ein Konto, kopiere den Schlüssel, ändere die Basis-URL. Das ist die gesamte Einrichtung.
API-Schlüssel erhaltenDokumentation lesen
ChatBotApis
chatbotapis.com
Funktionen und Limits
Eine Tabelle mit jedem Limit, jeder Funktion und jedem Preis.
| Merkmal | Wert |
|---|---|
| API-Format | OpenAI-kompatibel: jedes OpenAI-SDK funktioniert – nur Base-URL und Schlüssel ändern |
| Endpunkte | POST /v1/chat/completions · GET /v1/models |
| Modell-ID | uncensored |
| Authentifizierung | Authorization: Bearer YOUR_KEY |
| Base-URL | https://api.chatbotapis.com/v1 |
| Kontextfenster | 100.000 Tokens (Eingabe + Ausgabe) |
| JSON-Modus | response_format: {"type": "json_object"} |
| Streaming | ja – Server-Sent Events, der letzte Chunk enthält die Token-Nutzung |
| Max. Ausgabe | bis zum Rest des 100.000-Token-Fensters; max_tokens optional (kein separates Limit) |
| Parameter | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Function Calling | ja – tools, tool_choice; Antworten mit tool_calls, auch im Stream; Ergebnisse als role: tool |
| Antwort-Header | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Anfragegröße | bis 8 MB |
| Ratenlimit | 300 Anfragen pro Minute und Schlüssel |
| Parallelität | 8 gleichzeitige Anfragen pro Schlüssel |
| Abrechnung | Prepaid-Guthaben nach echter Nutzung; Fehler und Ablehnungen sind kostenlos |
| Preis | $0,25 pro 1 Mio. Eingabe-Tokens · $1,00 pro 1 Mio. Ausgabe-Tokens |
| Testguthaben | $0,50 für 7 Tage, ohne Karte · Testschlüssel: 2 parallele Anfragen, 60 pro Minute; volle Limits (8 und 300) nach erster Aufladung |
| Gültigkeit | bezahltes Guthaben verfällt nie, kein Abo |
| Bonus | +5 % ab $50, +10 % ab $100 |
| Aufladen | USDT (TRC20) oder USDC (Base), jeder ganze Betrag von $10 bis $500 |
| Schlüssel | ein aktiver Schlüssel pro Konto; ein neuer ersetzt den alten |
| Anmeldung | Google oder E-Mail und Passwort |
| Inhalte | Inhalte für Erwachsene erlaubt; sexuelle Inhalte mit Minderjährigen werden abgelehnt |
Fehlercodes
Fehler kommen als JSON mit festem type; fehlgeschlagene oder abgelehnte Anfragen kosten nichts.
| Code | Typ | Bedeutung |
|---|---|---|
400 | bad_request | ungültiges JSON, leere Nachrichten, falscher Parameter oder Kontext zu lang |
401 | missing_key · invalid_key · key_revoked | Schlüssel fehlt, ist falsch oder wurde ersetzt |
402 | no_credit | kein Guthaben – aufladen, dann geht es sofort weiter |
403 | content_blocked | sexuelle Inhalte mit Minderjährigen – abgelehnt, nicht berechnet |
404 | not_found | unbekannter Endpunkt |
413 | request_too_large | Anfrage größer als 8 MB |
429 | rate_limited · concurrency | über 300/Min. oder 8 parallel – kurz warten |
503 | upstream_busy | Modell ausgelastet – in Sekunden erneut versuchen |