Skip to main content
The connection protocol (HTTP, HTTPS, or SOCKS5) can be specified in the tool or program you’re using to connect with the proxies. In the following cURL examples, the protocol is specified at the beginning of the proxy line, just replace the username and password with your proxy user credentials, and run them in your Terminal or Command Prompt.

HTTP

Here is a cURL example for the HTTP protocol:
cURL

HTTPS

Using this protocol will encrypt your connection. Here is a cURL example for the HTTPS protocol:
cURL

SOCKS5

Here is a cURL command for the SOCKS5 protocol:
cURL
The letter h in socks5h:// means that the hostname will be resolved on the proxy side, and not locally.

Country Endpoint Support

Note that you have to use the gate.decodo.com endpoint to use SOCKS5. Country endpoints like us.decodo.com will not work!You can instead target specific locations by specifying the location using Advanced Parameters. For example, this cURL command targets the US location:

Tool Support

  • To get a sticky SOCKS5 proxy in a tool, you must use a session parameter, otherwise, the proxy will always rotate even with a sessionduration parameter.
  • The session ID can be defined by any string of your choice. More on that can be found on the Advanced Parameters page in the Sticky session section.

HTTP/3

HTTP/3 protocol is running over QUIC (UDP) traffic that is being tunneled through SOCKS5. HTTP and HTTPS endpoints are not supported with HTTP/3. Use the socks5-gate.decodo.com endpoint on port 10000 for HTTP/3, and just replace the username and password with your proxy user credentials copied from your dashboard. Here is a script in Go, which performs an HTTP/3 request through the proxy:

MASQUE

MASQUE is a protocol (RFC 9298) that tunnels UDP traffic through one of the residential exit nodes. It’s a different mechanism from the HTTP/3 tunneling described above (which relays HTTP/3 traffic through the SOCKS5 endpoint) — MASQUE has its own dedicated gateway and carries any UDP payload you give it. Use the masque-gate.decodo.com endpoint on port 42000. The connection runs over QUIC, so outbound UDP needs to be open on your side, and your proxy credentials go in a Proxy-Authorization: Basic header on the tunnel request rather than in the URL. Note that cURL doesn’t support CONNECT-UDP (as of cURL 8.x), and browsers can’t authenticate to this endpoint either — so a small client like the one below is the practical way to use MASQUE for now. Here’s a script in Go that opens a tunnel and does a single request/response round trip.
Maximum datagram size is 1500 bytes — anything larger is dropped.
Your target’s port needs to be accessible for your account the same way any non-default port does — see Ports to request one unblocked.Since MASQUE relays UDP traffic, make sure to specify UDP (not TCP) when requesting the unblock.
You can find the response codes received from the proxy service and their explanations here.
Beyond single request/response tests like the STUN example above, this same tunnel can carry a full website visit. Since the connection behaves like a regular network socket, you can hand it to any UDP-based client library — including one for HTTP/3 — and that library will use it like normal, not realizing its traffic is going through the proxy tunnel. That means you can load an entire HTTP/3 website through a residential IP, using the same tunnel and credentials as any other MASQUE target.

Ports

Easily understand which ports you can access when using our proxies, including details on the default accessible ports, restrictions, and how to request a port to be unblocked.

Accessible Ports

With the residential and mobile proxies, the following ports are accessible by default:
  • 80
  • 443

Restricted Ports

Restricted ports include SMTP, IMAP, and other mailing and messaging-related ports.

Port Unblocking Process

To request a port unblock, contact us at compliance@decodo.com and provide the following information:
  • The port that needs to be unblocked.
  • Describe the use case with that port – be as specific as possible.
  • Provide the target that you’ll access using the mentioned port.
For added security, particularly for requests involving sensitive or high-risk ports, we’ll require the user to provide company details or complete ID verification to complete the unblocking request.
Please note that certain ports, such as those categorized as restricted, cannot be unblocked. Although the specific ports aren’t mentioned in this article, your request to unblock them may be denied.