Clé API OpenAI : comment la créer et la protéger
Pour obtenir une clé API OpenAI, connecte-toi sur platform.openai.com, ouvre la page API keys et clique sur Create new secret key. Copie-la tout de suite : elle ne s'affichera plus. Ajoute des crédits dans Billing pour qu'elle fonctionne, puis range-la côté serveur, jamais dans le code visible du navigateur.
La solution : le prompt à coller
Mon app doit appeler l'API OpenAI. Ne mets jamais la clé dans le code du navigateur, ni dans une variable qui commence par VITE_. Crée une edge function qui reçoit le texte de l'utilisateur, appelle OpenAI avec la clé stockée dans les secrets sous le nom OPENAI_API_KEY, et renvoie la réponse. Si le secret n'existe pas encore, demande-le-moi avec le formulaire sécurisé, pas dans le chat. Le front appelle uniquement cette fonction. Ne modifie rien d'autre. Montre-moi les fichiers modifiés avant d'appliquer.
Avant de commencer : as-tu vraiment besoin d'une clé ?
Si ton app est faite avec Lovable et que tu veux juste ajouter un chatbot ou un résumé automatique, regarde d'abord Lovable AI, l'IA intégrée à Lovable. D'après sa documentation, elle ne demande aucune clé : Lovable gère lui-même l'accès aux modèles de Google et d'OpenAI, et l'usage est décompté sur ton plan Lovable. Demande simplement à Lovable d'ajouter la fonction d'IA.
Ta propre clé OpenAI devient utile si tu veux un modèle précis, une facture OpenAI séparée, ou si ton app est faite avec Bolt, Cursor ou un autre outil. Il te faut alors :
- un compte sur platform.openai.com (ton compte ChatGPT fonctionne pour te connecter) ;
- une carte bancaire pour ajouter des crédits ;
- l'accès aux réglages de ton app (secrets Lovable, Supabase ou fichier
.env).
Créer ta clé en 4 étapes
Une clé API, c'est un mot de passe que ton app présente à OpenAI pour prouver qu'elle a le droit d'utiliser tes crédits. Dans l'interface d'OpenAI, elle s'appelle « OpenAI API key » ou « secret key ».
- Connecte-toi sur platform.openai.com avec ton compte OpenAI.
- Ouvre la page
API keys(adresse directe : platform.openai.com/api-keys), puis clique surCreate new secret key. - Remplis la fenêtre de création : un nom qui dit où la clé sert (par exemple « app-lovable-prod »), le projet, et les permissions. Laisse
Owned bysurYousi tu travailles seul.Alldonne tous les droits ;Restrictedpermet de n'autoriser que ce dont ton app a besoin. - Copie la clé tout de suite et colle-la dans un gestionnaire de mots de passe. OpenAI ne l'affiche qu'une seule fois. Si tu la perds, il faudra en créer une nouvelle.
La clé commence par sk-. Ne la colle jamais dans le chat de Lovable, de Bolt ou de Cursor : l'historique de conversation n'est pas un coffre-fort.
La clé API OpenAI est-elle gratuite ?
Créer une clé API OpenAI est gratuit, mais l'utiliser ne l'est pas. Au 16 octobre 2026, l'API fonctionne en prépaiement : tu achètes des crédits dans Billing, au minimum 5 $, et chaque appel les consomme. Sans crédit, ta clé renvoie une erreur. Ton abonnement ChatGPT Plus ne compte pas : c'est une facturation à part.
C'est le malentendu le plus courant. ChatGPT (l'application) et l'API (ce qu'appelle ton app) ont deux facturations distinctes. Payer ChatGPT Plus ne donne aucun crédit API, et l'inverse non plus.
Dans Billing, OpenAI propose 10 $ par défaut lors du premier achat. La recharge automatique (auto-reload) est activée par défaut : désactive-la tant que ton app n'a pas de vrais utilisateurs, sinon ta carte est débitée dès que le solde baisse. Les crédits achetés expirent au bout d'un an.
Régler un plafond de dépense tout de suite
Un plafond de dépense coupe les appels quand ton projet a dépensé le montant que tu as fixé pour le mois. C'est le geste qui transforme une clé volée en petite perte au lieu d'une grosse facture.
Dans les réglages de ton organisation, ouvre la page Limits (ou le budget du projet dans les réglages du projet) et fixe un montant mensuel. OpenAI distingue deux choses :
- l'alerte, qui t'envoie un e-mail sans rien bloquer ;
- la limite, qui stoppe les appels quand le montant est atteint.
Règle les deux : une alerte à la moitié de ton budget, une limite au budget lui-même. Le prépaiement sans recharge automatique joue aussi le rôle de plafond : ta clé ne peut pas dépenser plus que ton solde.
Où mettre ta clé dans ton app (et où ne jamais la mettre)
Tout ce qui est dans le code envoyé au navigateur est lisible par n'importe quel visiteur. Il suffit d'ouvrir les outils de développement de Chrome (clic droit, puis Inspecter) pour le voir. Ta clé OpenAI ne doit donc jamais s'y trouver.
Le piège classique vient des variables d'environnement, ces réglages qu'on range à part du code. Une variable qui commence par VITE_ est lisible par tous les visiteurs de ton app. Lovable et Bolt utilisent Vite, un outil qui copie toutes les variables VITE_ dans le code du navigateur. Même chose pour NEXT_PUBLIC_ dans une app Next.js. Écrire VITE_OPENAI_API_KEY, c'est publier ta clé.
La clé doit vivre côté serveur, c'est-à-dire sur une machine que le visiteur ne voit pas. Ton app appelle ce serveur, qui appelle OpenAI avec la clé et renvoie seulement la réponse.
Dans Lovable
Range la clé dans les Secrets de Lovable Cloud, sous le nom OPENAI_API_KEY. Lovable propose un formulaire sécurisé pour la saisir quand une fonction en a besoin. Le code qui appelle OpenAI tourne dans une edge function, une petite fonction qui s'exécute sur le serveur. Le prompt de cette page met tout ça en place.
Dans Bolt
Si ton app Bolt utilise Supabase, mets la clé dans les secrets des edge functions Supabase (menu Edge Functions, puis Secrets) et demande à Bolt d'appeler OpenAI depuis une edge function. Le même prompt fonctionne en remplaçant « Lovable » par « Bolt », mais il n'a été testé que dans Lovable.
Dans Cursor
Mets la clé dans un fichier .env à la racine du projet, sans préfixe VITE_ ni NEXT_PUBLIC_, et vérifie que .env figure dans le fichier .gitignore. Sinon, la clé part sur GitHub au prochain envoi du code. Sur ton hébergeur (Vercel, Netlify), recopie la variable dans ses réglages d'environnement.
Vérifier que ça marche
Deux contrôles, dans cet ordre :
- Envoie un message dans ton app. Tu dois recevoir une réponse générée par OpenAI, et voir l'appel apparaître quelques minutes plus tard dans la page
Usagede platform.openai.com. - Cherche ta clé dans le navigateur. Ouvre ton app publiée, clic droit, Inspecter, onglet
Sources, puis cherchesk-avec Ctrl+Maj+F (Cmd+Option+F sur Mac). Aucun résultat : c'est bon. Un résultat : ta clé est exposée, suis la section sur la fuite ci-dessous.
Pourquoi ta clé ne fonctionne pas
Une clé API OpenAI qui ne fonctionne pas a presque toujours l'une de ces quatre causes : la clé est mal copiée, ton compte n'a plus de crédits, la clé appartient à un autre projet, ou tu envoies trop de requêtes trop vite. Le message d'erreur, en anglais, te dit laquelle.
| Message (code) | Ce que ça veut dire | Le correctif |
|---|---|---|
Incorrect API key provided (401) | La clé est fausse, incomplète, révoquée, ou contient une espace en trop. | Recolle la clé sans espace avant ni après. Si tu l'as perdue, crée-en une nouvelle. |
You exceeded your current quota, please check your plan and billing details (429, insufficient_quota) | Ton solde de crédits est à zéro, ou ton plafond mensuel est atteint. | Ajoute des crédits dans Billing ou relève ta limite dans Limits. |
Rate limit reached for requests (429) | Ton app envoie plus de requêtes par minute que ton compte n'en autorise. | Demande à ton outil d'espacer les appels et de réessayer après une pause. |
| Erreur 401 ou 403 avec une clé correcte | La clé a des permissions Restricted qui excluent ce que ton app demande, ou elle appartient à un autre projet. | Vérifie le projet et les permissions de la clé dans la page API keys. |
Ta clé a fuité : que faire en 3 minutes
Si ta clé OpenAI a été visible dans le navigateur, sur GitHub ou dans une capture partagée, considère-la comme volée et remplace-la tout de suite. Des robots scannent les dépôts publics en continu à la recherche de clés sk-.
- Révoque la clé : page
API keys, icône de suppression sur la ligne de la clé. Elle cesse de fonctionner immédiatement. - Crée une nouvelle clé en suivant les 4 étapes plus haut.
- Remplace-la dans ton app, uniquement côté serveur (secrets Lovable, Supabase ou hébergeur), et retire l'ancienne du code.
- Vérifie l'usage récent dans la page
Usage. Une consommation que tu ne reconnais pas : écris au support d'OpenAI et règle un plafond de dépense si ce n'est pas fait.
Effacer la clé du code ne suffit pas : elle reste dans l'historique de GitHub et dans les anciennes versions publiées. Seule la révocation la rend inutilisable.
Questions fréquentes
Comment obtenir une clé API OpenAI ?
Connecte-toi sur platform.openai.com, ouvre la page API keys et clique sur Create new secret key. Donne-lui un nom, choisis le projet et les permissions, puis copie la clé immédiatement : elle ne s'affichera plus. Ajoute ensuite au moins 5 $ de crédits dans Billing, sinon elle renverra une erreur.
La clé API OpenAI est-elle gratuite ?
La créer est gratuit, l'utiliser est payant. L'API fonctionne en prépaiement : tu achètes des crédits, 5 $ au minimum au 16 octobre 2026, et chaque appel les consomme. Ton abonnement ChatGPT Plus ne donne aucun crédit API, les deux facturations sont séparées.
Pourquoi ma clé API OpenAI ne fonctionne pas ?
Lis le message d'erreur. « Incorrect API key provided » signifie une clé mal copiée ou révoquée. « You exceeded your current quota » signifie que tu n'as plus de crédits ou que ton plafond est atteint. « Rate limit reached » signifie trop de requêtes en peu de temps.
Où mettre ma clé OpenAI dans Lovable ?
Dans les Secrets de Lovable Cloud, sous le nom OPENAI_API_KEY, et jamais dans le code ni dans une variable qui commence par VITE_. L'appel à OpenAI doit passer par une edge function. Pour un usage simple, Lovable AI, l'IA intégrée de Lovable, évite même d'avoir ta propre clé.
Que faire si ma clé OpenAI a fuité ?
Révoque-la tout de suite dans la page API keys de platform.openai.com et crée une nouvelle clé. Remplace-la côté serveur dans ton app, puis vérifie la page Usage pour repérer une consommation anormale. Effacer la clé du code ne suffit pas : seule la révocation la rend inutilisable.