> ## 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.

# Backup e restauração de snapshots pela CLI

> Crie, baixe, liste e restaure snapshots de aplicações e bancos de dados da Square Cloud com squarecloud app snapshot e squarecloud db snapshot.

Um snapshot é um backup dos arquivos de uma aplicação ou dos dados de um banco de dados. O `squarecloud app snapshot` e o `squarecloud db snapshot` funcionam do mesmo jeito: o `create` gera um, o `list` mostra os armazenados e o `restore` restaura um deles.

No `create`, o ID da aplicação é opcional: veja [como a CLI encontra sua aplicação](/pt-br/cli-reference/quickstart#como-a-cli-encontra-sua-aplicação). O ID do banco de dados também é opcional: sem ele, a CLI abre um seletor com os seus bancos de dados.

## `squarecloud app snapshot create`

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

| Flag | Descrição |
| - | - |
| `--download` | Salva o snapshot na pasta atual como `Square Cloud - Snapshot <date> <time>.zip` em vez de imprimir um link de download. |

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

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

Em uma aplicação grande, o snapshot pode ainda estar sendo gerado quando o comando termina: a CLI avisa, e o snapshot aparece no `snapshot list` em alguns minutos. Um download é salvo com leitura só para você (permissões 0600), e um `--download` que falha remove o arquivo parcial.

## `squarecloud app snapshot list`

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

Sem argumento, imprime uma linha por snapshot das suas aplicações, com o ID do snapshot, quantas versões ele tem, o tamanho total delas e a última atualização. Os IDs de snapshots recentes começam com o ID da aplicação e terminam com tags como `_javascript_manual`.

Passe um ID de snapshot dessa lista para ver as versões dele e os **IDs de versão**, que o `restore` precisa:

```bash theme={"system"}
squarecloud app snapshot list <snapshotID>
# Uma linha por versão: ID do snapshot, ID da versão, tamanho, última atualização.
```

Com `--json`, a saída mantém o mesmo filtro. Listar snapshots exige um plano ativo.

## `squarecloud app snapshot restore`

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

| Flag | Descrição |
| - | - |
| `-y`, `--yes` | Pula a confirmação. |

Substitui os arquivos atuais da aplicação por uma versão do snapshot. Pegue o `<snapshotID>` e o `<versionID>` no [`app snapshot list`](#squarecloud-app-snapshot-list). Pede uma confirmação `y/N` antes.

```bash Saída theme={"system"}
✓ Restore started successfully
```

## `squarecloud db snapshot create`

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

| Flag | Descrição |
| - | - |
| `--download` | Salva o snapshot na pasta atual como `Square Cloud - DB Snapshot <date> <time>.zip` em vez de imprimir um link de download. |

Funciona como o `app snapshot create`, para um banco de dados.

## `squarecloud db snapshot list`

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

Sem argumento, uma linha por snapshot dos seus bancos de dados. Com um ID de snapshot, uma linha por versão, com os IDs de versão que o `restore` recebe.

## `squarecloud db snapshot restore`

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

| Flag | Descrição |
| - | - |
| `-y`, `--yes` | Pula a confirmação. |

Substitui os dados atuais do banco de dados por uma versão do snapshot, após uma confirmação `y/N`.

## Relacionados

| Comando | API | SDK JavaScript | VS Code |
| - | - | - | - |
| `app snapshot create` | [`POST .../snapshots`](/pt-br/api-reference/endpoint/apps/snapshots/create) | [`api.apps.snapshots.create()`](/pt-br/sdks/js/snapshots) | [Baixar snapshot](/pt-br/vscode-extension/features#aplicações) |
| `app snapshot list` | [`GET /v2/users/snapshots`](/pt-br/api-reference/endpoint/users/snapshots) | [`api.account.snapshots()`](/pt-br/sdks/js/client) | [Restaurar snapshot](/pt-br/vscode-extension/features#aplicações) |
| `app snapshot restore` | [`POST .../snapshots/restore`](/pt-br/api-reference/endpoint/apps/snapshots/restore) | [`api.apps.snapshots.restore()`](/pt-br/sdks/js/snapshots) | [Restaurar snapshot](/pt-br/vscode-extension/features#aplicações) |
| `db snapshot create` | [`POST .../snapshots`](/pt-br/api-reference/endpoint/databases/snapshots/create) | [`api.databases.snapshots.create()`](/pt-br/sdks/js/snapshots) | |
| `db snapshot list` | [`GET /v2/users/snapshots`](/pt-br/api-reference/endpoint/users/snapshots) | [`api.account.snapshots()`](/pt-br/sdks/js/client) | |
| `db snapshot restore` | [`POST .../snapshots/restore`](/pt-br/api-reference/endpoint/databases/snapshots/restore) | [`api.databases.snapshots.restore()`](/pt-br/sdks/js/snapshots) | |
