Beaucoup de débutants bloquent à trois étapes avec l'API OpenAI : ils ne savent pas où créer la clé, comment recharger, ni quelle Base URL renseigner une fois la clé obtenue. Cet article parcourt le processus complet avec ZSQH AI Gateway et fournit trois exemples d'appel : Python, Node.js et curl.
Cet article traite de la facturation API à l'usage, pas de l'abonnement ChatGPT Plus. Ce sont deux produits distincts : Plus est l'abonnement web/App, l'API est l'interface destinée aux appels programmatiques.
1. Créer un compte ZSQH
Ouvrez ZSQH AI Gateway, cliquez sur l'inscription, validez l'e-mail et connectez-vous.
Après inscription, vous arrivez dans la console. Trois espaces sont principalement utilisés :
- Clés API : créer et supprimer des clés.
- Portefeuille / Recharge : consulter le solde et recharger.
- Journaux d'usage : voir pour chaque appel le modèle, les tokens et le coût.
2. Créer une clé API
Accédez à la page « Clés API » et cliquez sur nouveau :
- Nom : explicite, par exemple
openai-api-testouproduction-backend. - Quota : fixez d'abord un plafond bas, puis ajustez après validation.
- Expiration : une clé de test peut être réglée à 7 ou 30 jours.
- Copiez la clé après création. Elle commence généralement par
sk-et n'est affichée en entier qu'une fois.
N'envoyez pas la clé dans un groupe, une capture d'écran ou un dépôt Git. En cas de suspicion de fuite, supprimez l'ancienne clé et créez-en une nouvelle.
3. Recharger
Sur la page « Portefeuille », choisissez un mode de recharge et suivez les instructions de paiement. Une fois crédité, le solde apparaît dans la console.
Pour un simple test, rechargez un petit montant. Les prix unitaires varient fortement selon les modèles ; consultez la page Tarifs des modèles. Commencez par un petit modèle économique, puis passez au modèle principal.
4. Quelle Base URL renseigner
L'adresse de l'interface compatible OpenAI de ZSQH est :
https://ai.zhongshangqihang.com/v1
Remarques :
- Les outils compatibles OpenAI comme le SDK OpenAI, Cursor, Chatbox, LobeChat ou Dify renseignent généralement
https://ai.zhongshangqihang.com/v1. - Si votre outil demande « API Base », « Base URL » ou « Endpoint », utilisez la même adresse.
- N'oubliez pas
/v1et n'ajoutez pas/chat/completionsà la fin : le client l'ajoute lui-même.
5. Tester avec curl
Placez d'abord la clé dans une variable d'environnement pour éviter qu'elle apparaisse dans l'historique :
export OPENAI_API_KEY="sk-votre-clé"
export OPENAI_BASE_URL="https://ai.zhongshangqihang.com/v1"
Puis appelez :
curl "$OPENAI_BASE_URL/chat/completions" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5",
"messages": [
{"role": "user", "content": "Explique en une phrase ce qu'est une passerelle API"}
]
}'
Si le JSON renvoyé contient choices, la clé et la Base URL fonctionnent. Le nom du modèle est celui affiché sur la page Tarifs des modèles ; un nom erroné renvoie généralement model not found.
6. Appel avec Python
Installez le SDK OpenAI :
pip install openai
Exemple :
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["OPENAI_API_KEY"],
base_url="https://ai.zhongshangqihang.com/v1",
)
response = client.chat.completions.create(
model="gpt-5",
messages=[
{"role": "system", "content": "Tu es un assistant technique concis."},
{"role": "user", "content": "Explique ce qu'est un token"},
],
)
print(response.choices[0].message.content)
7. Appel avec Node.js
npm install openai
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
baseURL: "https://ai.zhongshangqihang.com/v1",
});
const response = await client.chat.completions.create({
model: "gpt-5",
messages: [{ role: "user", content: "Écris une fonction JavaScript de debounce" }],
});
console.log(response.choices[0].message.content);
8. Erreurs courantes
| Erreur | Cause | Traitement |
|---|---|---|
401 Unauthorized |
Clé erronée, supprimée ou Bearer absent | Recopier la clé, vérifier l'en-tête |
404 Not Found |
Base URL sans /v1 ou chemin dupliqué |
Ne renseigner que jusqu'à /v1 |
model not found |
Nom de modèle incorrect ou non ouvert | Copier le nom depuis la page de tarifs |
insufficient quota |
Solde insuffisant | Recharger puis réessayer |
429 |
Concurrence ou fréquence dépassée | Réduire la concurrence, réessayer plus tard |
| Contenu vide | Paramètre ou modèle non pris en charge | Vérifier le format de messages et les capacités du modèle |
9. Sécurité et coûts
- Une clé par personne : ne partagez pas une clé dans l'équipe, sinon tout incident devient impossible à localiser.
- Fixez des quotas : plafond bas pour les clés de test, budget pour la production.
- Pas de clé dans le frontend : une clé dans un navigateur est forcément visible ; les appels frontend doivent passer par votre propre backend.
- Variables d'environnement ou gestionnaire de secrets en production : pas de clé dans le code ni dans un Dockerfile.
- Rotation régulière : faites tourner les clés importantes tous les 90 jours.
- Consultez les journaux d'usage : ventilez par modèle, projet et membre pour repérer les consommations anormales.
10. Différence entre API et ChatGPT Plus
| Critère | ChatGPT Plus | API OpenAI |
|---|---|---|
| Mode d'utilisation | Chat web/App | Appels programmatiques |
| Facturation | Abonnement fixe | À l'usage, par token |
| Public | Usage personnel quotidien | Développeurs, produits, équipes |
| Quota | Limité par l'offre | Solde rechargé |
| Intégration produit | Non | Oui |
Pour discuter seul, l'abonnement est plus simple ; pour intégrer le modèle dans un produit, un script, un agent ou un outil, l'API est plus adaptée.
Questions fréquentes
Peut-on revoir la clé après sa création ?
Elle n'est généralement affichée en entier qu'à la création. Sans sauvegarde, il faut la supprimer et la recréer.
Une clé peut-elle appeler plusieurs modèles ?
Oui. La clé est un justificatif d'identité ; le modèle est précisé dans les paramètres de la requête. Les modèles disponibles figurent sur la page de tarifs.
Pourquoi l'appel réussit-il sans que le solde change ?
Un délai est possible, ou bien un quota gratuit ou un cache a été utilisé. Les journaux d'usage et la facture font foi.
Peut-on partager une clé avec un collègue ?
Ce n'est pas recommandé. Créez une clé distincte par collègue pour faciliter le plafonnement, l'audit et la désactivation.
Pour aller plus loin
Si vous n'avez pas encore de compte, inscrivez-vous sur ZSQH AI Gateway, créez une clé de test et passez une première requête avec curl. Une fois validé, consultez la page Tarifs des modèles pour choisir votre modèle principal.
Articles liés :
