# Proxy tester

A web-based tester for verifying credentials, debugging usernames, and inspecting what helodata reports back. Found at **Dashboard → Resources → Proxy tester** (and a public version at [helodata.com/tools/proxy-tester](https://helodata.com/tools/proxy-tester)).

## What it does

Paste credentials, hit **Test**, and see:

* Whether auth succeeded
* The exit IP, country, state, city, ASN, and ISP
* Latency breakdown (connect / TLS / TTFB / total)
* The full `Proxy-Authorization` header that was sent
* Parsed username segments — useful when debugging `bad-username` errors
* Raw response headers from the gateway

\[screenshot: Proxy tester results panel]

## When to use it

* Before deploying — confirm a sub-user's credentials and limits work
* Debugging `407` — see exactly what authorization header is being sent
* Verifying geo — does the exit IP match your `region` / `state` / `city`?
* Measuring latency — get a baseline for the gateway from your location
* Validating ASN targeting — confirm the carrier you wanted

## Username parser

The tester accepts the **full proxy URL** or **separate fields**:

```
http://helo_s1a2b3c4d5e-type-res-region-us-state-ca-city-la:PASSWORD@gate.helodata.io:7777
```

And displays:

```
prefix:    helo_
subuser:   s1a2b3c4d5e
type:      res         (residential)
region:    us
state:     ca
city:      la
session:   —           (none)
sesstime:  —
asn:       —
```

If a segment is malformed, the parser highlights it in red with a hint.

## Geo verification

The tester reports:

* **helodata-claimed geo** (what `X-Helodata-Exit-Geo` says)
* **MaxMind geo** (a popular third-party DB used by many targets)
* **IPinfo geo** (a second third-party reference)

If these disagree, see [IP location mismatch](/troubleshooting/ip-location-mismatch.md).

## Programmatic test

For automated checks (CI smoke tests), use the API equivalent:

```bash
curl -X POST -H "Authorization: Bearer API_KEY" \
     -H "Content-Type: application/json" \
     -d '{
       "username": "helo_s1a2b3c4d5e-type-res-region-us",
       "password": "PASSWORD"
     }' \
     https://api.helodata.com/v1/tools/proxy-test
```

Response:

```json
{
  "auth_ok":     true,
  "exit_ip":     "198.51.100.42",
  "exit_geo":    { "country": "us", "state": "ca", "city": "los angeles" },
  "exit_asn":    7922,
  "latency_ms":  { "connect": 24, "tls": 89, "ttfb": 178, "total": 312 },
  "parsed":      { "subuser": "s1a2b3c4d5e", "type": "res", "region": "us", "state": null, "city": null, "session_id": null, "sesstime": null, "asn": null }
}
```

## Privacy

The tester never logs the password (it's masked from our internal logs even for support). The full request is held for 24 hours so you can compare results across runs, then deleted.

## Common pitfalls

* **Pasted with trailing whitespace** — the tester catches this and warns, but many other clients silently fail. Trim.
* **Tested on a different account's credentials** — easy to do if you have multiple. The tester runs against the account whose API key it was issued for.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.helodata.com/resources/proxy-tester.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
