Schnellstart
In drei Schritten zur ersten Antwort. LuNa spricht reines HTTP — jede Sprache funktioniert.
Unten Zugang anfragen — du bekommst einen Key wie luna_sk_…
Sende deine Nachricht per POST an /v1/chat mit dem Key im Header.
LuNa antwortet als JSON — der Text steht in reply.
Beispiel-Anfrage
Authentifizierung
Jede Anfrage braucht deinen geheimen Key im Authorization-Header als Bearer-Token.
Bewahre deinen Key auf dem Server auf. Schick ihn nie im Client-Code mit — jeder könnte ihn lesen.
Chat-Endpoint
Sende eine einzelne Nachricht und erhalte LuNas Antwort. Der ganze Vertrag passt in eine Tabelle.
Body-Parameter
| Feld | Typ | Beschreibung |
|---|---|---|
| messagerequired | string | Was du LuNa sagen möchtest. |
| model | string | Welche LuNa verwendet wird. Standard: luna-0.2. |
| temperature | number | 0–1. Niedriger = fokussiert, höher = kreativ. Standard 0.6. |
| stream | boolean | Tokens streamen, während sie entstehen. Standard false. |
Antwort
Ein vorhersehbares JSON-Objekt. Der Text, den du willst, steht in reply.
Streaming
Mit "stream": true liefert LuNa die Antwort als Server-Sent Events — Token für Token, sobald sie entstehen. Perfekt für ein Chat-Gefühl wie auf luna-chat.xyz.
Konversationen
Für mehrstufige Gespräche schickst du statt message ein messages-Array — die ganze bisherige Unterhaltung, LuNa antwortet auf den letzten Eintrag.
Tipp: Schick nur die letzten ~10 Nachrichten mit — das spart Tokens und reicht LuNa fast immer als Gedächtnis.
Modelle
Dieselben Modelle wie im Chat — wähle eines über das model-Feld.
Schnell & solide für alltägliche Fragen.
Ausgewogen — der empfohlene Standard.
Neueste Fähigkeiten, noch experimentell.
Fehler & Limits
Fehler kommen als JSON mit klarem code — keine Rätselraten. Bei 429 und 503 sagt dir retry_after (Sekunden), wann du es wieder versuchen kannst.
Fehlercodes
| Status | Code | Bedeutung |
|---|---|---|
| 400 | bad_request | Anfrage fehlerhaft — z. B. unbekannte Modell-ID oder fehlendes message-Feld. |
| 401 | invalid_token | API-Key fehlt, ist abgelaufen oder ungültig. |
| 429 | rate_limited | Rate-Limit erreicht (30 Anfragen/Minute) — warte retry_after Sekunden. |
| 503 | unavailable | LuNa-Server gerade nicht erreichbar — kurz warten und erneut versuchen. |
Rate-Limits
| Limit | Wert | Hinweis |
|---|---|---|
| Anfragen | 30 / Minute | Pro API-Key, über alle Modelle hinweg. |
| Gleichzeitig | 2 Streams | Parallele Streaming-Verbindungen pro Key. |
| Anfragegröße | Kontextfenster | 2K Tokens pro Anfrage (Modell-Blockgröße). Schick die letzten ~10 Nachrichten — das reicht fast immer. |
Ob gerade alles läuft, siehst du live auf der Status-Seite — inkl. Verfügbarkeit pro Modell. Die Preise pro Modell stehen auf der Preise-Seite.
Zugang erhalten
Wenn du einen LuNa-Zugangs-Token hast, kannst du sofort API-Keys erstellen — kostenlos, ohne Warten. Melde dich an, öffne die Key-Verwaltung und erzeuge einen Key wie luna_sk_…
Noch keinen Token? LuNa ist im privaten Zugang — frag nach einem.