Try now
Back to blog

Postman Proxy Settings: System and Custom Proxy, Authentication and Fixes for Common Errors

Postman Proxy Settings: System and Custom Proxy, Authentication and Fixes for Common Errors

Postman's desktop client can route outgoing API calls in two ways: borrow whatever proxy the operating system already uses, or follow a custom server typed straight into the app under Settings, Proxy. The custom option lets you pick HTTP or one of four SOCKS flavours, attach a username and password and list hosts that should skip the tunnel; when both modes are switched on at once, the custom one wins.

Below you will find what each toggle actually changes, a recipe for checking which exit IP your requests really leave from, how the proxy fields relate to environment variables and Newman, and a lookup table that decodes the cryptic messages Postman prints when a proxy misbehaves.

Datacenter proxies

Fast datacenter proxies with a fixed IP for API testing in Postman

Try it

Sending Proxy Versus Capture Proxy

Postman's menus mention a proxy in two unrelated places, which regularly sends newcomers down the wrong path.

Sending proxy versus capture proxy
Sending proxy versus capture proxy
ModeTraffic flowMenu locationTypical reason
Outbound proxyPostman calls leave via a remote relaySettings, Proxy tabOffice gateways, regional API checks, a stable exit IP
Capture proxyPhones or browsers relay through PostmanCapture requests panelTurning observed traffic into collection items

Everything below concerns the outbound relay. Recording what a mobile app sends is a job for the capture panel, a separate topic.

Checklist Before You Start

  • Postman installed as a desktop program on a PC, Mac or Linux box; the web edition lacks the block where OS gateway credentials are saved.
  • Relay details issued by your provider, say 198.51.100.7:3128 speaking HTTP.
  • A username and password, or your machine's IP already whitelisted on the provider side.

Teams hammering an API from one predictable origin tend to choose datacenter proxies: latency stays low, each call costs little, and the outgoing IP survives for weeks, handy whenever the vendor guards its endpoints with an allowlist.

Opening the Proxy Tab

Hit the cogwheel near the top right, pick Settings from its menu and move to Proxy. That page holds three areas: credentials for the operating system gateway, a switch labelled Use system proxy and a second one called Use custom proxy configuration.

Postman Proxy settings with Use system proxy on and Use custom proxy configuration off
The Proxy page in Postman settings

Mode A. Follow Whatever Windows or macOS Uses

Sensible inside corporate networks where an outbound gateway is mandatory anyway and Postman merely has to play along.

  1. Activate Use system proxy; from then on the client mirrors the HTTP or SOCKS relay your OS already knows about.
  2. A nested checkbox makes the app honour the HTTP_PROXY, HTTPS_PROXY and NO_PROXY variables as well. Tick it if your terminal tools rely on those variables and you want identical behaviour.
  3. Leave the custom switch disabled; should both be active, the custom one quietly takes over.
  4. Gateways demanding a login are handled in the top block: mark This proxy requires authentication, supply both values and confirm with Save and Restart Postman, which relaunches the app.

Mode B. A Relay Reserved for Postman

Browsers, messengers and the rest of the machine keep their usual route, which is why testers reach for this mode most often.

Step 1. Decide Which Schemes Are Relayed

Flip the custom switch. Right underneath, a row named Use proxy for comes with both HTTP and HTTPS preselected; untick plain HTTP only if unencrypted calls must deliberately bypass the relay.

Step 2. Describe the Server

A dropdown lets you choose between HTTP and the SOCKS family (5, 5H, 4, 4A); after that choice, the hostname and the port go into two neighbouring boxes. Skip any http:// prefix in the hostname box, since the dropdown already encodes the scheme. With SOCKS5H, name resolution happens on the proxy side, so internal DNS of your office never sees the target domain. The SOCKS options only carry HTTP and HTTPS requests, so WebSocket or gRPC tabs are not covered. More on that choice in our comparison of SOCKS5 vs HTTP proxies.

Step 3. Add Credentials

Enable Proxy auth and drop in the pair of credentials. These reach the relay as basic auth and never touch the target service; the request-level Authorization tab is a different layer aimed at the API itself. Confusing these layers explains a large share of 407 responses.

