Snelstart
- Create an account in the console and copy the API key — it is shown once.
- Point any OpenAI-compatible client at
https://api.llmeu.com/v1. - Call
llmeu-autoand read thellmeublock in the response.
cURL
curl https://api.llmeu.com/v1/chat/completions \
-H "Authorization: Bearer $LLMEU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "llmeu-auto",
"messages": [{"role": "user", "content": "Say hello from EU hosting."}],
"llmeu": {"residency": "eu-hosted", "task": "general"}
}'
Python
from openai import OpenAI
client = OpenAI(base_url="https://api.llmeu.com/v1", api_key="llmeu_live_xxxxxxxx.your-secret")
resp = client.chat.completions.create(
model="llmeu-auto",
messages=[{"role": "user", "content": "Say hello from EU hosting."}],
)
print(resp.choices[0].message.content)
print(resp.llmeu.inference_region, resp.llmeu.trace_id)
JavaScript
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.llmeu.com/v1", apiKey: process.env.LLMEU_API_KEY });
const resp = await client.chat.completions.create({
model: "llmeu-auto",
messages: [{ role: "user", content: "Say hello from EU hosting." }],
});
console.log(resp.choices[0].message.content);
console.log(resp.llmeu.inference_region);
API-referentie
| Endpoint | Method | Notes |
|---|---|---|
| /v1/chat/completions | POST | OpenAI-compatible, streaming and non-streaming |
| /v1/models | GET | Only models this key may actually call |
| /v1/models/{id} | GET | One model, including its hosting state |
| /v1/embeddings | POST | Requires an embedding model to be hosted |
| /v1/completions | POST | Not offered: returns 501 by design |
| /platform/v1/* | — | Keys, traces, usage, policies |
| /healthz | GET | Liveness |
| /readyz | GET | Readiness; fails if a first-party endpoint is down |
Bewijs en verificatie
Every response carries a llmeu block: trace_id, model_used,
inference_region, sovereignty_class, route_reason and the retention
that applied. Fetch the full row with GET /platform/v1/traces/{'{id}'}.
Deze deployment kan mock-inferentie uitvoeren: een antwoord kan van een plaatsvervangend model komen in plaats van het model dat in het verzoek wordt genoemd. Wanneer de mockmodus aan staat, vermelden de console en de trace dat, en worden er geen tokenkosten in rekening gebracht.