OpenRouter : Comment j'utilise une seule API pour accéder à 340+ modèles IA
Le monde de l'IA change trop vite pour s'enfermer avec un seul fournisseur. OpenRouter est une API unifiée qui permet de switcher entre Claude, GPT et Gemini en changeant une seule ligne de code. Voici mon guide complet pour l'implémenter.

TL;DR : Gérer plusieurs clés API (OpenAI, Anthropic, Google) est un problème complexe et coûteux en temps pour un développeur. OpenRouter résout cela. C'est un proxy API unifié qui route tes requêtes vers plus de 340 modèles IA avec une seule clé et un seul compte de facturation. Je l'utilise sur mes projets pour éviter les pannes de serveurs et tester facilement de nouveaux modèles sans recoder mon backend.
Les 3 points clés (Key Takeaways)
- • Code agnostique : Tu changes de modèle IA (GPT vers Claude) en modifiant un seul mot dans ton code.
- • Résilience technique : En cas de panne d'un fournisseur, OpenRouter bascule automatiquement sur un hébergeur alternatif.
- • Coût transparent : OpenRouter facture le prix coûtant de l'API (pas de marge sur l'inférence), avec des frais fixes de 5.5% à l'achat de crédits.
Ma Stack de Développement
Voir tous les outilsJe n'utilise pas ces outils parce qu'ils sont à la mode, mais parce qu'ils me font gagner des heures chaque semaine.
L'IDE nouvelle génération avec IA intégrée
Backend-as-a-Service open-source
Déploiement optimisé pour Next.js
Certains liens sont des liens affiliés. Je ne recommande que des outils que j'utilise réellement.
OpenRouter est une interface de programmation (API) unifiée qui agit comme un routeur intermédiaire entre ton code et plus de 340 modèles d'intelligence artificielle (OpenAI, Anthropic, Meta, Google).
Petite précision d'honnêteté : OpenRouter affiche "400+" sur sa page d'accueil. J'ai interrogé son API le 17 juillet 2026, elle renvoie 344 modèles réellement appelables. C'est ce chiffre-là que j'utilise.
Si tu as déjà codé une application qui intègre de l'IA, tu connais le problème. Tu t'inscris sur OpenAI. Puis chez Anthropic pour tester Claude. Puis chez Google pour Gemini. Tu te retrouves avec trois flux d'authentification, trois tableaux de bord de facturation, et un code source qui devient un empilement de SDK différents. Chaque fois qu'un nouveau modèle sort, tu dois tout recommencer.
Récemment, lors d'une panne majeure des serveurs d'Anthropic (suite à un afflux d'utilisateurs quittant ChatGPT), des milliers de développeurs se sont retrouvés bloqués. Leur application était codée en dur pour utiliser l'API Claude.
C'est exactement ce que résout OpenRouter. C'est l'outil que j'utilise pour mes applications. Un seul point d'entrée. Une seule facturation.
1. Ce que fait vraiment OpenRouter (Sous le capot)
OpenRouter n'est pas un modèle d'IA. C'est un proxy. Tu envoies ta requête à OpenRouter, il la transmet au fournisseur le plus adapté, et te renvoie la réponse.
Il fait plus que transférer des données :
- Routage avec repli automatique (Fallbacks) : Si les serveurs d'OpenAI sont en panne, OpenRouter redirige automatiquement ta requête vers un autre hébergeur qui propose le même modèle. Ton application reste en ligne.
- Optimisation des coûts : Si un modèle open-source est disponible chez plusieurs hébergeurs (Together AI, Fireworks, Groq), tu peux forcer OpenRouter à utiliser le moins cher en ajoutant le suffixe
:floorà ta requête. - Optimisation de la vitesse : Si le temps de réponse est critique pour ton application, l'ajout du suffixe
:nitrosélectionne l'hébergeur le plus rapide du marché à l'instant T. - Assurance Zéro Échec : Tu ne paies que pour les requêtes qui aboutissent. Si une erreur survient au milieu de la génération, aucun crédit n'est décompté.
D'après mes propres tests sur les logs de ResumeRank, utiliser les requêtes de repli d'OpenRouter a divisé les erreurs serveur par trois lors des heures de pointe.
2. Le modèle économique : Combien ça coûte ?
La facturation est prépayée. Tu achètes des crédits par carte bancaire, et ils sont déduits à chaque requête.
- Prix des tokens : OpenRouter applique les tarifs bruts des fournisseurs. Il n'y a aucune marge sur le coût de l'inférence. Si Claude Sonnet 5 coûte 2$ par million de tokens en entrée chez Anthropic, il coûte 2$ chez OpenRouter.
- Les frais d'OpenRouter : ils se rémunèrent uniquement au moment où tu achètes tes crédits. 5,5% par carte bancaire, avec un minimum de 0,80$ par transaction. 5% en cryptomonnaie. C'est tout, il n'y a pas d'abonnement.
- Modèles gratuits : une vingtaine de modèles sont proposés gratuitement. La limite dépend de ce que tu as déjà dépensé : 50 requêtes par jour si tu as acheté moins de 10$ de crédits au total, 1000 par jour au-delà. Dans les deux cas, tu es plafonné à 20 requêtes par minute.
Un détail qui compte quand tu déposes de petites sommes : le minimum de 0,80$ sur carte fait que recharger 5$ te coûte en réalité 16% de frais, alors que recharger 50$ te ramène à 5,5%. Autant recharger par tranches correctes.
La question est de savoir si payer 5,5% de frais justifie la fiabilité apportée. Pour un Solo Builder, ne pas avoir à gérer la complexité de multiples facturations justifie largement cette commission.
| Modèle | Entrée / M tokens | Sortie / M tokens |
|---|---|---|
| anthropic/claude-sonnet-5 | 2$ | 10$ |
| anthropic/claude-sonnet-4.5 | 3$ | 15$ |
| openai/gpt-5.2 | 1,75$ | 14$ |
| qwen/qwen3-coder:free | 0$ | 0$ |
Tarifs relevés sur l'API OpenRouter le 17 juillet 2026. Claude Sonnet 5 est à un prix de lancement (2$/10$) jusqu'au 31 août 2026, il repassera ensuite à 3$/15$.
Tu remarqueras que je parle en dollars et pas en euros. C'est volontaire : OpenRouter facture réellement en USD, tu déposes des dollars sur ton compte. Te donner une conversion en euros serait joli mais faux.
3. Tutoriel : Implémenter OpenRouter en 5 minutes
L'avantage majeur d'OpenRouter est sa compatibilité avec l'API d'OpenAI. Si ton code utilise déjà le SDK OpenAI, l'intégration est triviale.
Étape 1 : Créer un compte Rends-toi sur openrouter.ai et inscris-toi.
Étape 2 : Ajouter des crédits Dépose une petite somme (ex: 10$) pour débloquer les limites de requêtes et commencer à tester.
Étape 3 : Générer la clé API Crée une clé API depuis ton tableau de bord. Tu peux définir une limite de dépense par clé, une bonne pratique pour sécuriser ton budget.
Étape 4 : Adapter ton code
Voici à quoi ressemble le code en Python avec le SDK OpenAI standard :
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="TA_CLE_OPENROUTER",
)
response = client.chat.completions.create(
model="anthropic/claude-sonnet-5",
messages=[
{"role": "user", "content": "Explique-moi le routage API."}
],
)
print(response.choices[0].message.content)
Ce qui a changé :
- L'URL de base (
base_url) pointe vers OpenRouter. - La clé API est celle d'OpenRouter.
- Le paramètre
modelprécise le fournisseur et le nom du modèle (icianthropic/claude-sonnet-5).
Tu veux passer sur GPT ? Modifie model par openai/gpt-5.2. Tout le reste de ton code reste intact. C'est exactement là que se trouve la valeur d'OpenRouter : un seul mot change, jamais l'architecture.
4. Les variantes de modèles
Tu peux ajouter un suffixe à l'identifiant du modèle pour changer son comportement sans toucher à la logique de ton application :
:freeroute vers la version gratuite d'un modèle (pratique pour les tests locaux).:nitroroute vers le fournisseur le plus rapide. C'est un raccourci pourprovider.sort: "throughput".:floorroute vers le fournisseur le moins cher. Raccourci pourprovider.sort: "price".:onlineconnecte le modèle à internet. Ça marche, mais c'est un raccourci basique du pluginweb. Dès que tu veux régler quoi que ce soit (le moteur de recherche, le filtrage par domaine, le nombre de résultats), OpenRouter recommande de passer directement par{"plugins": [{"id": "web"}]}.
Utiliser qwen/qwen3-coder:free te permet d'expérimenter gratuitement pendant ton développement, puis de basculer sur un modèle payant quand tu déploies. Attention quand même : la liste des modèles gratuits tourne vite. Un modèle gratuit aujourd'hui peut devenir payant dans trois mois. Ne construis jamais ta production dessus.
Le piège du suffixe :thinking
Il existe aussi un suffixe :thinking que tu verras traîner dans pas mal de tutos. Il fonctionne encore sur certaines familles de modèles, comme deepseek/deepseek-r1:thinking.
Mais ne l'utilise pas sur les modèles Claude actuels. Depuis Claude Sonnet 5 et Opus 4.7, le raisonnement est passé en mode adaptatif : les anciens paramètres sont acceptés par l'API mais silencieusement ignorés. Tu crois piloter le raisonnement, il ne se passe rien. Le contrôle se fait désormais via l'objet reasoning dans le corps de la requête, combiné à verbosity :
response = client.chat.completions.create(
model="anthropic/claude-sonnet-5",
messages=[{"role": "user", "content": "Analyse cette architecture."}],
extra_body={
"reasoning": {"enabled": True},
"verbosity": "high", # low | medium | high | xhigh | max
},
)
C'est typiquement le genre de détail qui te fait perdre deux heures : ton code ne plante pas, il fait juste autre chose que ce que tu crois.
5. Quand utiliser OpenRouter (et quand l'éviter)
OpenRouter est un choix technique fort qui présente des avantages et des limites.
Utilise OpenRouter pour :
- Le développement d'un produit nécessitant une fiabilité maximale.
- Le test rapide de différents modèles sans multiplier les abonnements.
- L'optimisation des coûts de serveur sur des modèles open-source.
- La centralisation de la facturation IA.
Évite OpenRouter pour :
- L'utilisation de fonctionnalités ultra-spécifiques exclusives à un SDK (certains paramètres d'OpenAI ne sont pas parfaitement pris en charge).
- L'exploitation de tarifs d'entreprise négociés directement avec un fournisseur (même si OpenRouter propose une fonction Bring Your Own Key).
- Les architectures reposant fortement sur l'Assistant API d'OpenAI, qui a une structure différente des simples requêtes de chat.
FAQ
Est-ce que OpenRouter est compatible avec mon code actuel ?
Quasiment. OpenRouter se présente comme un remplaçant direct de l'API OpenAI, et dans 95% des cas tu changes juste l'URL de base et la clé. Mais sa propre documentation technique est plus prudente que son marketing : les schémas sont "très similaires, avec quelques petites différences". Le piège à connaître : les paramètres non supportés par le modèle que tu as choisi sont ignorés silencieusement, sans lever d'erreur. Par exemple logit_bias sur un modèle non-OpenAI, ou top_k sur un modèle OpenAI. Ton code tourne, mais pas comme tu crois.
Est-ce que mes données sont utilisées pour entraîner les modèles ?
Attention, il y a deux niveaux à ne pas confondre, et c'est là que beaucoup se trompent.
OpenRouter en tant que plateforme ne journalise pas tes prompts ni les réponses par défaut, même en cas d'erreur. Tu peux accepter la journalisation en échange d'une réduction de 1%, mais c'est un choix explicite de ta part.
Les fournisseurs tiers vers qui OpenRouter route tes requêtes, eux, appliquent chacun leur propre politique de rétention. Le fait qu'OpenRouter ne garde rien ne veut donc pas dire que personne ne garde rien. Pour garantir qu'aucun fournisseur ne conserve tes données, tu dois activer le ZDR (Zero Data Retention), qui restreint le routage aux seuls hébergeurs certifiés. Ça se règle au niveau du compte, par groupe de modèles, ou requête par requête avec "provider": {"zdr": true}.
Si tu traites des données utilisateurs dans ton app, ce réglage n'est pas optionnel.
Quel est le modèle le moins cher sur OpenRouter ?
Les prix varient quotidiennement. Pour obtenir automatiquement le tarif le plus bas sur un modèle donné, ajoute le suffixe :floor au nom du modèle dans ta requête. L'API routera l'appel vers l'hébergeur le moins cher à cet instant précis.
Est-ce que je paie si une requête échoue ?
Non, et c'est activé par défaut sans rien configurer. C'est l'assurance zéro échec : si la réponse contient zéro token de sortie et un finish_reason vide, aucun crédit n'est débité, même si le fournisseur sous-jacent facture le traitement de ton prompt. En pratique, quelques cas limites remontent sur les forums (des sorties partielles facturées malgré une erreur), donc considère ça comme très fiable plutôt que comme une garantie absolue.
Conclusion : L'agilité comme protection
L'écosystème de l'intelligence artificielle évolue rapidement. Un modèle performant aujourd'hui sera obsolète dans trois mois. Les prix baissent, les temps de réponse s'améliorent.
Lier toute l'architecture de ton application à un seul fournisseur est un pari risqué. L'approche la plus pragmatique est de découpler ton code de l'hébergeur. OpenRouter te permet de changer de moteur IA avec un seul mot, d'obtenir les meilleurs prix automatiquement et de rester en ligne quand les serveurs des géants lâchent. C'est une assurance technique pour tout développeur solo.
Tu construis avec l'IA en solo ?
Chaque semaine, mes retours concrets sur la construction de produits en solo avec l'IA. Stack, coûts réels et pièges rencontrés compris.
Rejoindre la newsletter →
📚 Pour aller plus loin
- Guide Cursor 2026 - L'IDE IA avec lequel je construis mes projets
- Guide Apify 2026 - Scraper des données web facilement
- Voir tous mes outils recommandés - La stack complète du Solo Builder
Certains liens vers des outils peuvent être affiliés. Je ne recommande que ce que j'utilise réellement pour construire mes projets.
À très vite,
Guillaume 👋