# Proxy list format

Every ISP IP is delivered as a colon-separated four-tuple. This is the standard format that most proxy management tools, antidetect browsers, and scrapers consume directly.

## Canonical format

```
ip:port:user:pass
```

| Field  | Example            | Notes                                                                         |
| ------ | ------------------ | ----------------------------------------------------------------------------- |
| `ip`   | `198.51.100.42`    | IPv4. IPv6 available on request — see below.                                  |
| `port` | `8000`             | Same port for HTTP, HTTPS, and SOCKS5 — auto-detected.                        |
| `user` | `helo_s1a2b3c4d5e` | Sub-user identifier, prefixed with `helo_`. Shared across all IPs in a batch. |
| `pass` | `PASSWORD`         | Sub-user password. Same across the batch.                                     |

## Example list

A batch of 5 US ISP IPs renders as:

```
198.51.100.42:8000:helo_s1a2b3c4d5e:Mz4yQv8R
198.51.100.43:8000:helo_s1a2b3c4d5e:Mz4yQv8R
198.51.100.44:8000:helo_s1a2b3c4d5e:Mz4yQv8R
198.51.100.45:8000:helo_s1a2b3c4d5e:Mz4yQv8R
198.51.100.46:8000:helo_s1a2b3c4d5e:Mz4yQv8R
```

Same user/password across the batch — `ip:port` is what differentiates them.

## URL form

To plug into HTTP clients that expect a proxy URL:

```
http://helo_s1a2b3c4d5e:PASSWORD@198.51.100.42:8000
```

For SOCKS5:

```
socks5h://helo_s1a2b3c4d5e:PASSWORD@198.51.100.42:8000
```

## Download formats

`Dashboard → ISP → My IPs → {Batch} → Download` offers:

### `ip:port:user:pass` (default plain text)

One line per IP. Drop-in compatible with most antidetect browsers (AdsPower, Multilogin, GoLogin), proxy managers (Proxifier), and scrapers.

### CSV

```csv
ip,port,user,pass,country,city,asn
198.51.100.42,8000,helo_s1a2b3c4d5e,Mz4yQv8R,US,New York,7922
198.51.100.43,8000,helo_s1a2b3c4d5e,Mz4yQv8R,US,New York,7922
```

Use when you want metadata alongside the credentials — analytics, regional sharding, etc.

### JSON

```json
[
  {
    "ip": "198.51.100.42",
    "port": 8000,
    "user": "helo_s1a2b3c4d5e",
    "pass": "Mz4yQv8R",
    "country": "US",
    "city": "New York",
    "asn": 7922,
    "carrier": "Comcast",
    "created_at": "2026-05-01T12:00:00Z",
    "expires_at": "2026-06-01T12:00:00Z"
  }
]
```

Best for programmatic consumption. Includes per-IP lifecycle dates.

### Tool-specific exports

Direct import files for:

* **Proxifier** `.ppx`
* **FoxyProxy** `.json`
* **SwitchyOmega** `.bak`
* **Bit Browser / AdsPower** bulk-import CSV

## API access

Get the same lists programmatically. Useful for automated provisioning into your scraper farm:

```bash
# Plain text
curl -H "Authorization: Bearer API_KEY" \
     "https://api.helodata.com/v1/isp/batches/bat_01HX/ips?format=plain"

# JSON
curl -H "Authorization: Bearer API_KEY" \
     "https://api.helodata.com/v1/isp/batches/bat_01HX/ips?format=json"
```

Full schema: [API → Orders](/api-reference/orders.md).

## IPv6

IPv6 ISP IPs are available on request. The format is identical but the `ip` field uses bracketed notation in URLs:

```
[2001:db8::42]:8000:helo_s1a2b3c4d5e:PASSWORD
```

URL form:

```
http://helo_s1a2b3c4d5e:PASSWORD@[2001:db8::42]:8000
```

To request IPv6, email <support@helodata.com>.

## Rotating the password

If you suspect a password leak, you can rotate it for the **whole batch** in one click:

1. **Dashboard → ISP → My IPs → {Batch} → Rotate password**.
2. New password takes effect within 60 seconds; old one stops working immediately.
3. Re-download the list — the IPs are unchanged but the `pass` field is new.

Do not edit the password manually; the gateway side won't accept it.


---

# 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/products/overview-2/proxy-list-format.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.
