The Git-connected experience is available on the Postman desktop app only. If you don’t see the option to connect to a Git repository, you’re in the web app. Switch to the Postman desktop app to access this feature.
With Postman’s file system support (Native Git), API iterations are authored and iterated locally in Git, alongside code, and intentionally not synced to Postman Cloud until the API reaches a stable, deployable state.
In Postman, you can open the local instance of your remote Git repository where your API is implemented. Your work on Postman API elements - including collections, environments, API specifications, SDKs, mocks, and flows - are saved as a folder inside the source code folder. You keep your collection and project files in sync, then commit your local changes to Postman Cloud.
In Local View, you can edit the collection file directly in your IDE or in Postman. You can also make changes to your local files using Agent Mode or the LLM in your IDE. All development changes flow through the Local View → Git → automated CI sync → Cloud View pipeline.
As a developer, you can work in a branch on a feature, like adding a new endpoint or changing the implementation, while the rest of your team works on something else. When your feature is ready, the PRs can contain code and collection changes and be version controlled together.
You can use the Postman CLI to run tests as part of the CI/CD pipeline before merging changes. Collections stored in a branch can have tests specific to the branch code.
Follow these recommendations to ensure access to both the collection and the underlying implementation code. The Postman Agent’s capabilities, such as AI-assisted debugging and test generation, are significantly more efficient with such setup.
For repos with a single service, connect your Postman workspace to a root folder that contains both your API collections and your application code.
…
For mono-repos containing multiple services, connect each individual service folder to a separate Postman workspace rather than connecting the entire repo to a single workspace.
…
While you as a developer may work primarily with local Git collections, maintaining an up-to-date Cloud View is essential for collaborating with teammates (like frontend developers) who may not have or may not want to have the local repository cloned. Consider local mode to be the builder’s view, and cloud mode to be the consumer’s view.
To ensure smooth collaboration, everyone working on the project should be on the same Postman team and same Postman workspace. Personal workspaces can’t be used for Native Git workflows.
If you have existing workspaces, you can transition to the local Git setup by connecting your current workspace to a repository and pulling the cloud elements down into your local file system.
You can edit your Local Items before you push them to Postman Cloud. If you’re in Cloud View, in the footer, click Switch to Local.
Then, in the left sidebar, open the Local Items tab and edit your Local Items. For example, edit your Collections, Environments, and Specs.
To push to Postman Cloud, do the following:
Open your workspace.
In the footer, click Push to Postman Cloud.
Review your changes.
(Optional) Edit the list of items to push to Postman Cloud:
When you’re ready to push your changes, click Push to Cloud.
Postman pushes your Local Items to Postman Cloud, where they’re available to anyone in your workspace.
You can edit your Cloud Items before you pull them from Postman Cloud. If you’re in Local View, in the footer, click your branch name. Then, click Postman Cloud.
Then, in the left sidebar, open the Items in Cloud tab, and edit your Cloud Items. For example, edit your Collections, Environments, and Specs.
To pull from Postman Cloud, do the following:
Open your workspace.
In the footer, click Pull from Postman Cloud.
(Optional) Choose another workspace.
Edit the list of items to pull from Postman Cloud:
When you’re ready to pull your changes, click Pull from Cloud.
Postman pulls your Cloud Items from Postman Cloud, where they’re available to you locally.
To avoid manual errors and outdated cloud collections, automate the synchronization process using the Postman CLI push command within a CI/CD pipeline, triggered by events like merging a pull request.
To integrate your service with Postman’s Native Git, ensure you have write access to the collection and its associated environments. Then you can do the following:
develop..postman/resources.yaml appears in your root directory. This file maps your local files to specific Postman Cloud entities.To connect your Git project to your workspace, do the following:
Open your project workspace.
From the Postman sidebar, click Files.
Click Open Folder.
Open the Git project you want to connect to your workspace.
Click Connect. Postman connects your local Git project to your workspace. Now you have the option to see the branch in Local View or access Cloud View in the bottom left.
You can only connect one folder in your filesystem to a workspace at a time. To open your files in a different workspace, you must disconnect from the workspace your file are connected to. Select File viewer options > Disconnect.
When you connect to a workspace, Postman automatically adds two directories: .postman (hidden) and postman. The visible postman directory includes subfolders for your collections and environments.
You can sync and push local elements to workspaces in the cloud with the Postman CLI. To learn more, see Sync local elements with workspaces.
Your Git-connected project workspaces appear in the workspaces dashboard.
To view all project workspaces in the workspaces dashboard, do the following:
Set up your CI/CD Secret. To generate an API Key, create a Postman API key from your Postman account settings. Add this key as a protected secret (for example, POSTMAN_API_KEY) in your repository’s settings (for example, GitHub Secrets, GitLab Variables, and so on).
Add the synchronization step to your pipeline. The primary command recommended for this workflow is postman workspace push. This command validates and synchronizes your local files with the cloud workspace.
Create or update your .github/workflows/postman-publish.yml file with the following steps:
Use the --yes flag: In a CI/CD environment, use the -y or --yes option to skip manual confirmation prompts.
Mono-repo Support: If you follow the team’s recommendation for mono-repos, use the --collections-dir and --environments-dir flags to specify paths for each service.
Validation: The push command automatically performs a “prepare” step to validate your files before syncing. You can skip this with --no-prepare if needed, though it’s not recommended for production pipelines.
To complete your setup, do the following:
develop and merge it.main.Open the service-specific project workspace. This workspace contains your blueprint collection and its pinned environments, and is already connected to your Git repo.
Switch Postman to Local View. This ensures you are editing the local YAML files generated by the Git-backed connection.
(One-time per machine) Set the repo directory. Point Postman to the root of your service’s Git repository. This enables the app to read/write the collection dumps under postman/.
Create a new feature branch. From your terminal or Git client:
The branch switch is automatically reflected inside the Postman App.
Make API changes in the Postman App. Edit the blueprint collection or its pinned environments from Local View only.
Examples:
Adding new endpoints
Updating request structures
Updating test scripts
Editing STAGE/BETA environment variables
All edits are saved directly into the Postman Collection V3 YAML files under postman/.
postman workspace push due to absence of corresponding changes in local files.Commit and push the YAML diff. Your changes will appear as modified .yaml files. Commit the changes and push the feature branch:
Raise a PR and merge to main. Review and merge the changes like any other code change.
Understand what’s not synced yet. After the merge, the project workspace still shows previous data in Cloud View, and the catalog workspace forks (used by PAN) also show previous data. This is expected because updates only propagate to Cloud after a release.
Create a new release. Follow your usual service release process. Creating a release merges the branch to main, triggers a push to main, and kicks off the Postman sync GitHub Action.
Validate release creation in your usual communication channels.
Verify the GitHub Action run. Open your repository’s Actions tab and look for “Publish Changes to Postman Cloud”. Ensure it completed successfully.
Confirm Cloud sync. Your blueprint collection and environments should now show updated content. Forked copies should reflect the same updates.