PopNowDocs API
Construire avec l’API
Contenu principal

Authentification

Le format des clés, où les conserver, les restrictions par clé, la rotation et que faire en cas de fuite.

Chaque requête à l’API porte une clé API dans l’en-tête Authorization :

Authorization: Bearer sk-popnow-3f9c0a…

Il n’existe aucun autre moyen de s’authentifier : une clé passée dans la chaîne de requête de l’URL est toujours refusée, et votre connexion à popnow.ai ne fonctionne pas sur l’API.

Une exception : les routes compatibles OpenAI sous /v1 lisent aussi la clé dans l’en-tête x-api-key, pour que les clients de style OpenAI fonctionnent tels quels. Les routes natives /api/v1 ne lisent que Authorization.

À quoi ressemble une clé

Une clé se compose de sk-popnow- suivi de 48 caractères hexadécimaux en minuscules. Après sa création, la console API n’en montre plus que les premiers caractères : une clé perdue ne se récupère pas, créez-en simplement une nouvelle.

Créer une clé

  1. Connectez-vous sur popnow.ai et ouvrez la console API.
  2. Choisissez Create key et donnez-lui un nom qui dit où elle servira, par exemple production-backend.
  3. Copiez-la immédiatement. Elle n’est affichée qu’une fois.

Vous pouvez avoir plusieurs clés à la fois. Une par environnement ou par service est une bonne habitude : vous pourrez en révoquer une sans toucher aux autres. Toutes les clés puisent dans le même solde de crédits.

Où la conserver

  • Dans une variable d’environnement ou le gestionnaire de secrets de votre plateforme (POPNOW_API_KEY), pas dans le code source.
  • Jamais dans un navigateur, une application mobile ni aucun code qui tourne sur l’appareil de quelqu’un d’autre. Quiconque lit la clé peut dépenser vos crédits. Placez votre propre serveur entre les deux et laissez-le appeler PopNow.
  • Pas dans les journaux. Si vous enregistrez les en-têtes des requêtes, retirez d’abord Authorization.

Limiter ce qu’une clé peut faire

Chaque clé peut avoir ses propres limites, réglées dans la console API :

RestrictionEffetErreur quand elle bloque
Modèles autorisésLa clé ne peut appeler que les modèles listés40301
Liste d’IP autoriséesLes requêtes doivent venir de ces adresses ou plages40302
Plafonds de dépenseLimites quotidienne, mensuelle et totale pour cette clé, affichées en crédits40202

Par défaut, une clé n’a ni restriction ni plafond. Donnez aux clés de production le périmètre le plus étroit qui fonctionne.

Les tâches appartiennent à la clé qui les a créées

recordInfo, retry, purge, la liste des tâches et l’usage ne voient que les tâches créées avec la même clé. Une tâche créée avec une autre clé de votre compte répond 404, exactement comme une tâche inexistante. Les générations lancées sur le site ne sont visibles par aucune clé. Pour une vue de tout le compte, utilisez la console API.

Rotation

Pour remplacer une clé sans interruption :

  1. Créez la nouvelle clé.
  2. Déployez-la partout où l’ancienne servait.
  3. Vérifiez dans la console que la dernière utilisation de l’ancienne clé ne bouge plus.
  4. Révoquez l’ancienne clé.

En cas de fuite

  1. Révoquez-la tout de suite dans la console API. C’est effectif dès la requête suivante.
  2. Créez une remplaçante et déployez-la.
  3. Vérifiez à quoi elle a servi : les journaux et l’usage de la console listent chaque tâche créée par cette clé.
  4. Restreignez la remplaçante avec une liste d’IP autorisées et un plafond de dépense.

Si vous voyez des dépenses qui ne viennent pas de vous, contactez le support.

À quoi ressemble un échec

Les trois problèmes d’authentification renvoient HTTP 401 avec code: 401 ; c’est msg qui les distingue :

msg indiqueCe qui s’est passéQue faire
Identifiants manquantsAucun en-tête Authorization n’est arrivéVérifiez que l’en-tête est défini et que le processus en cours a bien chargé la variable d’environnement
Format de clé non reconnuUne valeur est arrivée, mais ce n’est pas une clé PopNowVérifiez qu’elle commence par sk-popnow- ; vous avez peut-être collé autre chose
Identifiants invalides ou expirésLa clé n’existe pas, a été révoquée ou a expiréCréez une nouvelle clé ; réessayer ne réussira jamais

Une clé valide peut aussi être refusée avec 403, par exemple si l’adresse e-mail du compte n’est pas encore vérifiée (40310). Voir Erreurs.

Sur cette page