> ## Documentation Index
> Fetch the complete documentation index at: https://bruno-a6972042-mintlify-c74cb75a.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrating from Postman

Bruno makes migrating from Postman easy. All you need to do is export your collections and environments and import them to Bruno.

<iframe className="w-full aspect-video rounded-xl" src="https://www.youtube.com/embed/2SbKuBLR99U" title="Migrating from Postman to Bruno" allowFullScreen />

## Collection Export

Open Postman and select the collection you want to migrate. Click on the `···` followed by `View more actions` to open the dropdown menu and scroll down until you find `Export`, then click on it.

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/VIyNRSIzlN73aoOe/images/screenshots/migration/postman/postman-pre-dropdown.webp?fit=max&auto=format&n=VIyNRSIzlN73aoOe&q=85&s=3a6428a9383e95eca39f01b8f5f569dc" alt="Open the collection's dropdown menu" width="948" height="558" data-path="images/screenshots/migration/postman/postman-pre-dropdown.webp" />

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/VIyNRSIzlN73aoOe/images/screenshots/migration/postman/postman-dropdown.webp?fit=max&auto=format&n=VIyNRSIzlN73aoOe&q=85&s=686c9eb8276068559ae9264523006612" alt="Find the export button" width="432" height="490" data-path="images/screenshots/migration/postman/postman-dropdown.webp" />

A popup dialog will appear, select either `Collection v2` or `Collection v2.1` format and click on the `Export` button.

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/VIyNRSIzlN73aoOe/images/screenshots/migration/postman/postman-export-dialog.webp?fit=max&auto=format&n=VIyNRSIzlN73aoOe&q=85&s=9bf4d3447c94752344b9d008eafcf063" alt="Export collection dialog" width="920" height="814" data-path="images/screenshots/migration/postman/postman-export-dialog.webp" />

The collection will be downloaded as a JSON file.

Now simply follow the instructions for [Importing Collections](/get-started/import-export-data/import-collections) and you're done!

## Export Data Dump

<Callout type="default">
  Bulk Import from Postman is included in Bruno Ultimate Edition
</Callout>

You can export a data dump of all your collections and environments in Postman. You can then import the data into any Bruno.

