Die Taxy.io Answers API ermöglicht die Integration von KI-gestützten Rechts- und Steuerantworten in eigene Systeme. Alle Antworten werden direkt von großen Sprachmodellen generiert und als Streaming-Response zurückgegeben.
Noch kein API Key?
Registriere dich kostenlos und erhalte sofort deinen Key — 10 Anfragen/Tag im Free-Tier.
Jede Anfrage (außer GET /version) muss den API-Key als Bearer-Token im Authorization-Header enthalten. Keys beginnen immer mit sk-taxy-.
curl -X POST https://taxy-dashboard.vercel.app/api/v1/chat/message \ -H "Authorization: Bearer sk-taxy-xxxxxxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{"query": "Welche Kündigungsfristen gelten nach BGB?"}'
Anfragen werden pro API-Key und Tag begrenzt. Bei Überschreitung wird 429 Too Many Requests zurückgegeben.
Alle Fehler werden als JSON mit dem Feld error zurückgegeben.
{ "error": "Daily limit of 10 requests exceeded" }
/api/v1/chat/message
Stellt eine Frage und streamt die Antwort als SSE zurück. Erstellt automatisch eine neue Chat-Session. Ideal für einfache Einzelanfragen ohne Session-Management.
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| query | string | required | Die Rechtsfrage im Klartext (alternativ: message) |
curl -X POST https://taxy-dashboard.vercel.app/api/v1/chat/message \ -H "Authorization: Bearer sk-taxy-xxxx" \ -H "Content-Type: application/json" \ -d '{"query": "Welche Kündigungsfristen gelten nach § 622 BGB?"}'
import requests API_KEY = "sk-taxy-xxxx" BASE = "https://taxy-dashboard.vercel.app/api/v1" resp = requests.post( f"{BASE}/chat/message", headers={"Authorization": f"Bearer {API_KEY}"}, json={"query": "Welche Kündigungsfristen gelten nach § 622 BGB?"}, stream=True ) for line in resp.iter_lines(): if line.startswith(b"data: "): print(line[6:].decode())
const resp = await fetch("https://taxy-dashboard.vercel.app/api/v1/chat/message", { method: "POST", headers: { "Authorization": "Bearer sk-taxy-xxxx", "Content-Type": "application/json" }, body: JSON.stringify({ query: "Welche Kündigungsfristen gelten nach § 622 BGB?" }) }); const reader = resp.body.getReader(); const decoder = new TextDecoder(); while (true) { const { done, value } = await reader.read(); if (done) break; process.stdout.write(decoder.decode(value)); }
/api/v1/chat
Legt eine benannte Chat-Session an. Danach können Nachrichten mit POST /chat/{id}/message in dieser Session geführt werden. Für Multi-Turn-Gespräche mit Kontext.
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| name | string | optional | Name der Session. Default: "New Chat" |
| meta | object | optional | Beliebige Metadaten (flat JSON) |
curl -X POST https://taxy-dashboard.vercel.app/api/v1/chat \ -H "Authorization: Bearer sk-taxy-xxxx" \ -H "Content-Type: application/json" \ -d '{"name": "Mandant Müller – Arbeitsrecht"}' # Response: 201 Created { "id": "550e8400-e29b-41d4-a716-446655440000", "name": "Mandant Müller – Arbeitsrecht", "created_at": "2026-03-05T10:00:00Z" }
/api/v1/chat
Gibt alle Chat-Sessions des API-Keys zurück, absteigend nach letzter Aktivität.
curl https://taxy-dashboard.vercel.app/api/v1/chat \ -H "Authorization: Bearer sk-taxy-xxxx"
/api/v1/chat/{chat_id}
Gibt eine einzelne Chat-Session anhand ihrer ID zurück.
curl https://taxy-dashboard.vercel.app/api/v1/chat/550e8400-e29b-41d4-a716-446655440000 \ -H "Authorization: Bearer sk-taxy-xxxx"
/api/v1/chat/{chat_id}/messages
Gibt alle Nachrichten einer Session zurück, chronologisch aufsteigend.
[
{ "id": "...", "role": "user", "content": "Welche Fristen...", "created_at": "..." },
{ "id": "...", "role": "assistant", "content": "Gemäß § 622 BGB...", "created_at": "..." }
]
/api/v1/chat/messages/daily-limit
Zeigt die aktuelle Nutzung und das Tageslimit des API-Keys an.
{ "used": 3, "limit": 10, "remaining": 7 }
/api/v1/chat/{chat_id}/message/{message_id}/feedback
Bewertet eine Assistenten-Antwort als positiv oder negativ. Hilft bei der Qualitätsverbesserung.
curl -X PATCH https://taxy-dashboard.vercel.app/api/v1/chat/{chat_id}/message/{msg_id}/feedback \ -H "Authorization: Bearer sk-taxy-xxxx" \ -H "Content-Type: application/json" \ -d '{"feedback": "positive"}' # oder "negative"
/api/v1/chat/{chat_id}
Löscht eine Chat-Session inkl. aller Nachrichten unwiderruflich.
curl -X DELETE https://taxy-dashboard.vercel.app/api/v1/chat/550e8400-... \ -H "Authorization: Bearer sk-taxy-xxxx" # Response: {"deleted": true}
/api/v1/folders
Ordner dienen zur Organisation von Chat-Sessions, z.B. nach Mandant oder Rechtsgebiet.
curl -X POST https://taxy-dashboard.vercel.app/api/v1/folders \ -H "Authorization: Bearer sk-taxy-xxxx" \ -H "Content-Type: application/json" \ -d '{"name": "Mandant Müller"}'
/api/v1/folders
Gibt alle Ordner des API-Keys zurück. Mit /folders/with-chats werden die zugehörigen Chats mitgeliefert.