Passerelle mixgateway.io · Démarrage rapide
Vue d’ensemble
mixgateway.io expose une API HTTP compatible avec OpenAI pour accéder à plusieurs fournisseurs de modèles (DeepSeek, OpenAI, etc.) via un seul point d’entrée.
- URL de base :
https://api.mixgateway.io/v1 - Chat completions :
POST /chat/completions - Auth :
Authorization: Bearer {api_key} - Protocole : largement compatible avec OpenAI
chat/completions
Obtenir une clé API
- Inscrivez-vous et connectez-vous à la [console](/dashboard).
- Ouvrez Gestion des clés API et créez une clé.
- Copiez la chaîne
sk-...(ou le format de clé de votre passerelle). - Envoyez-la à chaque requête :
Authorization: Bearer {api_key}.
Sécurité : n’intégrez pas les clés dans des bundles front ou des dépôts publics. Utilisez la config serveur ou un gestionnaire de secrets.
Requête sans streaming
curl https://api.mixgateway.io/v1/chat/completions \
-H "Authorization: Bearer sk-xxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek:deepseek-chat",
"messages": [
{"role": "user", "content": "Hi, just reply with \"Hi\""}
],
"temperature": 0.7,
"max_tokens": 128,
"stream": false
}'
Exemple de réponse
{
"id": "1a9f9f27-ef53-4b0e-8849-465bf8270314",
"object": "chat.completion",
"created": 1772183892,
"model": "deepseek:deepseek-chat",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hi"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 8,
"completion_tokens": 1,
"total_tokens": 9
}
}
Le champ
modelutilise souventprovider:modelId(ex.deepseek:deepseek-chat). Les modèles disponibles figurent dans la console ou la doc du fournisseur.
Requête en streaming
curl https://api.mixgateway.io/v1/chat/completions \
-H "Authorization: Bearer sk-xxxx" \
-H "Content-Type: application/json" \
-N \
-d '{
"model": "deepseek:deepseek-chat",
"messages": [
{"role": "user", "content": "Introduce yourself in one sentence"}
],
"temperature": 0.7,
"max_tokens": 256,
"stream": true
}'
Exemples de lignes SSE :
data: {"id":"...","object":"chat.completion.chunk","choices":[{"delta":{"content":"Hi"}}], ...}
data: {"id":"...","object":"chat.completion.chunk","choices":[{"delta":{"content":", I'm a gateway assistant."}}], ...}
data: {"id":"...","object":"chat.completion.chunk","choices":[{"delta":{"content":""},"finish_reason":"stop"}], "usage":{"prompt_tokens":13,"completion_tokens":10,"total_tokens":23}}
Le dernier fragment peut contenir usage pour la facturation.
Exemples SDK
JavaScript (Node.js, fetch)
const resp = await fetch("https://api.mixgateway.io/v1/chat/completions", {
method: "POST",
headers: {
Authorization: "Bearer sk-xxxx",
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "deepseek:deepseek-chat",
messages: [{ role: "user", content: "Hi" }],
stream: false,
}),
});
const data = await resp.json();
console.log(data.choices[0].message.content);
Python (requests)
import requests
url = "https://api.mixgateway.io/v1/chat/completions"
headers = {
"Authorization": "Bearer sk-xxxx",
"Content-Type": "application/json",
}
json_data = {
"model": "deepseek:deepseek-chat",
"messages": [{"role": "user", "content": "Hi"}],
"stream": False,
}
resp = requests.post(url, headers=headers, json=json_data, timeout=30)
data = resp.json()
print(data["choices"][0]["message"]["content"])
Format des erreurs
{
"error": {
"message": "Incorrect API key provided. For details",
"type": "invalid_request_error",
"param": null,
"code": "invalid_api_key"
},
"request_id": "9f6b3bb8-9328-91ad-a5b7-1feed430211b"
}
Codes courants :
invalid_api_key— Clé absente, révoquée ou refusée.model_not_found— Valeurmodelindisponible sur cette passerelle.insufficient_quotaou erreurs de solde — Quota ou solde prépayé insuffisant.