Migration des URL de base et des SDK26 octobre 2026Cxj

Comment obtenir une clé API OpenAI et corriger une erreur 401 « Clé API non valide »

Diagnostiquez en toute sécurité les erreurs OpenAI 401 de clé API non valide, notamment les mauvais points de terminaison, les secrets obsolètes, les clés révoquées, les contrôles de projet et les listes d’autorisation IP.

Comment obtenir une clé API OpenAI et corriger une erreur 401 « Clé API non valide »

Une erreur OpenAI 401 indique un problème d’authentification, mais elle ne signifie pas toujours la même chose. La solution la plus rapide consiste à identifier le nom d’hôte de la requête, à confirmer quel secret le processus en cours a réellement chargé, puis à utiliser le corps de la réponse d’erreur pour distinguer une clé incorrecte d’une clé révoquée, d’une incompatibilité des identifiants de la passerelle ou d’un blocage par liste d’autorisation IP.

Si vous cherchez comment obtenir une clé API OpenAI parce qu’une requête vient d’échouer, ne collez pas aveuglément un nouveau secret dans la même configuration. Déterminez d’abord si la requête est envoyée à api.openai.com ou à une passerelle compatible avec OpenAI. Ces deux points de terminaison peuvent nécessiter des identifiants différents.

Ne collez jamais une clé API complète dans un ticket, un chat, une capture d’écran, un journal ou cette liste de vérification. Comparez plutôt une empreinte dérivée de manière sécurisée ou le suffixe masqué affiché par votre fournisseur.

Que signifie « clé API non valide » ?

Cela signifie que le service ayant reçu la requête n’a pas pu authentifier l’identifiant présenté pour cette requête. Pour une requête directe à OpenAI, l’erreur officielle peut afficher Incorrect API key provided. Les premières vérifications recommandées par OpenAI consistent à comparer la clé masquée dans l’erreur avec la clé attendue, à s’assurer qu’une application ne passe pas d’une clé à une autre et à confirmer que la configuration de l’organisation est correcte lorsqu’elle est requise. Les recommandations d’OpenAI sur les clés incorrectes font autorité pour ce message précis.

Le seul code d’état HTTP ne suffit pas à diagnostiquer la cause. Par exemple, OpenAI indique qu’une requête bloquée par une liste d’autorisation IP renvoie le code HTTP 401 avec le type d’erreur ip_not_authorized, même si la clé est valide. Lisez le corps de la réponse d’erreur avant de procéder à une rotation. Le guide d’OpenAI sur les listes d’autorisation IP explique cette distinction.

La liste de vérification pour un diagnostic en cinq minutes

Effectuez ces vérifications dans l’ordre. Arrêtez-vous lorsque les éléments indiquent une cause ; modifier plusieurs éléments à la fois rend difficile de prouver qu’une correction fonctionne.

Vérification Éléments à inspecter en toute sécurité Conclusion probable Action suivante
1. Hôte de la requête Le nom d’hôte après redirection, par exemple api.openai.com ou un domaine de passerelle Une clé OpenAI destinée à un accès direct a été envoyée à un autre fournisseur, ou inversement Utilisez l’identifiant fourni par l’opérateur du point de terminaison
2. Corps exact de la réponse d’erreur Message d’erreur, type et code — jamais le secret complet Clé incorrecte ou révoquée, blocage IP ou règle d’authentification propre au fournisseur Suivez la procédure ci-dessous correspondant au corps de la réponse
3. Source du secret à l’exécution Environnement du processus, référence du secret de déploiement, nom du secret CI ou révision du conteneur Une valeur ancienne, vide, tronquée ou entourée de guillemets est toujours utilisée Mettez à jour la source du secret active et redémarrez ou redéployez de manière contrôlée
4. Cycle de vie de la clé Vérifiez si la clé a été supprimée, révoquée, exposée ou configurée pour expirer La clé d’origine ne permet plus de s’authentifier Créez une clé de remplacement et effectuez la rotation en toute sécurité
5. Projet et autorisations Appartenance au projet, projet visé et autorisations de la clé La clé existe, mais ne dispose pas des accès nécessaires à la requête Utilisez la clé du projet visé ou demandez à un propriétaire d’ajuster les accès
6. Contrôles réseau Adresse IP sortante et configuration de la liste d’autorisation IP OpenAI ip_not_authorized ou changement d’adresse IP de l’infrastructure Mettez à jour la liste d’autorisation ; attendez la propagation avant de refaire un test

1. Confirmez le point de terminaison avant de toucher à la clé

