De waarden om te kopiëren
Iedereen die de mimo api base url zoekt, heeft drie waarden nodig, en al het andere is een detail van de tool die je configureert.
| Instelling | Waarde |
|---|---|
| Basis-URL | https://api.mimoapi.top/v1 |
| Model-ID | uncensored |
| Auth-header | Authorization: Bearer YOUR_KEY |
| Chat-eindpunt | POST /v1/chat/completions |
| Modellijst | GET /v1/models |
De service is OpenAI-compatibel, dus elke client die je de OpenAI-base URL en sleutel laat wijzigen, werkt. Het is een gehoste tekst-API die één open-weight model draait van een onafhankelijke provider; het is niet de officiële API van een modelleverancier. Alleen tekst: er is geen beeld-, audio- of videogeneratie, geen embeddings en geen fine-tuning, dus clients die die endpoints verwachten, zullen ze niet vinden. Als je nog geen sleutel hebt, heb je er met de sleutelpagina in een minuut een.
Base URL versus volledig endpoint
De meest voorkomende verwarring is tussen de base URL en de endpoint-URL. De base URL stopt bij /v1. Het endpoint is de base plus een pad. Officiële OpenAI SDKs, en de meeste tools die daarop zijn gebouwd, combineren de twee voor je.
- Base URL:
https://api.mimoapi.top/v1 - Chat-endpoint:
https://api.mimoapi.top/v1/chat/completions - Models-endpoint:
https://api.mimoapi.top/v1/models
Wanneer een instellingenscherm vraagt om een "base URL", "API base", "endpoint" of "host", lees dan de placeholder. Als de placeholder eindigt op /v1, plak je de base URL. Als deze eindigt op /chat/completions, plak je het volledige chat-endpoint. Het plakken van het volledige endpoint in een veld dat een base verwacht, produceert /chat/completions/chat/completions, wat niet bestaat. Het plakken van alleen het domein in een veld dat een base verwacht, produceert /chat/completions zonder /v1, wat op dezelfde manier faalt.
Let ook op de host. De API bevindt zich op het api subdomein. Het gewone domein van de site levert de webpagina's, dus een verzoek naar dit domein met een API-pad bereikt het model niet.
Python en Node
Met de officiële SDKs stel je de base URL één keer in wanneer je de client maakt. Installeer met pip install openai of npm install openai.
from openai import OpenAI
client = OpenAI(
base_url="https://api.mimoapi.top/v1",
api_key="YOUR_KEY",
)
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Name three uses for a base URL."}],
max_tokens=150,
)
print(resp.choices[0].message.content)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.mimoapi.top/v1",
apiKey: process.env.LLM_API_KEY,
});
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Name three uses for a base URL." }],
max_tokens: 150,
});
console.log(resp.choices[0].message.content);
De Python- en Node OpenAI SDKs lezen ook de omgevingsvariabelen OPENAI_BASE_URL en OPENAI_API_KEY uit wanneer je geen waarden in code doorgeeft. Zo kun je een bestaand script omzetten zonder het aan te passen: exporteer de twee variabelen en het script communiceert met deze API. Controleer of het script niet hard-coded een model zoals een GPT-naam gebruikt; vervang dit door uncensored.
curl voor een snelle test
Een eenvoudig HTTP-verzoek verwijdert elke andere variabele, dus het is de beste eerste controle. Het eerste commando lijst modellen op en bevestigt de sleutel. Het tweede verstuurt een chatverzoek.
export LLM_API_KEY="YOUR_KEY"
curl -s https://api.mimoapi.top/v1/models \
-H "Authorization: Bearer $LLM_API_KEY"
curl -s https://api.mimoapi.top/v1/chat/completions \
-H "Authorization: Bearer $LLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"ping"}],"max_tokens":20}' -i
De -i-flag geeft responsheaders weer. Zoek naar X-Request-Id (vermeld deze als je support contacteert), X-Balance-USD (je resterende tegoed) en de twee rate limit-headers, X-RateLimit-Limit-Requests en X-RateLimit-Limit-Concurrency. Voeg voor streaming "stream": true toe aan de body en -N aan curl zodat de uitvoer niet wordt gebufferd. De quickstart van vijf minuten behandelt streaming en function calling.
LangChain, chat-interfaces en andere tools
Externe tools gebruiken hun eigen labels, maar allemaal hebben ze dezelfde drie waarden nodig. Sommige patronen die je zult zien:
- LangChain (Python):
ChatOpenAI(model="uncensored", base_url="https://api.mimoapi.top/v1", api_key="YOUR_KEY"). Dezelfde klasse werkt voor elke OpenAI-compatibel server. - SillyTavern en vergelijkbare rollenspel-interfaces: kies een aangepaste of generieke OpenAI-compatibel chatbron, plak de base URL, voeg de sleutel toe en typ
uncensoredals modelnaam als de lijst niet automatisch wordt gevuld. - Open WebUI en andere zelfgehoste chat-UI's: voeg een OpenAI-compatibel verbinding toe in de instellingen, met dezelfde base URL en sleutel.
- Editor-plugins en scripts: zoek naar "custom OpenAI endpoint" of "override base URL" in de plugin-instellingen.
De menu-namen van elke tool veranderen tussen versies, dus vertrouw op het doel van het veld in plaats van het exacte label. Als een tool erop staat de sleutel te controleren tegen een vaste provider, is het niet compatibel met aangepaste endpoints en is een andere tool de oplossing.
Wanneer een tool een model-dropdown biedt, vult hij die meestal door GET /v1/models aan te roepen. Als de dropdown leeg blijft, typ dan de model ID handmatig. Als de tool onbekende modelnamen weigert, zoek dan naar een optie met het label "custom model".
Veelgemaakte configuratiefouten oplossen
Wanneer een verzoek mislukt, beperkt de statuscode en de exacte URL de oorzaak snel. Werk door deze lijst.
- Authenticatiefout. De sleutel ontbreekt, is afgekapt of heeft een spatie of een newline aan het einde. Plak hem opnieuw en zorg dat de header bestaat uit
Bearer, een spatie, dan de sleutel. - Not found. Het pad is verkeerd. Print de eind-URL die je client bouwt. Deze moet exact zijn
https://api.mimoapi.top/v1/chat/completions. Zoek naar een ontbrekende/v1, een verdubbeld pad of de verkeerde host. - Onbekend model. Een achtergebleven modelnaam van een andere provider. Stel het model in op
uncensored. - HTTP 429 met
rate_limitedofconcurrency. Je hebt meer dan 300 verzoeken per minuut of 8 gelijktijdig (60 en 2 op een trial key). Vertraag of zet verzoeken in een wachtrij. Een 429 met eenRetry-After: 5header betekent tijdelijke overbelasting; wacht vijf seconden en probeer opnieuw. - Verzoek te groot. De body-limiet is 8 MB en het contextvenster is 100.000 tokens voor prompt plus completion. Kort de geschiedenis in.
- Werkt in curl, faalt in de browser. De API direct aanroepen vanuit frontend-JavaScript legt je sleutel bloot aan elke bezoeker. Routeer verzoeken via je eigen server.
Plaats de sleutel nooit in een openbare repository of een client-side bundle. Sla deze op in een omgevingsvariabele en houd deze buiten screenshots en supporttickets.
Volgende stappen na het eerste succesvolle verzoek
Zodra de base URL werkt, zijn een paar instellingen het weten waard. Streaming over SSE wordt ingeschakeld met stream: true. Tool calling gebruikt tools en tool_choice, met resultaten teruggestuurd als role: "tool" berichten. JSON mode is response_format: {"type": "json_object"}. Sampling parameters zoals temperature, top_p, stop, seed en de penalties worden doorgegeven.
Financieel betaal je $0,15 per 1M input-tokens en $0,50 per 1M output-tokens van je prepaid tegoed; de prijzenpagina geeft de opwaardeerbedragen en bonussen weer. Het model is afgestemd om zonder inhoudelijke weigeringen te antwoorden voor legaal gebruik door volwassenen, en seksuele inhoud met minderjarigen is nooit toegestaan. Prompts worden niet gebruikt voor training.
