# Simply Proxies Documentation

> Markdown version of [the docs page](https://simplyproxies.com/docs.html), kept in sync with it. Full browser-setup walkthroughs live on the HTML page.

## Quick start

1. Sign up at <https://simplyproxies.com/app>: you get 500 MB free.
2. Find your proxy credentials on the Dashboard page after signing in.
3. Configure your tool using one of the examples below.

Traffic routes through real UK mobile devices on 4G/5G networks and is
metered from your wallet balance.

## Credentials

After signing in, the Dashboard shows:

- Proxy username, e.g. `aw_18_9g8zxy`
- Proxy password, e.g. `dVFilEaTRKwcm14r`

The same credentials work on both the HTTPS and SOCKS5 endpoints.

## Endpoints

| Protocol | Address | Port |
|----------|---------|------|
| HTTPS | proxy.simplyproxies.com | 6889 |
| SOCKS5 | proxy.simplyproxies.com | 6890 |

## cURL

HTTPS proxy:

    curl -x https://USER:PASS@proxy.simplyproxies.com:6889 https://api.ipify.org

SOCKS5 proxy:

    curl -x socks5h://USER:PASS@proxy.simplyproxies.com:6890 https://api.ipify.org

## Sticky sessions

By default every request rotates across devices (a fresh IP). To pin one
device (same exit IP) for up to 2 hours by default, append `-session-<id>` to
the username. Works on both SOCKS5 and HTTPS.

    # Rotating (default): different IP per request
    curl -x socks5h://USER:PASS@proxy.simplyproxies.com:6890 https://api.ipify.org

    # Sticky: same IP for up to 2 hours (default window)
    curl -x socks5h://USER-session-myapp1:PASS@proxy.simplyproxies.com:6890 https://api.ipify.org

    # Sticky: custom 4-hour window (SOCKS5; -<minutes>, clamped 5 min to 12 h)
    curl -x socks5h://USER-session-myapp1-240:PASS@proxy.simplyproxies.com:6890 https://api.ipify.org

Choose any id (`myapp1`, `acct-A`, ...) and reuse it to reuse the same IP.
The window refreshes while you are active. Free for all customers.

## Python (requests)

    import requests

    proxies = {
        "https": "https://USER:PASS@proxy.simplyproxies.com:6889",
        "http": "https://USER:PASS@proxy.simplyproxies.com:6889",
    }

    response = requests.get("https://api.ipify.org", proxies=proxies)
    print(f"Your proxy IP: {response.text}")

## Node.js (axios + https-proxy-agent)

    const axios = require("axios");
    const { HttpsProxyAgent } = require("https-proxy-agent");

    const agent = new HttpsProxyAgent(
      "https://USER:PASS@proxy.simplyproxies.com:6889"
    );

    axios.get("https://api.ipify.org", { httpsAgent: agent })
      .then(res => console.log("Proxy IP:", res.data));

## Scrapy

Set the environment variable:

    export https_proxy="https://USER:PASS@proxy.simplyproxies.com:6889"
    scrapy crawl myspider

Or per request in your spider:

    # meta={"proxy": "https://USER:PASS@proxy.simplyproxies.com:6889"}

## Troubleshooting

- Connection refused: check credentials and port (6889 HTTPS, 6890 SOCKS5),
  and that your account has credit remaining.
- Slow responses: mobile proxies add a cellular hop; typical response times
  are 1-3 seconds. Retry in a few minutes if a device is temporarily busy.
- Authentication failed: double-check username and password; URL-encode
  special characters in the password (`@` becomes `%40`).
- Balance not updating: traffic is recorded in near real-time; refresh the
  Dashboard. Traffic is measured as the combined total of upload and download
  bytes.
