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

# Modelo de Snapshot de Sandbox Legado

export const SandboxBetaVersionWarning = () => {
  if (typeof document === "undefined") {
    return null;
  } else {
    return <Warning>The following legacy features require the legacy SDK and CLI versions listed in <Link href="/docs/pt-BR/guides/sandbox-legacy-e2b-compatible" target="self">Legacy SDKs & CLI</Link>. Please note that legacy features may be less stable than production releases. If you encounter any issues while using these features, please <Link href="https://meetings-na2.hubspot.com/junyu" target="_blank">contact us</Link>.</Warning>;
  }
};

<Warning>
  Esta página legada é mantida para usuários que ainda usam a linha 1.x ou beta do SDK. Novas integrações com o SDK 2.x devem seguir a documentação atual de Sandbox.
</Warning>

<SandboxBetaVersionWarning />

## Terminologia

* **Commit**: Uma operação de commit salva o estado atual de uma sandbox como um modelo, resultando em um novo modelo do tipo snapshot template.
* **Sandbox de origem**: A instância de sandbox que está sendo commitada.
* **Snapshot Template**: O modelo gerado após uma operação de commit.

## Descrição do recurso

### Commit de uma sandbox em execução

**Durante o processo de commit:**

* A sandbox de origem será suspensa brevemente durante o commit;
* A instância de sandbox fica indisponível durante a suspensão;
* A duração da suspensão é próxima ao tempo necessário para uma única operação de pausa.

**Depois que o commit for concluído:**

**Sandbox de origem:**

* O registro de pausa existente será atualizado para um novo registro de pausa, com base no estado atual da sandbox;
* A sandbox de origem continua em execução;
* Um novo registro de modelo é gerado.

### Commit de uma sandbox pausada

**Durante o processo de commit:**

* O processo de commit não acionará a inicialização da sandbox de origem;
* A sandbox de origem permanece em estado pausado.

**Depois que o commit for concluído:**

**Sandbox de origem:**

* O registro de pausa existente não é limpo;
* Um novo registro de modelo é gerado.

## Descrição dos parâmetros

| Parameter    | Type     | Required | Description                                    |
| ------------ | -------- | -------- | ---------------------------------------------- |
| `sandbox_id` | `string` | Sim      | O ID da instância de sandbox para fazer commit |
| `alias`      | `string` | Não      | Defina um alias para o modelo gerado           |

## Valor de retorno

Após uma operação de commit bem-sucedida, um objeto `Template` é retornado.

## Exemplos de código

<CodeGroup>
  ```python Python icon="python" theme={"system"}
  from novita_sandbox.core import Sandbox

  # Commit an existing sandbox by ID to create a template snapshot
  # sandbox_id: str - Required. The ID of the sandbox to commit
  # alias: Optional[str] - Optional alias name for the created template
  # Note: Default timeout is 10 minutes for commit operation
  template = Sandbox.commit(
      sandbox_id="existing-sandbox-id",
      alias="my-template-alias"
  )
  print(f"Template ID: {template.template_id}")
  print(f"Build ID: {template.build_id}")
  ```

  ```js TypeScript icon="js" theme={"system"}
  import { Sandbox } from '@novita-sandbox/core'

  // Commit an existing sandbox by ID to create a template snapshot
  // sandboxId: string - Required. The ID of the sandbox to commit
  // opts?: { alias?: string } - Optional commit options
  const template = await Sandbox.commit('existing-sandbox-id', {
    alias: 'my-template-alias'
  })
  console.log(`Template ID: ${template.templateId}`)
  console.log(`Build ID: ${template.buildId}`)
  ```
</CodeGroup>

Além disso, você também pode usar a Novita Sandbox CLI para fazer commit de uma instância de sandbox especificada:

```bash Bash icon="terminal" theme={"system"}
# Basic commit - creates a template snapshot from a sandbox
novita-sandbox-cli sandbox commit <sandboxID>

# Commit with alias - assign a friendly name to the template
novita-sandbox-cli sandbox commit <sandboxID> --alias my-template-alias

```
