Les clés API sont l’une des principales composantes de l’authentification API, c’est-à-dire l’équivalent au niveau d’une API du nom d’utilisateur et du mot de passe de votre compte Kraken.
Les clés API sont nécessaires pour envoyer une requête à l’un des points de terminaison API (dits privés) spécifiques au compte, à savoir les points de terminaison de données de compte, de trading, de financement et de gains. Les clés API ne sont pas nécessaires pour envoyer une requête aux points de terminaison API de données de marché (publics), car les point de terminaison de données de marché ne sont associés à aucun compte Kraken spécifique.
Les clés API peuvent être utilisées par tout logiciel qui interagit avec nos marchés et nos comptes, comme par nos clients de ligne de commande REST API, des applications mobiles et plateforme de trading de tiers, des bots de trading tiers et d’autres produits/services.
- •Création d’une clé API
- •Configuration d’une clé API (autorisations/paramètres)
- •Utilisation d’une clé API
- •Authentification à deux facteurs (2FA) avec clé API
Création d’une clé API
- •Ouvrez le menu du compte (cliquez sur l’icône de profil en haut à droite de la page).
- •Sélectionnez l’option Paramètres.
- •Sélectionnez l’onglet API et cliquez sur Créer une clé API.
Configuration d’une clé API
Plusieurs options et paramètres existent pour les clés API, notamment le nom/la description de la clé et les autorisations d’accès. Ils doivent être configurés pour qu’une clé API puisse être utilisée.
Description de la clé
La description de la clé est le nom de la clé API. Vous êtes libre de la choisir, à condition qu’elle soit unique (différente des descriptions de toutes les autres clés API présentes sur le compte).
Le texte par défaut qui apparaît dans le champ description de la clé ressemble à "api-key-1605316109249". Vous pouvez conserver cette description par défaut ou la modifier au profit d’un nom plus parlant (par exemple, "Clé de trading", "Clé de gestion de compte", "Clé API Python 6" ou "Clé d’application mobile", par exemple).
Autorisations de la clé
Les autorisations de la clé déterminent les points de terminaison API (privés) spécifiques au compte auxquels la clé API est autorisée à envoyer une requête :
Fonds
- •L’autorisation Consulter les fonds est nécessaire pour les points de terminaison API qui envoient des requêtes sur les données du solde du compte, à savoir Balance et TradeBalance.
- •L’autorisation Effectuer un dépôt est nécessaire pour les méthodes de financement liées aux points de terminaison, à savoir DepositMethods et DepositAddresses.
- •L’autorisation Effectuer un retrait est nécessaire pour les méthodes de financement liées aux points de terminaison, à savoir WithdrawInfo, Withdraw et WithdrawCancel.
Ordres et transactions
- •L’autorisation Consulter les ordres et transactions ouverts est nécessaire pour les points de terminaison API qui envoient des requêtes sur les ordres et les positions avec marge existants, à savoir OpenOrders, QueryOrders et OpenPositions.
- •L’autorisation Consulter les ordres et transactions fermés est nécessaire pour les points de terminaison qui envoient des requêtes sur les ordres clôturés/annulés et positions avec marge, à savoir ClosedOrders, QueryOrders et QueryTrades.
- •L’autorisation Modifier les ordres est requise pour les points de terminaison de trading qui passent de nouveaux ordres, à savoir AddOrder, EditOrder, et AddOrderBatch.
- •L’autorisation Annuler/clôturer les ordres est nécessaire pour les points de terminaison de trading qui annulent les ordres ouverts ou en attente, à savoir CancelOrder, CancelAll, et CancelOrderBatch.
Autres
- •L’autorisation Consulter les entrées du registre est nécessaire pour les points de terminaison API qui récupèrent des données antérieures dans le registre des comptes, à savoir Ledgers et QueryLedgers.
- •L’autorisation Exporter les données est nécessaire pour les points de terminaison qui exportent (téléchargent) le registre, à savoir AddExport, RetrieveExport, ExportStatus et RemoveExport.
- •L’autorisation Accéder à l’API WebSockets est nécessaire pour récupérer un token d’authentification pour les API WebSocket via le point de terminaison GetWebSocketsToken.
À titre d’exemple, pour utiliser correctement les autorisations de clé API, envisagez de créer une clé API spécifique que vous transmettez aux tiers pour le trading. Pour cette clé API, il est probable que les autorisations Modifier les ordres et Annuler/clôturer les ordres soient absolument nécessaires et que l’autorisation Consulter les ordres et transactions ouverts puisse s’avérer nécessaire, mais que l’autorisation Retirer des fonds ne soit pas nécessaire.
Si les autorisations sont configurées de manière appropriée, le client de l’API peut effectuer des transactions pour le compte, mais ne peut pas accéder aux informations du compte ni exécuter des tâches de financement.
Paramètres facultatifs
Les autres paramètres de la clé API sont uniquement requis pour les configurations plus avancées. Par conséquent, leurs valeurs par défaut peuvent généralement être conservées :
- •La Fenêtre de nonce est un paramètre utilisé pour surmonter les problèmes de réseau qui peuvent entraîner l’arrivée des requêtes API dans le désordre. Il s’agit d’un court laps de temps (1 seconde, 10 secondes, etc.) pendant lequel les requêtes API avec un nonce non valide (notamment une valeur de nonce inférieure à une valeur nonce précédemment utilisée) ne provoqueront pas d’erreur de nonce non valide.
- •La Liste blanche d’adresses IP est une fonction de sécurité qui limite l’utilisation de la clé API à des adresses IP spécifiques côté client.
- •L’Expiration de la clé peut être utilisée pour créer une clé API qui ne fonctionne que pendant une durée spécifique, telle qu’une clé qui n’est valide que pendant 1 semaine.
- •Le champ Date/heure de début/fin de la requête est un paramètre qui limite les requêtes sur les données historiques de compte à une période spécifique, telle qu’une clé qui peut récupérer l’historique de trading de cette année, mais pas des années précédentes.
Une fois les paramètres de la clé API correctement configurés, la nouvelle clé API peut être créée en cliquant sur le bouton Générer la clé.
IMPORTANT : La clé API, la clé privée et le code QR doivent être gérés de la même manière que votre identifiant/mot de passe. Enregistrez-les dans un gestionnaire de mots de passe si vous devez y accéder à nouveau ultérieurement. Ne les enregistrez pas dans un format non chiffré !
Utilisation d’une clé API
Les clés API sont constituées d’une paire clé publique-clé privée, qui doivent toutes deux être fournies au logiciel du client de l’API.
Les clés API peuvent être fournies de différentes manières, par exemple :
- •La paire clé peut être copiée et collée sous forme de texte brut directement dans le code du client de l’API. Exemple : La méthode utilisée par notre client d’API PHP.
- •La paire clé peut éventuellement être copiée et collée dans des fichiers en texte brut auxquels le client de l’API peut accéder. Exemple : La méthode utilisée par notre client d’API de ligne de commande.
Remarque : La clé privée est également appelée "clé secrète" (ou simplement le "secret") par certains logiciels client d’API.
Authentification à deux facteurs pour la clé API
À elles seules, les clés API constituent un moyen sécurisé d’authentifier l’accès API à un compte Kraken, mais une authentification à deux facteurs (2FA) peut être ajoutée pour renforcer leur sécurité.
Une authentification à deux facteurs pour une clé API peut être ajoutée à une clé API existante via la page Sécurité et peut utiliser un mot de passe statique ou Google Authenticator.
Remarque : Pour ajouter une authentification à deux facteurs à une clé API, le client de l’API doit également prendre en charge la 2FA (c’est-à-dire pouvoir fournir les données de l’authentification à deux facteurs pour chaque appel des méthodes d’API privées). Si ce n’est pas le cas, une erreur inattendue est renvoyée au lieu du résultat souhaité.
Pour en savoir plus sur le fonctionnement de l’authentification à deux facteurs pour les clés API cliquez ici.