Basis-URL & Authenticatie
Maak een account aan op de pagina API-sleutel ophalen. Je hebt alleen een e-mailadres en wachtwoord nodig; er is geen telefoonnummer of creditcard nodig om het gratis proeftegoed te activeren. Na registratie wordt je API-sleutel direct weergegeven. Kopieer deze sleutel en bewaar deze veilig. Gebruik hem in de Authorization-header als Bearer-token voor alle verzoeken. De basis-URL voor alle endpoints is https://api.gemma4api.com/v1. Deze URL werkt met elke standaard OpenAI-compatibele client, zodat je van provider kunt wisselen door simpelweg de basis-URL en API-sleutel in je configuratie aan te passen.
Eerste verzoek
Stuur je eerste prompt met curl om de connectiviteit te verifiëren. Vervang YOUR_API_KEY door je daadwerkelijke sleutel. De model-ID is uncensored. Dit eenvoudige tekst-in, tekst-uit-verzoek bevestigt dat je authenticatie correct is en het model reageert. Als je een JSON-antwoord ontvangt met een choices-array, is je setup compleet. Je kunt nu doorgaan met het integreren van de SDK voor complexere workflows.
curl https://api.gemma4api.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-integratie
Installeer de officiële OpenAI Python-pakket. Stel de basis-URL en API-sleutel omgevingsvariabelen in of geef ze direct door aan de clientconstructor. Gebruik de model-ID uncensored om zeker te zijn dat je onze specifieke instantie aanroept. Deze aanpak zorgt ervoor dat je code compatibel blijft met standaard OpenAI-patronen, terwijl je profiteert van ons ongecensureerde model voor contentgeneratie. De SDK behandelt retries en JSON-parsing automatisch.
from openai import OpenAI
client = OpenAI(base_url="https://api.gemma4api.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-integratie
Installeer voor JavaScript-omgevingen het OpenAI Node.js-pakket. Configureer de client met de basis-URL https://api.gemma4api.com/v1 en je API-sleutel. Gebruik de model-ID uncensored in je completion-aanroepen. Deze setup stelt je in staat standaard OpenAI-compatibele codestructuren te behouden, terwijl je profiteert van het specifieke modelgedrag gehost op onze servers. Zorg ervoor dat je asynchrone antwoorden correct afhandelt binnen je Node.js-eventlus.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.gemma4api.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-antwoorden
Schakel streaming in door de parameter stream in te stellen op true in je API-verzoek. Dit retourneert een Server-Sent Events (SSE)-stream, waardoor je tokens kunt weergeven terwijl ze worden gegenereerd. Dit is ideaal voor chatinterfaces waar latentie belangrijk is. Elke chunk bevat een gedeeltelijke delta van het antwoord. Verwerk het stream-einde-evenement om te weten wanneer de generatie compleet is. Deze methode vermindert de waargenomen latentie aanzienlijk in vergelijking met wachten op het volledige antwoord.
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)
Limieten, fouten & contextvenster
Je verzoeken ondersteunen een contextvenster van 100.000 tokens voor prompt en completion samen. Het rate limit is 300 verzoeken per minuut per sleutel, met een maximale verzoekgrootte van 8 MB. Veelvoorkomende fouten zijn 401 voor ongeldige sleutels, 402 als je prepaid tegoed op is, en 429 als je de limiet per minuut overschrijdt. Het regenereren van je API-sleutel intrekt de oude, maar reset de rate teller niet. Zorg ervoor dat je client deze HTTP-statuscodes correct afhandelt voor een vlotte werking.
Technische specificaties
Alle echte limieten en functies van de API op één plek — controleer ze voordat je opwaardeert.
| Onderdeel | Waarde |
|---|---|
| API-formaat | OpenAI-compatibel: elke OpenAI-SDK werkt — vervang alleen base URL en sleutel |
| Authenticatie | Authorization: Bearer YOUR_KEY |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.gemma4api.com/v1 |
| Model-ID | uncensored |
| Contextvenster | 100.000 tokens (invoer + uitvoer) |
| Streaming | ja — server-sent events; het laatste deel bevat het tokenverbruik |
| Function calling | ja — tools, tool_choice; antwoorden bevatten tool_calls, ook bij streaming; resultaten als role: tool |
| Max. uitvoer | tot de rest van het venster van 100.000 tokens; max_tokens optioneel (geen aparte limiet) |
| JSON-modus | response_format: {"type": "json_object"} |
| Parameters | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Rate limit | 300 verzoeken per minuut per sleutel |
| Verzoekgrootte | tot 8 MB |
| Responsheaders | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Gelijktijdige verzoeken | tot 8 tegelijk per sleutel |
| Prijs | $0,25 per 1 mln invoertokens · $1,00 per 1 mln uitvoertokens |
| Geldigheid | betaald tegoed verloopt niet, geen abonnement |
| Opwaarderen | USDT (TRC20) of USDC (Base), elk heel bedrag van $10 tot $500 |
| Gratis proeftegoed | $0,50 voor 7 dagen, zonder kaart · Proefsleutel: 2 parallelle verzoeken, 60 per minuut; volledige limieten (8 en 300) na eerste opwaardering |
| Bonus | +5% vanaf $50, +10% vanaf $100 |
| Afrekening | prepaid tegoed op basis van echt verbruik; fouten en weigeringen zijn gratis |
| Inloggen | Google of e-mail en wachtwoord |
| Sleutels | één actieve sleutel per account; een nieuwe vervangt de oude |
| Inhoud | inhoud voor volwassenen toegestaan; seksuele inhoud met minderjarigen wordt geweigerd |
Foutcodes
Fouten komen als JSON met een vaste type; mislukte of geweigerde verzoeken kosten niets.
| Code | Type | Betekenis |
|---|---|---|
400 | bad_request | ongeldige JSON, lege berichten, verkeerde parameter of context te lang |
401 | missing_key · invalid_key · key_revoked | sleutel ontbreekt, is onjuist of is vervangen |
402 | no_credit | geen tegoed — waardeer op en ga direct verder |
403 | content_blocked | seksuele inhoud met minderjarigen — geweigerd, niet gerekend |
404 | not_found | onbekend endpoint |
413 | request_too_large | body groter dan 8 MB |
429 | rate_limited · concurrency | meer dan 300/min of 8 tegelijk — wacht en probeer opnieuw |
503 | upstream_busy | model bezet — probeer het over enkele seconden opnieuw |
Vragen en antwoorden
Reset het teller van mijn rate limit als ik mijn API-sleutel opnieuw genereer?
Nee. Het regenereren van je sleutel intrekt de vorige en levert een nieuwe in, maar het rate limit geldt per account en blijft behouden bij sleutelwijzigingen. Je moet wachten tot het minutenvenster reset als je de limiet van 300 verzoeken per minuut bereikt.
Welk model draait achter de ID 'uncensored'?
Het is een open-weight large language model gehost op onze eigen GPU-servers. Het is geen GPT, Claude, Gemini of een model van een andere leverancier. Het is afgestemd op antwoorden zonder inhoudelijke weigeringen voor wettelijk volwassen gebruik.
Kan ik deze API gebruiken voor tool calling?
Ja. Het <code>/v1/chat/completions</code> endpoint ondersteunt tool en function calling. Je kunt tool-definities in het verzoek meegeven, en het model retourneert gestructureerde JSON-uitvoer compatibel met standaard OpenAI SDK-implementaties.
Je sleutel is nog maar één formulier verwijderd
Maak een account aan, kopieer de sleutel, pas de base URL aan. Dat is de hele configuratie.