API de prix et badge de prix
Deux adresses vous donnent les prix actuels d'UberLLM sans clé API ni compte :
- Prix au format JSON :
GET https://api.uberllm.dev/api/v1/public/prices - Un badge de prix :
https://api.uberllm.dev/api/v1/public/badge/<model-id>.svg
Les deux affichent le même prix que la page du modèle sur uberllm.dev : le prix du vendeur le plus bas actuellement. Les prix sont relus toutes les 30 secondes.
Prix en JSON
curl "https://api.uberllm.dev/api/v1/public/prices?model=deepseek/deepseek-v4-flash"
{
"updated_at": "2026-11-13T06:40:12Z",
"models": [
{
"id": "deepseek/deepseek-v4-flash",
"name": "DeepSeek V4 Flash",
"type": "text",
"input_per_m": 0.0091,
"output_per_m": 0.0182,
"list_input_per_m": 0.09,
"list_output_per_m": 0.18,
"discount_pct": 89.9,
"unit": "1M tokens",
"price_text": "$0.0091/M in · $0.0182/M out",
"page_url": "https://uberllm.dev/models/deepseek/deepseek-v4-flash"
}
]
}
Les chiffres ci-dessus ont été relevés le 13 novembre 2026. Les vôtres seront différents, car les prix évoluent.
Ce que vous pouvez demander
Tous ces paramètres sont facultatifs. Sans aucun, vous obtenez tous les modèles que vous pouvez appeler dès maintenant.
| Paramètre | Ce qu'il fait |
|---|---|
model |
Un identifiant de modèle, par exemple deepseek/deepseek-v4-flash. |
type |
Uniquement les modèles text, image, video ou audio. Les modèles de musique, de text to speech et de speech to text sont audio. |
q |
Mots à trouver dans l'id ou le nom. Chaque mot doit correspondre : q=claude opus. |
limit |
Au maximum ce nombre de modèles, de 1 à 1000. |
Si model nomme un modèle qui n'existe pas, ou un modèle que personne ne sert actuellement,
models est une liste vide et la réponse est toujours 200. Un ancien id de modèle qui a été
renommé répond avec le modèle qu'il est devenu.
Ce qui est renvoyé
Tous les prix sont en dollars américains. Un champ sans valeur est omis.
| Champ | Signification |
|---|---|
id, name |
L'id du modèle que vous envoyez dans une requête, et son nom. |
type |
text, image, video ou audio. |
input_per_m, output_per_m |
Modèles de texte : le prix actuel pour 1 millions de tokens d'entrée et 1 millions de tokens de sortie. |
list_input_per_m, list_output_per_m |
Modèles de texte : le prix catalogue publié du modèle pour la même chose. |
price |
Modèles d'image, de vidéo et d'audio : le prix actuel pour un unit. |
list_price |
Modèles d'image, de vidéo et d'audio : le prix officiel pour un unit. Envoyé uniquement s'il est supérieur à price. |
discount_pct |
À quel point le prix actuel est inférieur au prix catalogue, de 1 à 100. Pour un modèle de texte, c'est la plus petite des réductions d'entrée et de sortie. Omis lorsqu'il n'y a pas de prix catalogue ou que le prix n'est pas inférieur à celui-ci. |
unit |
Ce qu'un prix achète : 1M tokens, image, megapixel, second, video, track, minute, 1k characters ou request. |
price_text |
Le prix en toutes lettres, en anglais, prêt à être affiché : $0.0091/M in · $0.0182/M out, $0.059 / sec, about $0.0315 per image. |
page_url |
La page du modèle sur uberllm.dev. |
updated_at |
Date de lecture de ces prix. |
Une requête peut coûter plus cher que le prix affiché lorsque les vendeurs les moins chers sont occupés. Voir Pricing pour savoir comment une requête est facturée.
Depuis une page web
N'importe quel site web peut lire les prix directement depuis le navigateur :
const res = await fetch("https://api.uberllm.dev/api/v1/public/prices?type=text&limit=10");
const { models } = await res.json();
for (const m of models) console.log(m.name, m.price_text);
Badge de prix
Une petite image avec le nom du modèle et son prix actuel. Il se met à jour automatiquement.
Markdown, pour un README :
[](https://uberllm.dev/models/deepseek/deepseek-v4-flash?utm_source=embed&utm_medium=referral&utm_campaign=price-badge)
HTML :
<a href="https://uberllm.dev/models/deepseek/deepseek-v4-flash?utm_source=embed&utm_medium=referral&utm_campaign=price-badge">
<img src="https://api.uberllm.dev/api/v1/public/badge/deepseek/deepseek-v4-flash.svg"
alt="DeepSeek V4 Flash price on UberLLM" height="20">
</a>
- Mettez l'ID du modèle dans l'adresse tel quel, barres obliques incluses, et terminez-le par
.svg. - Le badge indique également de combien le prix est inférieur au prix catalogue. Ajoutez
?discount=0pour afficher le prix seul. - Si personne ne propose le modèle actuellement, le badge affiche "non disponible actuellement" et n'affiche aucun prix. Il revient au prix lorsqu'un vendeur est de nouveau disponible.
- Un ID de modèle qui n'existe pas répond
404. - Le lien contient
utm_source=embed, afin que nous puissions savoir qu'une visite provient d'un badge. Il n'enregistre rien sur vos lecteurs. Retirez-le si vous préférez.
Limites et mise en cache
- 300 requêtes par minute depuis une seule adresse IP sur l'adresse JSON. Au-delà, vous obtenez
429avec un en-têteRetry-After. - Les badges n'ont pas de limite de requêtes, et un badge pour un vrai modèle est toujours une image : si les prix ne peuvent pas être lus pendant un instant, il affiche "non disponible pour le moment" au lieu de planter.
- Les réponses JSON peuvent être mises en cache pendant 60 secondes, les badges pendant 5 minutes. Les sites qui proxysent les images (comme GitHub) peuvent conserver un badge un peu plus longtemps.
- Les modèles conçus pour le contenu adulte sont exclus des deux. Ils se trouvent dans
GET /v1/models, marqués"nsfw": true.
Erreurs
| Statut | error.code |
Pourquoi |
|---|---|---|
400 |
invalid_type, invalid_limit, invalid_request |
Un paramètre a une valeur non autorisée. Le message indique lequel. |
404 |
model_not_found, not_found |
Badge seulement : modèle inexistant, ou l'adresse ne se termine pas par .svg. |
429 |
rate_limited |
JSON seulement : trop de requêtes depuis votre adresse IP. Attendez une minute. |
503 |
unavailable |
JSON seulement : les prix n'ont pas pu être lus à l'instant. Réessayez dans quelques secondes. |
Sujets connexes
GET /v1/models: la liste complète des modèles au format OpenAI, avec les tailles de contexte et ce que chaque modèle prend en charge.- MCP server: les mêmes prix que les outils pour un assistant IA.
- OpenAPI spec: les deux adresses y sont incluses.