# Updating with Overwrite

## Background

{% content-ref url="" %}
[](https://docs.stoobly.com/guides/how-to-update-requests/how-to-update-scenarios)
{% endcontent-ref %}

## Overwriting

The following will overwrite the scenario with newly recorded requests and their respective responses.

{% tabs %}
{% tab title="CLI" %}
**Steps**

1. Select the scenario you want to overwrite. To select the scenario, set the [scenario key](https://docs.stoobly.com/core-concepts/mock-api/scenarios#scenario-key):

```bash
stoobly-agent setting scenario "<SCENARIO_KEY>"
```

2. Set the Agent to **record** mode with **overwrite** policy.

```bash
stoobly-agent intercept set --mode record --policy overwrite
```

3. Enable request interception with the Agent.

```bash
stoobly-agent intercept enable
```

4. Replay the scenario either by trigging requests from the application or rerunning a test to verify that the overwrite behaves as expected.
5. (Optional) Persist the changes with a snapshot to commit the updates to version control:

```bash
stoobly-agent scenario snapshot "<SCENARIO_KEY>"
```

This allows you to:

* Version control your updated scenario via Git
* Share the updates with your team
* Revert to this snapshot if needed later
  {% endtab %}

{% tab title="UI" %}
In the **Proxy Settings** go to the **Data** section.

1. Set a scenario
2. For the **Record Policy**, choose **overwrite**. Then click the **Update** button at the bottom
3. Finally set the **Proxy Mode** at the top left to **Record** and click the **Run** button to start intercepting requests

Below is a screenshot showing what the UI configuration will look like:

<figure><img src="https://3980092275-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MLvhXOE-py5MDUOXDKD%2Fuploads%2Fgit-blob-60283f82eac961fee30ee458e312900b5d40aab5%2Fupdate-scenario-record-overwrite.png?alt=media" alt=""><figcaption></figcaption></figure>

4. (Optional) Persist the changes with a snapshot if you want the updates committed to version control:

```bash
stoobly-agent scenario snapshot "<SCENARIO_KEY>"
```

This allows you to:

* Version control your updated scenario via Git
* Share the updates with your team
* Revert to this snapshot if needed later
  {% endtab %}
  {% endtabs %}

## Cleanup

After overwriting your scenario successfully, you can disable intercepting requests with the Agent with the following command:

```bash
stoobly-agent intercept disable
```

You can also update your scenario key back to what it was before or you can clear it out so the Agent will not use any scenario. To clear the active scenario, run the following command:

```bash
stoobly-agent setting scenario clear
```
