The ip:port:user:pass Proxy Format: Read, Convert, Enter Correctly

Updated:

ip:port:user:pass is the most common way providers deliver proxies: four parts separated by colons, namely the proxy server's IP address, the port, the username and the password. For example, 203.0.113.10:8080:client01:Abc123 means connect to 203.0.113.10 on port 8080 and log in as client01 with password Abc123. The trouble is that every tool wants it differently: some expect user:pass@ip:port, some want a full URL like http://user:pass@ip:port, and others have four separate fields. This guide explains each format, shows how to convert lists in bulk with a tool or a one-line command, and lists the mistakes that cause wrong-password errors or failed connections.

Proxies delivered as ip:port:user:pass

Reading each part of ip:port:user:pass

The first two parts say where to connect; the last two authenticate you. If you receive only ip:port, that proxy relies on an allowed IP instead of a password; user/pass vs IP whitelist authentication explains the difference.

PartExampleMeaning
ip203.0.113.10The proxy server your software connects to
port8080The port opened for your proxy on that server, a whole number
userclient01Username issued by the provider
passAbc123Matching password, case-sensitive

Common proxy formats

The same proxy can be written several ways. The content is identical; only the order and separators change.

FormatExampleTypical use
ip:port:user:pass203.0.113.10:8080:client01:Abc123Provider lists, many antidetect browsers
user:pass@ip:portclient01:[email protected]:8080Some tools and browser extensions
http://user:pass@ip:porthttp://client01:[email protected]:8080curl, Python, Node.js, environment variables
user:pass:ip:portclient01:Abc123:203.0.113.10:8080Some account-management software
ip:port203.0.113.10:8080Proxies authenticated by allowed IP
Four fieldsHost, Port, Username, PasswordOS settings, Proxifier, mobile apps

Converting formats in bulk

A few proxies you can edit by hand. For dozens or hundreds of lines, use the proxy format converter: paste the list, choose the output format and copy the result.

From a terminal, sed converts proxies.txt from ip:port:user:pass to URLs:

sed -E 's#^([^:]+):([^:]+):([^:]+):(.*)$#http://\3:\4@\1:\2#' proxies.txt > proxies-url.txt

Or to user:pass@ip:port:

sed -E 's#^([^:]+):([^:]+):([^:]+):(.*)$#\3:\4@\1:\2#' proxies.txt

This only works when the password contains no colon. For special characters, see the errors section below.

Entering proxies in code and tools

In Python requests, use the URL form for both http and https, since an HTTP proxy handles HTTPS pages through the CONNECT method:

proxies = {'http': 'http://client01:[email protected]:8080', 'https': 'http://client01:[email protected]:8080'}

With curl: curl -x http://203.0.113.10:8080 -U client01:Abc123 https://api.ipify.org prints the proxy's exit IP.

Step-by-step setups are in Python requests proxy setup, curl proxy setup and Windows proxy setup. Note the prefix stays http:// even when you visit https:// sites.

Common input mistakes

  • Trailing spaces or line breaks: copying from spreadsheets or chats often adds a space after the password, which usually ends in 407 Proxy Authentication Required.
  • Wrong order: pasting ip:port:user:pass into a field expecting user:pass:ip:port makes the tool treat the username as the host.
  • Special characters in URLs: characters like @, :, / and # must be percent-encoded inside a URL, for example @ becomes %40, or the string is split in the wrong place.
  • Using https:// for an HTTP proxy: many libraries read https:// as a TLS connection to the proxy itself and fail the handshake. For a normal HTTP proxy, use http://.
  • Whole string in the Host field: Host takes only the IP; port and credentials go in their own fields.
  • Wrong or blocked port: test with the port checker; office networks may block unusual ports, see check proxy and firewall.
  • Wrong protocol selected: an HTTP proxy must be set as HTTP or HTTPS, not SOCKS. See HTTP vs SOCKS5.

Checking after you enter it

  • Open the what is my IP tool in the browser or profile using the proxy; it should show the proxy's IP, not your home IP.
  • For long lists, paste them into the proxy checker to see which lines work and which are malformed.
  • On a 407, recheck the username and password; on a timeout, check IP, port and your own network using the proxy timeout guide.

The VinaProxy proxy format

VinaProxy delivers proxies as ip:port:user:pass, over HTTP/HTTPS with username and password authentication. Copy the list from your dashboard and convert it to whatever your software needs. Each IP goes to one customer and stays the same for the rental period, so the string keeps working until you stop renewing. Current prices are on the pricing page.

Frequently asked questions

Is ip:port:user:pass different from user:pass@ip:port?

Not in content, only in order and separators. Convert to whichever form your software expects.

Why do I get a 407 error when the details look right?

Usually a stray space, a case mismatch in the password, or special characters that were not percent-encoded in a URL.

Do I need to add http:// in front of the proxy?

In code, curl and environment variables, yes. In antidetect browsers or OS settings you usually pick HTTP from a list and enter IP and port separately.

Can an HTTP proxy open HTTPS websites?

Yes. It opens a tunnel with the CONNECT method, and HTTPS content stays encrypted between browser and website.

What is the fastest way to convert 500 proxies?

Use the proxy format converter or a sed one-liner like the ones above, then spot-check a few lines before importing them.

Proxies delivered as ip:port:user:pass

Datacenter IPv4 in 7 countries and static ISP in Vietnam and the US. HTTP/HTTPS, personal credentials, automatic activation.

View pricing

Related articles

Free tools
Bulk Proxy Format Converter (100% Client-Side)
100% client-side bulk proxy list formatter. Convert between ip:port:user:pass, user:pass@ip:port, http:// URLs, SOCKS5 URIs, JSON arrays, and FoxyProxy exports.
Proxy errors
How to fix 407 Proxy Authentication Required
A 407 Proxy Authentication Required error means the proxy answered but rejected your login. See real curl output, the likely causes and fixes per app.
Proxy setup
How to use a proxy in Python Requests (HTTP/HTTPS & Session pooling)
Configure authenticated HTTP(S) proxies in Python requests and requests.Session(). Handle 407 ProxyError exceptions and rotate static IP pools.
Knowledge base
How to Check a Proxy Before You Use It
How to check a proxy step by step: confirm it connects, verify the IP and country, test speed with curl or an online checker, and fix 407 and timeout errors.
Products
Static residential ISP proxies
Static residential ISP proxies in the United States and Vietnam. IPs registered to consumer internet providers, dedicated to one customer, unlimited bandwidth.
Products
Private IPv4 datacenter proxies
Buy private IPv4 datacenter proxies in the US, Vietnam, Japan, South Korea, Singapore, the UK and Hong Kong. HTTP(S), unlimited bandwidth, auto activation.
ISP · vietnam
Vietnam Static ISP Proxies: Home-Network Vietnamese IPs for Your Most Valuable Accounts
Vietnam static ISP proxies on consumer internet provider IPs. A fixed Vietnamese IP for main Shopee shops, TikTok Shop, Facebook ad accounts and Zalo OA.
IPV4 · united states
US Private IPv4 Proxies: Fast, Dedicated American Datacenter IPs
Dedicated US private IPv4 proxies for scraping, rank tracking, ad checks and Amazon research. Static IP, one user per IP, unlimited bandwidth, fast activation.