Il s’agit de la vérification la plus importante lorsqu’un SDK possède un paramètre base_url configurable.

  • Une requête vers https://api.openai.com/... nécessite un identifiant API OpenAI.
  • Une requête vers une passerelle ou un proxy nécessite l’identifiant et le format d’authentification documentés par cette passerelle.
  • Dans le code, une requête peut sembler « compatible avec OpenAI » tout en étant envoyée à un hôte autre qu’OpenAI.

La question de savoir comment obtenir une clé API OpenAI ne devient pertinente qu’après avoir confirmé que la requête est réellement envoyée à OpenAI. Si l’hôte est une passerelle, créer une nouvelle clé OpenAI ne corrigera pas une erreur 401 renvoyée par cette passerelle. Comparez le nom d’hôte configuré, l’URL de base du SDK, les variables de déploiement et toute configuration de proxy ; ne consignez pas les en-têtes Authorization pendant cette vérification.

Pour une configuration de routage multimodèle, regroupez la configuration du point de terminaison et celle de la clé. Le guide plus général de dépannage des API compatibles avec OpenAI couvre les URL de base, les noms de modèles, le streaming et les vérifications propres au routage, une fois ce test direct des identifiants réussi.

2. Vérifiez que l’application charge uniquement le secret attendu

Les erreurs « clé API non valide » sont souvent dues à de simples erreurs de configuration :

  • OPENAI_API_KEY n’est pas défini dans le processus en cours, même s’il existe sur votre ordinateur portable.
  • Un déploiement référence toujours une ancienne version du secret.
  • Un fichier .env n’est pas chargé dans l’environnement qui envoie réellement la requête.
  • La valeur contient des guillemets, des espaces, un saut de ligne involontaires ou une valeur de remplacement copiée.
  • Un chemin de code utilise la valeur par défaut d’une bibliothèque, tandis qu’un autre remplace la clé ou l’URL de base.

Utilisez une empreinte non réversible dans un environnement de débogage privé. Cela vous permet de comparer les secrets chargés par différents processus sans afficher les secrets eux-mêmes :

import crypto from "node:crypto";

const key = process.env.OPENAI_API_KEY?.trim();

if (!key) {
  throw new Error("OPENAI_API_KEY is not set in this process");
}

const fingerprint = crypto
  .createHash("sha256")
  .update(key)
  .digest("hex")
  .slice(0, 12);

console.info({ keyConfigured: true, keyLength: key.length, fingerprint });

Comparez l’empreinte entre le développement local, l’intégration continue, la préproduction, les workers et la production. Ne comparez ni ne stockez la clé complète.

3. Testez une requête directe avec le même environnement d’exécution

Exécutez une requête minimale depuis la même machine, le même conteneur ou la même tâche qui échoue. Cela permet de distinguer le chargement des identifiants de la logique applicative. La commande suivante utilise l’en-tête bearer standard, mais laisse volontairement la clé dans une variable d’environnement :

curl https://api.openai.com/v1/models \
  -H "Authorization: Bearer $OPENAI_API_KEY"

Interprétez le résultat avec soin :

  • Le même code 401 depuis le même environnement d’exécution indique un problème lié à l’identifiant, au point de terminaison, au paramètre d’organisation/projet ou à la politique réseau.
  • Une réponse réussie indique un problème de configuration de l’application : un environnement d’exécution différent, un remplacement de l’URL de base, la création de clients en double ou une variable d’environnement différente.
  • Une réponse ip_not_authorized indique un problème de liste d’autorisation d’adresses IP, et non que le texte de la clé est invalide.

Ne remplacez pas ce test par une requête depuis un navigateur. OpenAI déconseille de déployer des clés API dans les navigateurs ou les applications mobiles, car elles peuvent être exposées et utilisées par d’autres personnes. Envoyez plutôt les requêtes via votre propre backend. Les recommandations d’OpenAI sur la sécurité des clés API expliquent pourquoi.

4. Vérifiez si la clé a été révoquée, supprimée, exposée ou a expiré

Les secrets d’API OpenAI ne sont affichés intégralement qu’au moment de leur création. Si vous n’avez pas enregistré le secret, vous ne pouvez pas le récupérer depuis le tableau de bord ; créez-en un nouveau et mettez à jour l’application. Les clés supprimées ne peuvent pas être utilisées. L’article d’OpenAI sur la gestion des clés confirme ces deux comportements.

