API Referenz
Vollständige technische Dokumentation der Vantero API.
Alle API-Anfragen erfordern einen gültigen API-Key im Authorization-Header.
Authorization: Bearer YOUR_API_KEYIdempotency-Key: req_123 (optional, POST only)
X-End-User-Id: user_42 (optional)
X-Project-Id: adbase-main (optional)
X-Session-Id: sess_abc (optional)
X-Request-Id: 2fbd62fe-... (response header, always set)/v1/modelsReturns models available for the current API key./v1/chat/completionsErstellt eine Chat-Completion. Unterstützt Streaming./v1/filesUpload a file (multipart/form-data)./v1/audio/transcriptionsTranscribe audio files (multipart/form-data)./v1/files/{file_id}Read file metadata and processing status./v1/files/{file_id}Delete file metadata and storage object./v1/files/{file_id}/extract?async=true|falseStart or run extraction for one file./v1/file-jobs/{job_id}Read extraction job status/result.| Parameter | Typ | Pflicht | Default | Beschreibung |
|---|---|---|---|---|
| model | string | Pflicht | - | Model-ID oder Alias (z.B. 'mistral-small', 'claude-sonnet') |
| messages | array | Pflicht | - | Array von Message-Objekten mit role und content |
| stream | boolean | false | Aktiviert Server-Sent Events für Echtzeit-Streaming | |
| stream_options | object | null | Optionale Streaming-Einstellungen wie include_usage für einen finalen Usage-Chunk | |
| temperature | number | 0.7 | Kreativität der Antworten (0.0-2.0) | |
| top_p | number | 1.0 | Nucleus Sampling (0.0-1.0) | |
| max_tokens | integer | 4096 | Maximale Anzahl Output-Tokens | |
| frequency_penalty | number | 0 | Strafe für häufig verwendete Tokens (-2.0 bis 2.0) | |
| presence_penalty | number | 0 | Strafe für bereits verwendete Tokens (-2.0 bis 2.0) | |
| stop | string | array | null | Sequenz(en), bei denen die Generierung stoppt | |
| response_format | object | null | Erzwingt JSON-Ausgabe (type: 'json_object') | |
| tools | array | null | Verfügbare Funktionen/Tools für Function Calling | |
| tool_choice | string | object | auto | Wie Tools verwendet werden sollen (auto, required, none) | |
| functions | array | null | Legacy-Funktionsdefinitionen (OpenAI-Kompatibilitätsmodus) | |
| function_call | string | object | auto | Legacy-Verhalten für Funktionsaufrufe (auto, none oder benannte Funktion) |
Jede Nachricht hat eine Rolle und einen Inhalt:
{
"messages": [
{ "role": "system", "content": "You are a helpful assistant." },
{
"role": "user",
"content": [
{ "type": "text", "text": "Summarize this file" },
{ "type": "file_ref", "file_id": "file_abc123" }
]
},
{ "role": "assistant", "content": "I don't have access to real-time weather data." },
{ "role": "user", "content": "I understand, thank you!" }
]
}{
"model": "gpt-4o",
"messages": [
{ "role": "system", "content": "You are a helpful assistant." },
{ "role": "user", "content": "Hello!" }
],
"temperature": 0.7,
"max_tokens": 1000
}Erfolgreiche Anfragen geben ein Chat-Completion-Objekt zurück:
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1699000000,
"model": "gpt-4o",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 10,
"total_tokens": 30
}
}finish_reason kann sein:
stop- Natürliches Endelength- max_tokens erreichtcontent_filter- Inhalt gefilterttool_calls- Das Modell hat Tool-Aufrufe zurückgegebenfunction_call- Das Modell hat einen Legacy-Funktionsaufruf zurückgegeben
Mit stream: true erhalten Sie Antworten in Echtzeit als Server-Sent Events (SSE). Mit stream_options.include_usage kann der finale Chunk zusätzlich Usage-Daten enthalten.
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1699000000,"model":"gpt-4o","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1699000000,"model":"gpt-4o","choices":[{"index":0,"delta":{"content":"Hello"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1699000000,"model":"gpt-4o","choices":[{"index":0,"delta":{"content":"!"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1699000000,"model":"gpt-4o","choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"usage":{"prompt_tokens":20,"completion_tokens":10,"total_tokens":30}}
data: [DONE]Alle Modelle können über ihren Alias oder die vollständige ID angesprochen werden.
| Alias | Modell | Zone | Max Output | Features |
|---|---|---|---|---|
| codellama | CodeLlama 13B | DE | 4,096 | Code |
| mistral-small | Mistral Small 24B | DE | 4,096 | Bild |
| gemma-3-27b | Gemma 3 27B | DE | 4,096 | Bild |
| llama-3.3-70b | Llama 3.3 70B | DE | 4,096 | |
| gpt-oss | GPT-OSS 120B | DE | 4,096 | ReasoningBild |
| llama-405b | Llama 3.1 405B | DE | 8,192 | Reasoning |
| codestral | Codestral | FR | 4,096 | Code |
| magistral-small | Magistral Small | FR | 4,096 | ReasoningWebBild |
| mistral-medium | Mistral Medium 3 | FR | 4,096 | WebBild |
| magistral-medium | Magistral Medium | FR | 4,096 | ReasoningWebBild |
| mistral-large | Mistral Large 2.1 | FR | 4,096 | ReasoningWebBild |
| gpt-5-nano | ChatGPT-5 Nano | EU | 4,096 | Bild |
| gpt-5-mini | ChatGPT-5 Mini | EU | 4,096 | Bild |
| gpt-4.1 | ChatGPT-4.1 | EU | 8,192 | ReasoningBild |
| gpt-5 | ChatGPT-5 | EU | 8,192 | ReasoningBild |
| gemini-flash-lite | Gemini 2.5 Flash-Lite | EU | 8,192 | WebBild |
| gemini-flash | Gemini 2.5 Flash | EU | 8,192 | WebBild |
| gemini-pro | Gemini 2.5 Pro | EU | 8,192 | ReasoningWebBild |
| claude-haiku | Claude Haiku 4.5 | EU | 4,096 | |
| claude-sonnet | Claude Sonnet 4.5 | EU | 8,192 | Reasoning |
| claude-opus | Claude Opus 4.5 | EU | 8,192 | Reasoning |
| nova-micro | Nova Micro | EU | 4,096 | |
| nova-lite | Nova Lite | EU | 4,096 | Bild |
| nova-pro | Nova Pro | EU | 4,096 | ReasoningBild |
| deepseek-v3 | DeepSeek V3.1 | EU | 8,192 | Reasoning |
| qwen3-next | Qwen3 Next 80B | EU | 8,192 | |
| qwen3-vl | Qwen3 VL 235B | EU | 8,192 | ReasoningBild |
| qwen3-coder | Qwen3 Coder 480B | EU | 8,192 | CodeReasoning |
| sonar | Sonar | US | 4,096 | Web |
| sonar-reasoning | Sonar Reasoning Pro | US | 4,096 | WebReasoning |
| sonar-research | Sonar Deep Research | US | 4,096 | WebReasoning |
| sonar-pro | Sonar Pro | US | 4,096 | WebReasoning |
DE 100% Deutschland (IONOS)
FR Frankreich mit Zero Retention (Mistral)
EU EU Data Boundary (Azure/AWS/GCP)
US US mit GDPR-Konformität (Perplexity)
Rate Limits werden pro API-Key angewendet und können in der Plattform konfiguriert werden.
Die folgenden Header werden in jeder Antwort mitgesendet:
X-RateLimit-Limit- Maximale Anfragen im aktuellen ZeitfensterX-RateLimit-Remaining- Verbleibende Anfragen im aktuellen ZeitfensterX-RateLimit-Reset- Unix-Timestamp, wann das Limit zurückgesetzt wird
| HTTP | Code | Beschreibung | Lösung |
|---|---|---|---|
| 400 | invalid_request_error | Ungültige Anfrage - Parameter fehlen oder sind falsch | Überprüfen Sie die Request-Parameter |
| 401 | invalid_api_key | API-Key ungültig oder fehlt | Überprüfen Sie Ihren API-Key |
| 404 | model_not_found | Modell nicht gefunden | Prüfen Sie den Modell-Alias |
| 429 | rate_limit_exceeded | Rate Limit überschritten | Warten Sie und versuchen Sie es erneut |
| 429 | insufficient_quota | Budget/Quota aufgebraucht | Budget erhöhen oder warten |
| 500 | server_error | Interner Server-Fehler | Versuchen Sie es später erneut |
| 503 | model_unavailable | Das angeforderte Modell ist vorübergehend nicht verfügbar. | Kurz warten und erneut versuchen oder auf ein anderes erlaubtes Modell wechseln. |