Authentification CLI
Le CLI prend en charge deux familles d’authentification : le device flow interactif recommandé pour les développeurs, et la connexion manuelle par clé API ou token pour les usages techniques.
Connexion interactive par device flow (recommandée)
Ouvre votre navigateur, affiche un code court dans le terminal, puis attend l’approbation depuis la session web Ikawaari :
ikw login
# équivalent
ikw auth login
Options :
| Flag | Défaut | Description |
|---|---|---|
--environment <name> | environnement courant | Environnement cible, par exemple sandbox ou live |
--timeout <seconds> | 900 | Durée maximale d’attente de l’approbation |
--no-browser | N’ouvre pas automatiquement le navigateur |
Le CLI ne lit pas directement les cookies du navigateur. L’approbation se fait côté dashboard, puis le CLI récupère un credential court terme via le flux device.
Connexion manuelle par clé API
Stockez une clé API pour un accès direct à l’API :
ikw auth login:manual --api-key ik_test_your_key_here
Connexion par JWT marchand
Authentifiez-vous avec email et mot de passe :
# Mot de passe via flag (non recommandé — visible dans l’historique du shell)
ikw auth login:manual --email you@example.com --password your_password
# Mot de passe via stdin (recommandé)
echo "your_password" | ikw auth login:manual --email you@example.com --password-stdin
Cibler un environnement spécifique
Par défaut, les credentials sont stockés pour l’environnement courant. Utilisez --environment pour surcharger :
ikw auth login:manual --api-key ik_live_xxx --environment live
Vérifier l’identité courante
ikw auth whoami
# Sortie JSON
ikw auth whoami --json
{
"email": "you@example.com",
"merchantId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
Déconnexion
Efface les credentials stockés pour l’environnement courant :
ikw auth logout
# Ou pour un environnement spécifique
ikw auth logout --environment live
Comment les credentials sont stockés
Les credentials sont stockés dans un fichier de configuration JSON local :
| OS | Chemin |
|---|---|
| Linux | ~/.config/ikw/config.json |
| macOS | ~/Library/Application Support/ikw/config.json |
| Windows | %APPDATA%\ikw\config.json |
Le fichier de configuration contient des credentials sensibles. Ne le committez pas dans le contrôle de version et ne le partagez pas.
Priorité d’authentification
Lors des requêtes API, le CLI utilise les credentials dans cet ordre :
- JWT marchand — utilisé pour les opérations de niveau dashboard
- Clé API — utilisée pour les opérations de niveau API
Certaines commandes exigent une méthode d’auth spécifique (par ex. webhooks exige une clé API, payments refund exige un JWT marchand).