Si vous configurez une nouvelle intégration plutôt que de résoudre un incident, utilisez le guide de production des clés API Open AI complémentaire pour une liste de contrôle plus complète sur la configuration, la sécurité et l’exploitation.

Considérez ces événements comme une raison d’effectuer une rotation, et non de réessayer indéfiniment :

  • La clé a été supprimée ou volontairement révoquée.
  • La clé a peut-être été commitée dans un dépôt, envoyée dans un message, intégrée dans une application cliente ou exposée d’une autre manière. OpenAI indique désactiver les clés qu’il détecte sur l’Internet public ou divulguées dans une application publiée sur un app store.
  • Une clé de projet a été créée avec une date d’expiration, et cette date est dépassée.
  • Un déploiement référence une ancienne clé après une rotation planifiée.

Pour la remplacer, créez la nouvelle clé dans le projet prévu, enregistrez-la dans le bon magasin de secrets, déployez-la, confirmez une requête minimale, puis révoquez l’ancienne clé. OpenAI recommande les dates d’expiration et un processus de rotation régulier ; il recommande également des clés distinctes plutôt que des identifiants d’équipe partagés. Consultez les recommandations de sécurité actuelles.

5. Vérifiez l’appartenance au projet et les autorisations de la clé

Si vous pouvez créer ou voir une clé, mais qu’une charge de travail d’équipe échoue toujours, vérifiez le périmètre du projet avant de supposer que le secret est mal formé. Les projets OpenAI gèrent les clés API, les membres, les comptes de service, l’accès aux modèles et les limites de dépenses. Les clés détenues par les utilisateurs peuvent avoir des autorisations complètes, restreintes ou en lecture seule. Le guide des projets d’OpenAI documente les contrôles disponibles.

Posez-vous les questions suivantes :

  1. La clé provient-elle du même projet que les ressources de l’application et l’usage prévu ?
  2. Le compte de service ou l’utilisateur est-il toujours membre de ce projet ?
  3. La clé dispose-t-elle des autorisations de point de terminaison ou de ressource nécessaires à l’appel ?
  4. Si l’erreur identifie une organisation, le client est-il configuré pour l’organisation prévue plutôt que pour une organisation obsolète ?

Les problèmes d’autorisation et de projet peuvent afficher un message plus spécifique ou un code d’état différent de Incorrect API key provided. Conservez l’ID de requête de l’erreur et le corps assaini pour le propriétaire de votre plateforme ou le support OpenAI, plutôt que de deviner.

6. Écartez la liste d’autorisation d’adresses IP avant de faire tourner une clé valide

Une organisation OpenAI peut restreindre le trafic API à des plages d’adresses IP approuvées. Une requête provenant de toute autre adresse est rejetée avec HTTP 401 et ip_not_authorized, même lorsque l’identifiant lui-même est valide. Cela en fait un code 401 particulièrement facile à mal diagnostiquer.

Si le type d’erreur est ip_not_authorized :

  1. Identifiez l’adresse IP de sortie réelle de la charge de travail, et non l’adresse IP publique de l’ordinateur portable du développeur.
  2. Comparez-la avec la liste d’autorisation configurée et vérifiez si un NAT cloud, une adresse de sortie serverless ou un proxy a changé.
  3. Mettez à jour la plage autorisée à l’aide des contrôles d’organisation appropriés.
  4. Respectez le délai de propagation documenté avant d’exécuter à nouveau le test minimal.

Ne modifiez pas la clé tant que cette piste n’est pas écartée. Faire tourner une clé valide ne fait qu’ajouter une deuxième variable à l’incident.

Comment obtenir une clé API OpenAI après une erreur 401

Si les éléments indiquent que l’identifiant est manquant, supprimé, compromis ou expiré, suivez ce court processus de récupération :

  1. Ouvrez la page des clés API OpenAI dans l’organisation et le projet concernés.
  2. Créez une nouvelle clé secrète avec le niveau d’accès minimal adapté à la charge de travail.
  3. Enregistrez-la directement dans un gestionnaire de secrets côté serveur ou dans un secret de déploiement ; ne l’insérez pas dans du code navigateur, dans un fichier .env validé dans le contrôle de version, ni dans un document partagé.
  4. Mettez d’abord à jour un environnement et exécutez la requête directe minimale.
  5. Déployez la modification dans les environnements restants et confirmez que l’empreinte a changé là où prévu.
  6. Ne révoquez la clé précédente qu’après avoir vérifié la clé de remplacement, sauf si l’ancienne clé est exposée — dans ce cas, révoquez-la immédiatement et examinez son utilisation.

