> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/knowledge-base/fr/automation-api/api-helper-script.md).

# Script d’assistance API

Le `yb-api` Le script d'aide fournit aux développeurs un moyen simple d'interagir avec l'API VergeOS. Il simplifie l'exécution d'appels API, comme la récupération des machines virtuelles, la mise à jour des configurations et la gestion des ressources. Ce guide présentera les commandes clés et l'utilisation du `yb-api` script.

## Prérequis

* Accès à un système VergeOS.
* Accès au cluster via SSH ou connexion directe.
* **wget** et **curl** doit être installé sur le système pour certaines opérations.

### Exécution du script d'aide

Pour obtenir de l'aide ou voir les options disponibles, exécutez :

```bash
yb-api --help
```

Connectez-vous au nœud et exécutez cette commande pour commencer à utiliser l'assistant d'API.

![Exemple yb-api](/files/639e8016cd91e2a18721909b2bf9c062666e50b7)

## Exemples de commandes

Vous trouverez ci-dessous des exemples d'utilisation de `yb-api` pour diverses tâches de gestion de VM.

### Obtenir une liste des machines virtuelles (sans les instantanés)

Récupérer une liste des VM et filtrer les instantanés.

```bash
yb-api --get --user=admin --server=10.0.0.100 \\
--fields='name,$key,ram,machine#status#status as machine_status' \\
--filter='is_snapshot eq false' /v4/vms
```

### Export simple de toutes les VM

Cette commande récupère une liste de toutes les VM. Les `--server`, `--user`, `--filter`et `--fields` sont facultatives dans ce cas.

```bash
yb-api --get /v4/vms
```

### Obtenir des informations détaillées sur la VM

Récupérer la plupart des champs, y compris les informations sur les disques et les NIC, pour une VM spécifique (VM 1 dans ce cas).

```bash
yb-api --get --user=admin --server=10.0.0.100 \\
--fields='most,machine[most,drives[most],nics[most]]' /v4/vms/1
```

### Renommer une machine virtuelle

Modifier le nom d'une machine virtuelle existante (VM 1) en "NEWNAME".

```bash
yb-api --put='{"name":"NEWNAME"}' --user=admin --server=10.0.0.100 /v4/vms/1
```

### Supprimer une machine virtuelle

Supprimer une VM spécifique (VM 1), en utilisant son `$key`.

```bash
yb-api --delete --user=admin --server=10.0.0.100 \\
--fields='name,$key,ram' /v4/vms/1
```

### Créer une nouvelle machine virtuelle

Créer une nouvelle VM avec des configurations spécifiques (nom, cœurs CPU, RAM, etc.).

```bash
yb-api --post='{"name":"NEWVM","enabled":true,"description":"test vm",\\
"os_family":"linux","cpu_cores":4,"ram":"8192"}' --user=admin \\
--server=10.0.0.100 /v4/vms
```

### Obtenir le schéma de la table de la base de données des VM

Récupérer le schéma de la table de base de données des VM.

```bash
yb-api --get --user=admin --server=10.0.0.100 '/v4/vms/$table'
```

### Cloner une machine virtuelle

Cloner une VM existante (VM 1) et lui donner un nouveau nom.

```bash
yb-api --get --user=admin --server=10.0.0.100 '/v4/vm_actions' \\
--post='{"vm":1, "action": "clone", "params": {"name": "NEW VM NAME"}}'
```

### Mettre sous tension une machine virtuelle

Mettre sous tension une VM existante (VM 1).

```bash
yb-api --get --user=admin --server=10.0.0.100 '/v4/vm_actions' \\
--post='{"vm":1, "action": "poweron"}'
```

## Remarques sur `yb-api`

* Le `yb-api` le script s'appuie sur **wget**, qui peut ne pas être installé par défaut sur macOS. Assurez-vous de l'installer si nécessaire.
* **curl** est utilisé pour la fonction de téléversement dans certains appels API, comme l'envoi de données pour créer de nouvelles VM.

***

En utilisant le `yb-api` script d'aide, les développeurs peuvent simplifier l'interaction avec l'API VergeOS et gérer les machines virtuelles plus efficacement. Faites-nous savoir si vous avez besoin d'aide pour d'autres commandes ou options.

***

{% hint style="info" %}
**Informations sur le document**

* Dernière mise à jour : 2024-08-29
* Version de vergeOS : 4.12.6
  {% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/knowledge-base/fr/automation-api/api-helper-script.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