Postman custom proxy configuration with HTTP and HTTPS ticked, proxy server, port and Proxy auth fields
Proxy address and login live in the custom configuration

Step 4. Exclude Hosts

The Proxy bypass field takes a comma-separated list such as localhost,127.0.0.1,staging.internal. Requests to those hosts go straight out. Add your local mock servers here, otherwise the remote proxy tries to reach localhost on its own machine and fails.

Postman picks one of two paths: through the operating system settings or through its own custom proxy, while bypassed local hosts are reached directly
Request path in Postman: system proxy, custom proxy and the bypass list

Confirming the Exit IP

Create a GET request to any service that echoes the caller's address, for example https://ip-echo.example/json (substitute a real IP lookup API you trust), and send it. The response should show the proxy address and its country rather than your own. Next open the Postman Console with Ctrl+Alt+C on Windows and Linux or Cmd+Option+C on macOS: expanding a logged call reveals its network details, including the remote address the connection went to. For a check outside Postman, our proxy checker confirms that the server answers at all, and our notes on checking proxy geolocation explain why databases sometimes disagree about the country.

Environment Variables and Newman

Variables inherited from your shell can sabotage the setup. Once http_proxy, https_proxy or their capitalised twins are defined, Postman sides with the system proxy and ignores what you typed in the app. Remove them from the profile, or start Postman from a small wrapper script that clears them first:

@echo off
set HTTP_PROXY=
set HTTPS_PROXY=
start "" "%LOCALAPPDATA%\Postman\Postman.exe"

Remember that the tab applies application-wide. Current releases cannot bind one relay to a single collection, folder or environment, and placeholders from an environment typed into those boxes stay unresolved. For per-run proxies, use Newman, the command-line runner, which reads the same three variables:

HTTPS_PROXY=http://qa-user:s3cret@198.51.100.7:3128 NO_PROXY=localhost newman run orders-api.json

This keeps CI pipelines independent from anyone's desktop settings.

Error Messages and What They Mean

Message in PostmanLikely causeWhat to do
tunneling socket could not be established, statusCode=407Proxy rejected the credentialsRe-enter login and password under Proxy auth; check that the plan has not expired
connect ECONNREFUSED with the proxy addressWrong port or the server is downVerify the port and protocol; test the server with a checker
getaddrinfo ENOTFOUNDTypo in the proxy hostname, or a target host the proxy cannot resolveCheck the spelling; try SOCKS5H or an IP address
ETIMEDOUT or socket hang upSlow or overloaded proxy, firewall in betweenRaise the request timeout under Settings, General; try another exit
self signed certificate in certificate chainCorporate gateway inspects HTTPSAdd the company CA under Settings, Certificates, or switch off SSL certificate verification for testing only
Request still uses your real IPEnvironment variables or the system toggle winClear the variables, disable the system toggle, restart

When a call fails only through the proxy, the target API may be blocking that address range. An HTTP proxy that cannot open an HTTPS tunnel produces similar symptoms; our explainer on HTTP vs HTTPS proxies covers how the CONNECT method works.

Postman Proxy FAQ

Does Postman support SOCKS5 proxies?

It does. Besides plain HTTP the custom mode understands both SOCKS generations, version 5 (also in its H variant) and version 4 (also as 4A), optionally with a login. Such relays move HTTP and HTTPS calls only.

Postman keeps ignoring the proxy I entered. Why?

The usual culprit is a proxy variable living in your OS environment, which Postman treats as more authoritative. Delete it or start the client via a wrapper that wipes it, and confirm the custom switch is the one turned on.

Can each Postman environment get its own proxy?

The GUI client does not allow that, because one global relay serves everything and its fields ignore environment placeholders. Newman solves it: pass different proxy variables to each command-line run.

Proxy auth or the Authorization tab: which one do I need?

Proxy auth proves to the relay that you are a paying client and travels with each call. The Authorization tab carries whatever the destination API expects, for example a bearer header.

How can I stop Postman from using a proxy?

Visit the Proxy tab and switch off both modes. Traffic that still leaves via a relay afterwards points to leftover proxy variables in your operating system.