Voici comment obtenir une clé API OpenAI de manière sûre dans le cadre d’une récupération. Ce n’est pas une raison pour partager une même clé entre coéquipiers ou environnements. Utilisez des identifiants distincts par projet/utilisateur ou compte de service afin qu’une future erreur 401 ait un rayon d’impact plus limité.

Une erreur 401 propre à une passerelle exige une autre question

Lorsqu’une base de code utilise un SDK compatible avec OpenAI avec un base_url personnalisé, commencez par vous demander : Quel service a reçu la requête ? Une passerelle peut renvoyer sa propre erreur 401 avant d’envoyer quoi que ce soit en amont à OpenAI. Dans ce cas, vérifiez l’identifiant de la passerelle, le locataire/l’espace de travail, l’URL de base de l’API et l’identifiant du modèle dans la documentation de la passerelle.

Une fois la requête authentifiée, utilisez le guide de démarrage rapide de l’API Flatkey pour une configuration ciblée de routeur compatible, ou revenez au guide de dépannage de l’API compatible avec OpenAI pour vérifier le modèle, le streaming et l’URL de base. Conservez une clé OpenAI directe et une clé de passerelle dans des variables secrètes aux noms distincts afin qu’un futur incident soit évident dans la configuration plutôt qu’après des essais et erreurs.

Avant de clore l’incident

  • [ ] Le nom d’hôte et base_url correspondent à l’émetteur de l’identifiant.
  • [ ] Le processus de production a chargé l’empreinte secrète attendue.
  • [ ] La clé n’a pas été supprimée, révoquée, exposée ni expirée.
  • [ ] L’appartenance au projet et les autorisations de la clé sont correctes pour la charge de travail.
  • [ ] ip_not_authorized a été écarté ou la liste d’autorisation a été mise à jour.
  • [ ] Une requête minimale fonctionne depuis l’environnement d’exécution en échec.
  • [ ] Aucun identifiant complet n’est apparu dans les journaux, le contrôle de version, les tickets ou les discussions.
  • [ ] L’ancienne clé n’a été révoquée qu’après vérification de la clé de remplacement, sauf si elle était exposée.

Savoir comment obtenir une clé API OpenAI est une tâche de configuration utile ; diagnostiquer l’hôte, la source du secret, le cycle de vie et la politique réseau est ce qui transforme la correction d’une erreur 401 en réparation durable en production.

Questions fréquemment posées

Que signifie « clé API non valide » dans OpenAI ?

Cela signifie que le service qui traite la requête n’a pas pu authentifier l’identifiant présenté. Pour le message exact Incorrect API key provided, comparez la clé prévue avec la valeur masquée dans l’erreur, assurez-vous que l’application n’utilise pas deux clés et vérifiez la configuration de la bonne organisation. Un type d’erreur différent tel que ip_not_authorized indique une autre cause.

Comment obtenir une clé API OpenAI si l’ancienne ne fonctionne plus ?

Créez une nouvelle clé secrète dans le projet OpenAI concerné, enregistrez-la dans un stockage de secrets côté serveur, mettez à jour le déploiement actif et vérifiez une requête minimale avant de révoquer l’ancienne clé. Vous ne pouvez pas récupérer la valeur complète d’une clé existante une fois l’écran de création fermé.

Puis-je corriger une erreur 401 OpenAI en plaçant une nouvelle clé dans le JavaScript du navigateur ?

Non. Un navigateur ou une application mobile n’est pas l’endroit approprié pour un secret de fournisseur. Acheminez les requêtes via votre backend et stockez le secret dans une configuration côté serveur ou dans un gestionnaire de secrets.

Pourquoi une clé OpenAI valide renvoie-t-elle 401 ip_not_authorized ?

La liste d’autorisation d’adresses IP d’OpenAI peut rejeter les requêtes provenant d’une adresse qui ne figure pas dans la liste d’autorisation de l’organisation. Vérifiez l’adresse IP de sortie réelle du serveur ou de la charge de travail cloud, puis comparez-la aux plages d’adresses IP configurées.

Pourquoi une nouvelle clé OpenAI n’a-t-elle pas corrigé une erreur 401 de passerelle ?

Un point de terminaison de passerelle peut exiger sa propre clé API et sa propre configuration. Confirmez le nom d’hôte de la requête et utilisez l’identifiant émis par l’opérateur de ce point de terminaison ; une clé OpenAI directe n’authentifie pas une requête auprès de chaque API compatible avec OpenAI.

Sources officielles