> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Sauvegarder et restaurer des snapshots via la CLI

> Créez, téléchargez, listez et restaurez des snapshots d'applications et de bases de données Square Cloud avec squarecloud app snapshot et db snapshot.

Un snapshot est une sauvegarde des fichiers d'une application ou des données d'une base de données. `squarecloud app snapshot` et `squarecloud db snapshot` fonctionnent de la même manière : `create` en crée un, `list` affiche ceux qui sont stockés, `restore` en restaure un.

Pour `create`, l'ID de l'app est facultatif : consultez [comment la CLI trouve votre application](/fr/cli-reference/quickstart#comment-la-cli-trouve-votre-application). L'ID de la base de données est aussi facultatif : sans lui, la CLI ouvre un sélecteur de vos bases de données.

## `squarecloud app snapshot create`

```bash Utilisation theme={"system"}
squarecloud app snapshot create [appID] [--download]
```

| Option | Description |
| - | - |
| `--download` | Enregistre le snapshot dans le dossier courant sous le nom `Square Cloud - Snapshot <date> <time>.zip` au lieu d'afficher un lien de téléchargement. |

```bash theme={"system"}
squarecloud app snapshot create --download
```

```bash Sortie theme={"system"}
✓ Your snapshot was created. Download it at:
  <download link>
```

Pour une application volumineuse, le snapshot peut encore être en cours de génération lorsque la commande se termine : la CLI l'indique, et le snapshot apparaît dans `snapshot list` au bout de quelques minutes. Le fichier téléchargé n'est lisible que par vous (permissions 0600), et un `--download` qui échoue supprime le fichier partiel.

## `squarecloud app snapshot list`

```bash Utilisation theme={"system"}
squarecloud app snapshot list [snapshotID] [--json]
```

Sans argument, affiche une ligne par snapshot de vos applications, avec l'ID du snapshot, son nombre de versions, leur taille totale et la dernière mise à jour. Les ID des snapshots récents commencent par l'ID de l'application et se terminent par des étiquettes comme `_javascript_manual`.

Passez un ID de snapshot de cette liste pour voir ses versions et leurs **ID de version**, dont `restore` a besoin :

```bash theme={"system"}
squarecloud app snapshot list <snapshotID>
# Une ligne par version : ID du snapshot, ID de version, taille, dernière mise à jour.
```

Avec `--json`, la sortie conserve le même filtre. Lister les snapshots nécessite un plan actif.

## `squarecloud app snapshot restore`

```bash Utilisation theme={"system"}
squarecloud app snapshot restore <appID> <snapshotID> <versionID> [-y]
```

| Option | Description |
| - | - |
| `-y`, `--yes` | Ignore l'invite de confirmation. |

Remplace les fichiers actuels de l'application par une version de snapshot. Prenez `<snapshotID>` et `<versionID>` dans [`app snapshot list`](#squarecloud-app-snapshot-list). La commande demande d'abord une confirmation `y/N`.

```bash Sortie theme={"system"}
✓ Restore started successfully
```

## `squarecloud db snapshot create`

```bash Utilisation theme={"system"}
squarecloud db snapshot create [dbID] [--download]
```

| Option | Description |
| - | - |
| `--download` | Enregistre le snapshot dans le dossier courant sous le nom `Square Cloud - DB Snapshot <date> <time>.zip` au lieu d'afficher un lien de téléchargement. |

Fonctionne comme `app snapshot create`, pour une base de données.

## `squarecloud db snapshot list`

```bash Utilisation theme={"system"}
squarecloud db snapshot list [snapshotID] [--json]
```

Sans argument, une ligne par snapshot de vos bases de données. Avec un ID de snapshot, une ligne par version, avec les ID de version que prend `restore`.

## `squarecloud db snapshot restore`

```bash Utilisation theme={"system"}
squarecloud db snapshot restore <dbID> <snapshotID> <versionID> [-y]
```

| Option | Description |
| - | - |
| `-y`, `--yes` | Ignore l'invite de confirmation. |

Remplace les données actuelles de la base de données par une version de snapshot, après une confirmation `y/N`.

## Voir aussi

| Commande | API | SDK JavaScript | VS Code |
| - | - | - | - |
| `app snapshot create` | [`POST .../snapshots`](/fr/api-reference/endpoint/apps/snapshots/create) | [`api.apps.snapshots.create()`](/fr/sdks/js/snapshots) | [Télécharger le snapshot](/fr/vscode-extension/features#applications) |
| `app snapshot list` | [`GET /v2/users/snapshots`](/fr/api-reference/endpoint/users/snapshots) | [`api.account.snapshots()`](/fr/sdks/js/client) | [Restaurer un snapshot](/fr/vscode-extension/features#applications) |
| `app snapshot restore` | [`POST .../snapshots/restore`](/fr/api-reference/endpoint/apps/snapshots/restore) | [`api.apps.snapshots.restore()`](/fr/sdks/js/snapshots) | [Restaurer un snapshot](/fr/vscode-extension/features#applications) |
| `db snapshot create` | [`POST .../snapshots`](/fr/api-reference/endpoint/databases/snapshots/create) | [`api.databases.snapshots.create()`](/fr/sdks/js/snapshots) | |
| `db snapshot list` | [`GET /v2/users/snapshots`](/fr/api-reference/endpoint/users/snapshots) | [`api.account.snapshots()`](/fr/sdks/js/client) | |
| `db snapshot restore` | [`POST .../snapshots/restore`](/fr/api-reference/endpoint/databases/snapshots/restore) | [`api.databases.snapshots.restore()`](/fr/sdks/js/snapshots) | |
