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

# Mise en pause et reprise automatiques héritées

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/fr/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>
  Cette page héritée est conservée pour les utilisateurs qui utilisent encore la gamme des SDK 1.x ou bêta. Les nouvelles intégrations avec le SDK 2.x doivent suivre la documentation Sandbox actuelle.
</Warning>

<SandboxBetaVersionWarning />

Lorsque l’instance de sandbox n’est pas nécessaire pour le moment, mais que vous devez pouvoir la reprendre à tout moment ultérieurement, vous pouvez consulter la [documentation](/docs/fr/guides/sandbox-legacy-persistence) pour mettre en pause et reprendre manuellement les instances de sandbox.

La fonctionnalité **« Mise en pause et reprise automatiques »** permet à votre instance de sandbox de se mettre automatiquement en pause après le [délai d’expiration](/docs/fr/guides/sandbox-lifecycle) et de reprendre lorsque nécessaire. Lorsque vous tentez d’effectuer des opérations (comme l’exécution de commandes, l’exécution de code ou des opérations sur les fichiers) sur un sandbox en pause, celui-ci reprend automatiquement sans intervention manuelle.

## Activer la mise en pause automatique

Vous pouvez activer la fonctionnalité de mise en pause automatique en définissant le paramètre `auto_pause` sur `true` lors de la création d’une instance de sandbox. L’instance de sandbox se mettra automatiquement en pause après le délai d’expiration et pourra être reprise ultérieurement.

<Warning>
  Remarque : l’instance de sandbox reprise conservera la fonctionnalité de mise en pause automatique activée et se mettra à nouveau automatiquement en pause après le délai d’expiration.
</Warning>

<CodeGroup>
  ```js JavaScript & TypeScript icon="js" theme={"system"}
  import { Sandbox } from 'novita-sandbox/code-interpreter';

  const sandbox = await Sandbox.create(
      {
          timeoutMs: 5_000,
          autoPause: true
      },
  );
  console.log('Sandbox created', sandbox.sandboxId)

  console.log('Waiting for 10 seconds...')
  await new Promise(resolve => setTimeout(resolve, 10000));

  const resumedSandbox = await Sandbox.connect(sandbox.sandboxId)
  console.log('Sandbox resumed', resumedSandbox.sandboxId)

  await sandbox.kill()
  ```

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

  sandbox = Sandbox.create(
      timeout=5,
      auto_pause=True,
  )
  print('Sandbox created', sandbox.sandbox_id)

  print('Waiting for 10 seconds...')
  time.sleep(10)

  resumed_sandbox = Sandbox.connect(sandbox.sandbox_id)
  print('Sandbox resumed', resumed_sandbox.sandbox_id)

  sandbox.kill()
  ```
</CodeGroup>

## Activer la reprise automatique

Vous pouvez activer la fonctionnalité de reprise automatique en définissant la clé `auto_resume` dans `metadata` sur `true` lors de la création d’une instance de sandbox. Une fois activée, lorsque vous tentez d’effectuer une opération sur un sandbox en pause (comme l’exécution de commandes, l’exécution de code, des opérations sur les fichiers, etc.), le sandbox reprend automatiquement.

<Warning>
  Remarque : le délai d’expiration par défaut pour le sandbox repris est de 5 minutes. Vous pouvez mettre à jour le délai d’expiration du sandbox à l’aide de la méthode `setTimeout` ou `set_timeout`.
</Warning>

<CodeGroup>
  ```js JavaScript & TypeScript icon="js" theme={"system"}
  import { Sandbox } from 'novita-sandbox/code-interpreter';

  const sandbox = await Sandbox.create(
      {
          metadata:{"auto_resume": "true"}
      }
  );
  console.log('Sandbox created', sandbox.sandboxId)

  await sandbox.betaPause()
  console.log('Sandbox paused', sandbox.sandboxId)

  const result = await sandbox.commands.run('ls -al')
  console.log('Command result', result)

  await sandbox.kill()
  ```

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

  sandbox = Sandbox.create(
      metadata={
          "auto_resume": "true",
      }
  )
  print('Sandbox created', sandbox.sandbox_id)

  sandbox.beta_pause()
  print('Sandbox paused', sandbox.sandbox_id)

  result = sandbox.commands.run('ls -al')
  print('Command result', result)

  sandbox.kill()
  ```
</CodeGroup>