**To [export a data dump <strong><sup>↗</sup></strong>](https://learning.postman.com/docs/getting-started/importing-and-exporting/exporting-data/#export-data-dumps), do the following in Postman:**

* Select the settings icon in the header, then select `Settings`.

* Select the Data tab, then select `Request Data Export`.

* Select `Export Data`, then select the data types you want to export. You can export collections, environments, or both.

* Select `Request Data Export`.

**To import your Data Dump to Bruno:**

* Open the import menu and select `Import Collections`

* Select the zip file where the export was saved

* You will now see a list of all collections available for import. By default, all collections will be selected. You can chose to omit any from the import that you'd like.

* Designate a location for the collections and press `import`

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/VIyNRSIzlN73aoOe/images/screenshots/migration/bulk-import.webp?fit=max&auto=format&n=VIyNRSIzlN73aoOe&q=85&s=7a432193b7ffe495c8608c775dd81221" alt="bulk import" width="2604" height="1548" data-path="images/screenshots/migration/bulk-import.webp" />

<Info>
  Bruno automatically translates common Postman script APIs (such as `pm.test`, `pm.environment`, `pm.globals`, `pm.collectionVariables`, and `pm.response`) to their Bruno equivalents during import.

  See the [Scripts Translator](/get-started/import-export-data/script-translator) page for the full list of supported translations.
</Info>

## npm packages used by Postman scripts

When you import a Postman collection, Bruno scans the scripts for `pm.require()` and `require()` calls and groups any external packages it finds into an **Install packages** prompt. You'll see a dialog-box below after the import completes whenever the collection references packages that need attention.

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/gzBEQzDtiQXT21Y4/images/screenshots/v4/chores/install-packages-dialog.webp?fit=max&auto=format&n=gzBEQzDtiQXT21Y4&q=85&s=6dcba5cb7e845b420f93317782da8c43" alt="Install packages dialog" width="2606" height="1102" data-path="images/screenshots/v4/chores/install-packages-dialog.webp" />

The prompt can show up to three sections:

| Section                                | What it means                                                                                                                                                                                                                                                      |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Packages used in scripts**           | npm packages referenced by the imported scripts that aren't yet installed in the collection's folder. Bruno can install them for you with a single click, or you can copy the suggested `npm install --save <packages>` command and run it yourself in a terminal. |
| **Libraries that need Developer Mode** | Bundled libraries and Node.js built-ins (such as `lodash`, `moment`, `crypto`, or `fs`) that are only available when the collection runs in Developer Mode. Bruno offers a **Switch to Developer Mode** action when these are detected.                            |
| **Not supported in Bruno**             | Postman-specific packages without a Bruno equivalent (for example, `postman-collection`, `postman-runtime`, `newman`, or `@postman/*` packages). Scripts that call these will fail at runtime and need to be rewritten.                                            |

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/gzBEQzDtiQXT21Y4/images/screenshots/v4/chores/install-package-developer-mode.webp?fit=max&auto=format&n=gzBEQzDtiQXT21Y4&q=85&s=8ff102161e6e8201c884b8d063b57062" alt="Install packages dialog" width="2606" height="1176" data-path="images/screenshots/v4/chores/install-package-developer-mode.webp" />

<Warning>
  Only enable Developer Mode for collections you trust. In Developer Mode, scripts can access the filesystem and execute system commands. See the [JavaScript Sandbox](/get-started/configure/javascript-sandbox) page for details.
</Warning>

After Bruno finishes installing the requested packages, the prompt confirms the install and if the collection is still in Safe Mode, it will offer to switch it to Developer Mode so the newly installed packages can be loaded by `require()` at runtime.

If npm isn't on your `PATH`, the install step fails with a clear error. Install Node.js/npm, then either retry from the prompt or run the suggested command manually.

Bulk imports queue one prompt per imported collection so you can review each one in turn.

## Environment Import and Export

Environments in API clients are sets of variables that allow you to run requests against different server configurations (development, staging, production) without changing your request URLs.

### Exporting Environment from Postman

1. Open Postman and locate the **Environments** section in the sidebar
2. Find the environment you want to export
3. Click on the three dots (**...**) next to the environment name
4. Select **Export** from the dropdown menu

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/VIyNRSIzlN73aoOe/images/screenshots/migration/postman/postman-environment.webp?fit=max&auto=format&n=VIyNRSIzlN73aoOe&q=85&s=329ee1aa3252e3cf871be05cb123e2b5" alt="Open the environment's dropdown menu" width="758" height="1086" data-path="images/screenshots/migration/postman/postman-environment.webp" />

5. Choose a location to save the JSON file and click **Save**

### Importing Environment into Bruno

#### Importing Your First Environment

1. Open Bruno
2. Click on the **Environments** icon in the top-right corner
3. Click on **Configure environments**
4. You'll see options to **Create environment** and **Import environment**

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/AocSYwqzajb6jML3/images/screenshots/get-started/import-export/import-postman-environment/import-environment-new.webp?fit=max&auto=format&n=AocSYwqzajb6jML3&q=85&s=c0893601053417d0d9dba02f6ab4e564" alt="Import Environment New" width="2480" height="1130" data-path="images/screenshots/get-started/import-export/import-postman-environment/import-environment-new.webp" />

5. Click on **Import environment**

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/AocSYwqzajb6jML3/images/screenshots/get-started/import-export/import-export-env/import-env.webp?fit=max&auto=format&n=AocSYwqzajb6jML3&q=85&s=097a6aa29ba12c6b25c753b6f280968f" alt="Export env" width="2480" height="1092" data-path="images/screenshots/get-started/import-export/import-export-env/import-env.webp" />

6. Select the Postman environment JSON file you exported
7. The environment will be imported with all its variables

#### Adding to Existing Environments

1. Open Bruno
2. Click on the **Environments** icon in the top-right corner
3. Click on **Configure environments**
4. Look for the **Import** button at the left sidebar
5. Click on **Import environment**

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/AocSYwqzajb6jML3/images/screenshots/get-started/import-export/import-export-env/import-env.webp?fit=max&auto=format&n=AocSYwqzajb6jML3&q=85&s=097a6aa29ba12c6b25c753b6f280968f" alt="Export env" width="2480" height="1092" data-path="images/screenshots/get-started/import-export/import-export-env/import-env.webp" />

6. Select the Postman environment JSON file you exported

<img src="https://mintcdn.com/bruno-a6972042-mintlify-c74cb75a/AocSYwqzajb6jML3/images/screenshots/get-started/import-export/import_collection/import-env.webp?fit=max&auto=format&n=AocSYwqzajb6jML3&q=85&s=1069ef86fcac5f3a1362fec89cd705b8" alt="Import Environment" width="2622" height="1372" data-path="images/screenshots/get-started/import-export/import_collection/import-env.webp" />

7. The environment will be added to your existing environments

With environments properly configured, your API requests will work seamlessly across different deployment environments without manual changes.

<Info>
  Note - Bruno environment names and variables must only contain alphanumeric characters, "-", "\_", "." and cannot start with a digit. Non-conforming characters (such as "/") will be converted to "-".
</Info>

<Info>
  Postman allows variable values to be numbers, booleans, or objects, but Bruno stores all variable values as strings. During import, non-string values are automatically converted — for example, `5000` becomes `"5000"`, `true` becomes `"true"`, and objects are serialized as JSON strings.
</Info>
