Skip to main content

How to Migrate from Postman to Bruno

·OSSAlt Team
postmanbrunomigrationapi testingguide

How to Migrate from Postman to Bruno

Bruno is the Git-native alternative to Postman. Instead of syncing to a cloud account, API collections live as files in your Git repo. Version-controlled, offline-first, and open source. Here's how to migrate.

Why Bruno?

  • Git-native — collections are plain text files in your repo
  • Offline-first — no cloud sync, no account required
  • Fast — Electron app, but leaner than Postman
  • No cloud lock-in — your requests are just files
  • Free forever — MIT license, desktop app

Step 1: Export from Postman

  1. Open Postman → select collection
  2. Click ExportCollection v2.1
  3. Save the JSON file

Step 2: Install Bruno

Download from usebruno.com for Mac, Windows, or Linux.

Or via package manager:

# macOS
brew install bruno

# npm (cross-platform)
npm install -g @usebruno/cli

Step 3: Import Postman Collection

  1. Open Bruno
  2. Click Import Collection
  3. Select Postman Collection
  4. Choose your exported JSON file
  5. Select a folder in your project to store the collection

Bruno converts Postman's JSON into .bru files — plain text, one file per request:

# get-users.bru
meta {
  name: Get Users
  type: http
  seq: 1
}

get {
  url: {{baseUrl}}/api/users
  body: none
  auth: bearer
}

auth:bearer {
  token: {{authToken}}
}

headers {
  Content-Type: application/json
}

Step 4: Set Up Environments

Create environment files in your collection folder:

# environments/development.bru
vars {
  baseUrl: http://localhost:3000
  authToken: dev-token-here
}

# environments/production.bru
vars {
  baseUrl: https://api.example.com
  authToken: prod-token-here
}

Step 5: Commit to Git

# Your API collection is now plain text files
git add api-collection/
git commit -m "Import API collection from Postman"

This is Bruno's killer feature — your entire API test suite is version-controlled alongside your code. Every team member has the same requests, synced via Git. No cloud account needed.

Key Differences

PostmanBruno
Cloud-synced collectionsGit-native file-based
JSON format (opaque).bru format (readable)
Account requiredNo account
{{variable}}{{variable}} (same!)
Pre-request scripts✅ JavaScript scripting
Test scripts✅ Assertions
Mock servers
Team collaborationGit (push/pull)
Environments in cloudEnvironment files in repo

What You'll Gain

  • Version control — requests in Git, reviewable in PRs
  • Team sync via Git — no cloud account or subscription
  • Offline work — no internet needed
  • Security — no API keys sent to cloud
  • Plain text — readable, diffable, greppable

What You'll Lose

  • Cloud sync (replaced by Git)
  • Mock servers
  • API monitoring
  • Postman's collaboration UI

Compare API testing tools on OSSAlt — workflow, collaboration, and data ownership side by side.