Use this guide to verify that your InstantProxies connection works before integrating it into application code, browser automation, or crawler workflows.
A first cURL request is the fastest way to confirm the proxy path, authentication model, and basic timeout behavior with minimal runtime complexity.
Use this page when
Use this page when:
- you want the fastest way to test a new proxy
- you need to confirm that credentials or allowlisting are working
- you want to validate the proxy path before writing code
- you need a clean baseline before debugging a larger workflow
- you want to compare behavior across local, server, container, or CI environments
Why start with cURL
cURL removes most application-level variables.
It helps you confirm:
- the request is using the intended proxy path
- the proxy accepts the connection
- authentication or allowlisting is working
- the response completes successfully
- timeout behavior is visible early
If the cURL path fails, there is little value in debugging a larger application or browser workflow first.
Before you begin
Have these details ready:
- proxy host
- proxy port
- authentication method
- a test URL
Authentication will usually be one of these:
- IP allowlisting
- username and password
If you are using IP allowlisting, make sure the public IP of the environment sending the request is authorized.
Minimal request with username and password
Use this when your proxy requires credentials.
curl -x http://USERNAME:PASSWORD@PROXY_HOST:PORT https://httpbin.org/ip
This request should return a successful response through the proxy path.
Minimal request with IP allowlisting
Use this when your source IP is already authorized.
curl -x http://PROXY_HOST:PORT https://httpbin.org/ip
This request should work without embedding proxy credentials.
What a successful first request proves
A successful first request usually confirms that:
- the proxy host and port are correct
- the runtime can reach the proxy
- the authentication method is working
- the request is being sent through the intended proxy path
It does not prove that a larger workflow is ready for production. It only proves that the baseline request path is healthy.
Make timeout behavior visible
Do not validate only for success. Add explicit timeout boundaries from the beginning.
curl -x http://USERNAME:PASSWORD@PROXY_HOST:PORT \
--connect-timeout 10 \
--max-time 20 \
https://httpbin.org/ip
This helps you see:
- whether the connection is established quickly enough
- whether the full request completes in an acceptable time
- whether the path is only functional or also operationally usable
Use verbose output for debugging
If the request fails or behaves unexpectedly, add verbose output.
curl -v -x http://USERNAME:PASSWORD@PROXY_HOST:PORT https://httpbin.org/ip
Verbose output helps separate:
- early connection problems
- authentication failures
- timeout-related issues
- downstream response issues
Use verbose mode before changing several variables at once.
Test the real runtime environment
Run the same cURL command from the environment that will actually send traffic.
This may include:
- your local machine
- a server
- a container
- a CI runner
- a production-like worker
A request that works locally but fails in the real runtime often points to environment-specific configuration or allowlisting differences.
Common request patterns
Check public IP through the proxy
curl -x http://USERNAME:PASSWORD@PROXY_HOST:PORT https://httpbin.org/ip
Use this to confirm the outbound path.
Add explicit timeouts
curl -x http://USERNAME:PASSWORD@PROXY_HOST:PORT \
--connect-timeout 10 \
--max-time 20 \
https://httpbin.org/ip
Use this to confirm timing behavior.
Add verbose logging
curl -v -x http://USERNAME:PASSWORD@PROXY_HOST:PORT https://httpbin.org/ip
Use this to inspect the request path more closely.
Common mistakes
Typical issues include:
- using the wrong host or port
- testing from a different environment than the one that will actually run the workload
- assuming local allowlisting applies everywhere
- skipping verbose output when the failure boundary is still unclear
- treating one successful request as proof that the larger system is ready
- moving into browser or crawler debugging before the baseline request path is healthy
Recommended validation sequence
Use this sequence:
- run one minimal proxied request
- repeat the same request from the same environment
- add explicit timeout boundaries
- use verbose output if the result is unclear
- compare the same request across environments if needed
- move into application or browser integration only after the baseline path is healthy
Key points
- cURL is the fastest way to validate the proxy path
- a first request should confirm connectivity, authentication, and baseline timing
- explicit timeout boundaries make debugging easier
- verbose mode helps classify failures before larger workflows add noise
- the request should be tested from the real runtime environment
- one successful request is a baseline, not full production proof
Next step
Continue to Verify Your Connection to confirm the result and check that the runtime path is behaving as expected.
If you want to validate the same path from the command line before moving into application code, continue to cURL and CLI Usage.