Les clés API sont vos identifiants d’authentification pour accéder à l’API Cathopic. Comprendre leur fonctionnement est essentiel pour une intégration API sécurisée et efficace.
Qu’est-ce qu’une clé API ?
Une clé API est un jeton secret unique qui identifie votre application et l’autorise à accéder à l’API Cathopic :
Une longue chaîne alphanumérique (par ex.
sk_live_abc123xyz789...)Agit à la fois comme authentification et autorisation
Liée à votre compte Cathopic et à la facturation
Peut être active ou inactive
Cycle de vie de la clé
Création :
Générez des clés dans Paramètres → API
Donnez à chaque clé un nom descriptif (« Site Web de production », « Environnement de préproduction », « Application mobile »)
Copiez la clé complète immédiatement : elle n’est affichée qu’une seule fois
Conservez-la en lieu sûr (variables d’environnement, gestionnaire de secrets, gestionnaire de mots de passe)
Utilisation :
Incluez-la dans l’en-tête HTTP
x-api-keyavec chaque requêteLes clés sont validées côté serveur à chaque requête
Toute l’utilisation de l’API est suivie et facturée à votre compte
Désactivation :
Les clés peuvent être temporairement désactivées sans suppression
Utile pour le dépannage ou pour mettre en pause une intégration spécifique
Peut être réactivée à tout moment
Suppression :
Supprime définitivement la clé
Ne peut pas être annulée ni récupérée
Toutes les requêtes avec cette clé échoueront immédiatement
Recommandations pour la gestion des clés
Sécurité :
Ne jamais commiter les clés dans le contrôle de version : utilisez des fichiers
.envet ajoutez-les à.gitignoreNe jamais exposer dans du code côté client : les clés API doivent uniquement être utilisées côté serveur
Utilisez des variables d’environnement : stockez les clés dans
process.env.CATHOPIC_API_KEYou équivalentFaites une rotation régulièrement : changez périodiquement les clés (tous les trimestres ou après des changements au sein de l’équipe)
Utilisez des clés séparées par environnement : des clés différentes pour le développement, la préproduction et la production
Organisation :
Noms descriptifs : nommez les clés selon leur usage : « Site Web de production », « Application iOS », « Système d’e-mails »
Documentez la propriété : suivez quel membre de l’équipe a créé chaque clé
Audits réguliers : examinez les clés actives chaque mois et supprimez celles qui ne sont pas utilisées
Plusieurs clés API
Vous pouvez créer plusieurs clés API pour des usages différents :
Par environnement : clés distinctes pour le développement, la préproduction et la production
Par application : clés différentes pour le site web, l’application mobile, les outils internes
Par membre de l’équipe : clés individuelles pour les développeurs (plus facile à suivre et à révoquer)
Toutes les clés sous votre compte partagent la même facturation. L’utilisation de toutes les clés est regroupée dans votre facture mensuelle.
Suivi de l’utilisation des clés
Suivez l’activité pour chaque clé :
Allez dans Paramètres → API
Affichez la liste de toutes les clés avec les dates de dernière utilisation
Cliquez sur une clé pour voir des statistiques d’utilisation détaillées
Surveillez toute activité inattendue
Que faire si une clé est compromise
Si vous pensez qu’une clé API a été exposée :
Supprimez-la ou désactivez-la immédiatement dans Paramètres → API
Générez une nouvelle clé de remplacement
Mettez à jour votre application avec la nouvelle clé
Vérifiez les journaux d’utilisation pour toute activité suspecte
Contactez le support si vous constatez une utilisation non autorisée
Exemple : stocker les clés en toute sécurité
Node.js avec des variables d’environnement :
// Fichier .env (à ajouter à .gitignore !)
CATHOPIC_API_KEY=sk_live_abc123xyz789...
// Votre code
require('dotenv').config();
const apiKey = process.env.CATHOPIC_API_KEY;
fetch('https://api.cathopic.com/resources', {
method: 'POST',
headers: {
'x-api-key': apiKey,
'Content-Type': 'application/json'
},
body: JSON.stringify({ query: 'Jesus' })
});
Python avec des variables d’environnement :
import os
import requests
api_key = os.environ.get('CATHOPIC_API_KEY')
response = requests.post(
'https://api.cathopic.com/resources',
headers={'x-api-key': api_key},
json={'query': 'Jesus'}
)