Referenza API

One base URL, one bearer token, two surfaces.

Chat completions

Standard fields are accepted: model, messages, temperature, top_p, max_tokens, stream, stop, presence_penalty, frequency_penalty, user, tools, tool_choice, response_format, seed.

LLM EU extensions

A namespaced llmeu object in the request body. Official SDKs ignore unknown fields, so adding it never breaks a client.

"llmeu": {
  "residency": "eu-hosted" | "eu-owned" | "de" | "any",
  "task": "general" | "coding" | "reasoning" | "translation" | "vision" | "cheap" | "legal-draft" | "rag",
  "retention": "zero",
  "data_class": "public" | "internal" | "confidential" | "restricted",
  "policy_id": "uuid",
  "max_usd_per_1m": 0.5,
  "allow_partners": false
}

Only zero retention is implemented. Policies can store 24h, 7d or 30d choices; this does not enable storage. A request exceeding the policy first returns 403 retention_exceeds_policy; an allowed effective retention other than zero returns 501 retention_not_implemented.

Response

Standard OpenAI shape, plus:

{
  "choices": [...],
  "usage": {...},
  "llmeu": {
    "trace_id": "…",
    "model_used": "…",
    "model_version": "…",
    "provider": "…",
    "endpoint_id": "…",
    "inference_region": "de-fra",
    "sovereignty_class": "eu_owned_eu_operated",
    "route_reason": "auto routing for task \"coding\" + residency eu-hosted + …",
    "policy_id": "…",
    "retention": "zero",
    "cost_estimate_usd": 0.000123
  }
}

Żbalji

The complete code table, with the status, the type and what to do about each one, is at Żbalji — rendered from the same source the API uses.

Endpoints

Every mounted route, with the credential it needs, is at Endpoints.

GET    https://api.llmeu.com/platform/v1/me
GET    https://api.llmeu.com/platform/v1/api-keys
POST   https://api.llmeu.com/platform/v1/api-keys
DELETE https://api.llmeu.com/platform/v1/api-keys/{id}
GET    https://api.llmeu.com/platform/v1/traces?limit=50
GET    https://api.llmeu.com/platform/v1/traces/{id}
GET    https://api.llmeu.com/platform/v1/usage?days=30
GET    https://api.llmeu.com/platform/v1/policies
POST   https://api.llmeu.com/platform/v1/policies
PUT    https://api.llmeu.com/platform/v1/policies/{id}