## Guide d'utilisation

---

### Premiers pas

---

Après l'[installation](/doc/sdk/cli-ng/fr/guides/installation) et la [configuration](/doc/sdk/cli-ng/fr/guides/configuration) d'un profil, vérifiez que votre connexion fonctionne :

```bash
rbw whoami
```

Cette commande affiche les informations du compte Rainbow connecté (nom, email, rôles).

### Options globales

---

Ces options s'appliquent à toutes les commandes :

| Option | Description |
|---|---|
| `--profile <name>` | Utilise le profil spécifié pour cette commande |
| `--debug` | Active les logs de débogage détaillés |
| `--verbose` | Active la sortie détaillée |
| `--log <file>` | Écrit les logs dans un fichier |

Exemples :

```bash
rbw --profile sandbox --debug users
rbw --log debug.log companies
```

### Commandes principales

---

#### Utilisateurs

```bash
rbw users                               # Lister les utilisateurs
rbw user find <query>                   # Rechercher par nom ou email
rbw user get <id>                       # Détails d'un utilisateur
rbw user create <email> <mdp> <prénom> <nom>  # Créer un utilisateur
rbw user update <id>                    # Modifier un utilisateur
rbw user delete <id>                    # Supprimer un utilisateur
```

#### Entreprises

```bash
rbw companies                           # Lister les entreprises
rbw company find <query>                # Rechercher par nom
rbw company get <id>                    # Détails d'une entreprise
rbw company create <name>              # Créer une entreprise
```

#### Applications

```bash
rbw applications                        # Lister les applications
rbw application create <name>          # Créer une application
rbw application block <id>             # Bloquer une application
rbw application delete <id>            # Supprimer une application
rbw application-deploy [id]            # Déployer (workflow interactif)
```

#### Clés API

```bash
rbw apikeys                             # Lister les clés API
rbw apikey create <description>        # Créer une clé API
rbw apikey delete <id>                 # Supprimer une clé API
```

#### Métriques

```bash
rbw metrics applications               # Métriques d'usage des applications
rbw metrics application <id>           # Métriques d'une application spécifique
```

### Mode interactif

---

Les commandes de type liste supportent un mode interactif permettant d'explorer les ressources dans un arbre navigable :

```bash
rbw users --interactive
rbw applications --interactive
rbw companies --interactive
```

**Navigation** :

| Touche | Action |
|---|---|
| `↑` / `↓` | Naviguer dans la liste |
| `Entrée` | Sélectionner / développer |
| `q` | Quitter le mode interactif |

### Export des données

---

Certaines commandes supportent l'export et l'affichage en JSON :

```bash
rbw applications -f apps.csv           # Export CSV
rbw applications --json                # Affichage JSON brut
rbw companies --json                   # Affichage JSON brut
```

### Filtres

---

Les commandes liste acceptent des filtres pour affiner les résultats :

```bash
rbw users --company <name>             # Filtrer par entreprise
rbw users --role <role>               # Filtrer par rôle
rbw users --email <email>             # Filtrer par email
rbw applications --deployed            # Applications déployées uniquement
rbw applications --blocked             # Applications bloquées uniquement
```

### Aide contextuelle

---

Chaque commande dispose d'une aide intégrée :

```bash
rbw --help                             # Aide générale
rbw user --help                        # Aide sur le groupe de commandes
rbw user get --help                    # Aide sur une commande spécifique
```

### Documentation de l'API REST intégrée

---

Le CLI embarque un navigateur de documentation de l'API REST Rainbow :

```bash
rbw api-docs browse
rbw api-docs search <mots-clés>
```

Un mode TUI interactif permet de parcourir les endpoints, consulter leurs paramètres et les tester directement depuis le terminal.

### Guides intégrés

---

Les guides développeurs Rainbow sont accessibles depuis le CLI :

```bash
rbw guides browse
rbw guides search <mots-clés>
rbw guides show <guide>
```
